Main Content

シェル エスケープ関数の例

"シェル エスケープ関数" を使用して、独自の C プログラムや Fortran プログラムにアクセスすると便利な場合があります。シェル エスケープ関数では、シェル エスケープ コマンド ! を使用して、外部のスタンドアロン プログラムを新しい MATLAB® 関数のように機能させることができます。

たとえば、以下の関数 garfield.m では外部関数 gareqn を使用して Garfield 方程式の解を求めます。

function y = garfield(a,b,q,r)
save gardata a b q r
!gareqn
load gardata

この関数では以下の操作が行われます。

  1. save コマンドを使用して、入力引数 abq、および r がワークスペース内の MAT ファイルに保存されます。

  2. シェル エスケープ演算子を使用して、ワークスペース変数を使用する gareqn という名前の C プログラムまたは Fortran プログラムにアクセスし、計算を実行します。関数 gareqn では、その結果が gardata MAT ファイルに書き込まれます。

  3. gardata MAT ファイルを読み込んで結果を取得します。

関連するトピック