このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。
MATLAB®の数値型によって複素数を表すことができます。MATLABエンジンAPIは,com.mathworks.matlab.types.Complex
クラスを使用してJava®で複素変数をサポートしています。このクラスを使用すると,以下のことができます。
Javaで複素変数を作成して,その変数をMATLABに渡す。
MATLABベースワークスペースから複素変数を取得する。
MATLABでは複素数の実数部と虚数部に必ず倍精度値を使用します。
このコード例では,MATLAB関数を使用して以下のことを行っています。
getVariable
メソッドを使用して,複素変数をJavaに返します。
进口com.mathworks.engine。*;进口com.mathworks.matlab.types.Complex;public class javaGetVar {public static void main(String[] args) throws Exception {MatlabEngine eng = MatlabEngine. startmatlab ();eng。Eval ("z = root ([1.0, -1.0, 6.0]);");eng。eval(“佐=连词(z);”);eng。eval(“鼠= z。*佐;”);Complex[] z = engl . getvariable ("z"); / /输入z Complex[] zc = eng.getVariable("zc"); double[] rat = eng.getVariable("rat"); for (Complex e: z) { System.out.println(e); } for (Complex e: zc) { System.out.println(e); } for (double e: rat) { System.out.println(e); } eng.close(); } }
このコード例では,Javaで変数com.mathworks.matlab.types.Complex
を作成し,MATLAB関数真正的
に渡します。この関数は複素数の実数部を返します。Javaで作成された元の変数はint
ですが,MATLABにより返される値は双
型となります。
进口com.mathworks.engine。*;进口com.mathworks.matlab.types.Complex;public class javaComplexVar {public static void main(String[] args) throws Exception {MatlabEngine eng = MatlabEngine. startmatlab ();Int r = 8;Int I = 3;Complex c = new Complex(r, i);Double real = eng。函数宏指令(“真正的”c);eng.close ();} }