シェル エスケープ関数の例
"シェル エスケープ関数" を使用して、独自の C プログラムや Fortran プログラムにアクセスすると便利な場合があります。シェル エスケープ関数では、シェル エスケープ コマンド !
を使用して、外部のスタンドアロン プログラムを新しい MATLAB® 関数のように機能させることができます。
たとえば、以下の関数 garfield.m
では外部関数 gareqn
を使用して Garfield 方程式の解を求めます。
function y = garfield(a,b,q,r) save gardata a b q r !gareqn load gardata
この関数では以下の操作が行われます。
save
コマンドを使用して、入力引数a
、b
、q
、およびr
がワークスペース内の MAT ファイルに保存されます。シェル エスケープ演算子を使用して、ワークスペース変数を使用する
gareqn
という名前の C プログラムまたは Fortran プログラムにアクセスし、計算を実行します。関数gareqn
では、その結果がgardata
MAT ファイルに書き込まれます。gardata
MAT ファイルを読み込んで結果を取得します。