主要内容

使用复变量Java

复杂的变量MATLAB

MATLAB®数字类型可以表示复数。MATLAB Engine API支持Jav万博1manbetxa中的复杂变量®使用com.mathworks.matlab.types.Complex类。使用这个类,你可以:

  • 在Java中创建复杂的变量,并将这些变量传递给MATLAB。

  • 从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(); } }

将复杂变量传递给MATLAB函数

这个示例代码创建了com.mathworks.matlab.types.Complex变量,并将其传递给MATLAB真正的函数。这个函数返回复数的实部。MATLAB返回的值是type尽管在Java中创建的初始变量是int

进口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 ();} }

相关的话题