外部インタフェース/API リファレンス | ![]() ![]() |
Fortran 言語表示
integer*4 function matPutFull(mfp, name, m, n, pr, pi) integer*4 mfp, m, n, pr, pi character*(*) name
name
mxArray
名。
m
n
pr
pi
詳細
ほとんどのMATLABアプリケーションは、フル(非スパース)mxArray
についてのみ動作します。このルーチンは、フルmxArray
をMAT-ファイルに書き出すための簡単な方法を提供しています。これは、matPutMatrix
の代わりであり、mxArray
構造体の利用を必要としません。
matPutFull
は、大きさがm行n列で、実数データpr
、虚数データpi
のmxArray
を、指定した名前でMAT-ファイルmfp
に書き出します。
mxArray
がMAT-ファイルに存在しない場合は、最後に付け加えられます。同じ名前のmxArray
がファイルに既に存在する場合は、既存のmxArray
はファイルを書き直すことによって新たなmxArray
で置き換えられます。
例題
MAT-ファイルからmxArray
A
を読み込み、別のMAT-ファイルに書き出します。
program main integer matOpen,matClose,matPutFull,matGetFull integer mf1, mf2, stat integer m, n, pr, pi mf1 = matOpen('foo.mat','r') mf2 = matOpen('foo2.mat','w') stat = matGetFull(mf1,'A',m,n,pr,pi) stat = matPutFull(mf2,'A',m,n,pr,pi) stat = matClose(mf1) stat = matClose(mf2) c stop end
簡単な実数のmxArray
をMAT-ファイルに書き出します。mxArray
にA
と、MAT-ファイルにfoo.mat
と名前を付けます。
integer matOpen, matClose, matPutFull integer mfp, stat double precision Areal(6) data Areal / 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 / data Aimag / 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 / c mfp = matOpen('foo.mat','w') stat = matPutFull(mfp,'A',3,2,Areal,Aimag) stat = matClose(mfp) c stop end
テストを行うため、2番目の例を実行します。その後MATLABで以下のように入力します。
load foo
A
A =
1 4
2 5
3 6
![]() | matOpen | matPutMatrix | ![]() |