Main Content

fortran

シンボリック式の Fortran 表現

説明

fortran(f) は、シンボリック式 f の Fortran コードを返します。

fortran(f,Name,Value) は、1 つ以上の Name,Value 引数のペアによって指定された追加オプションを使用します。

すべて折りたたむ

シンボリック式 log(1+x) から Fortran のコードを生成します。

syms x
f = log(1+x);
fortran(f)
ans =
    '      t0 = log(x+1.0D0)'

3 行 3 列のヒルベルト行列を作成する Fortran コードを生成します。

H = sym(hilb(3));
fortran(H)
ans =
    '      H(1,1) = 1.0D0
           H(1,2) = 1.0D0/2.0D0
           H(1,3) = 1.0D0/3.0D0
           H(2,1) = 1.0D0/2.0D0
           H(2,2) = 1.0D0/3.0D0
           H(2,3) = 1.0D0/4.0D0
           H(3,1) = 1.0D0/3.0D0
           H(3,2) = 1.0D0/4.0D0
           H(3,3) = 1.0D0/5.0D0'

File オプションを指定して、生成した Fortran コードをファイルに書き込みます。ファイルへの書き込みの際に、fortran は、t0t1 といった名前の中間変数を使用してコードを最適化します。Comments オプションを使用してファイルにコメントを含めます。

syms x
f = diff(tan(x));
fortran(f,'File','fortrantest')
      t0 = tan(x)**2+1.0D0

コメント Version: 1.1 を含めます。Fortran 77 に準拠するには、コメント行は 71 文字未満でなければなりません。

fortran(f,'File','fortrantest','Comments','Version: 1.1')
*Version: 1.1
      t0 = tan(x)**2+1.0D0

入力引数

すべて折りたたむ

シンボリック入力。シンボリック式として指定します。

名前と値の引数

オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名、Value は対応する値です。名前と値の引数は他の引数の後になければなりませんが、ペアの順序は関係ありません。

R2021a より前では、コンマを使用して名前と値の各ペアを区切り、Name を引用符で囲みます。

例: fortran(x^2,'File','fortrancode','Comments','V1.2')

書き込みファイル。文字ベクトルまたは string として指定します。ファイルへの書き込みの際に、fortrant0t1 といった名前の中間変数を使用してコードを最適化します。

ファイル ヘッダーに含めるコメント。文字ベクトル、文字ベクトルの cell 配列、または string ベクトルとして指定します。Fortran 77 に準拠するには、コメント行は 71 文字未満でなければなりません。

ヒント

  • MATLAB® は左結合ですが、Fortran は右結合です。式にあいまいさがある場合、関数 fortran では MATLAB に従って等価の表現を作成しなければなりません。たとえば、fortran では MATLAB の a^b^c(a**b)**c で表します。

バージョン履歴

R2006a より前に導入