主要内容

使用复杂变量Java

复杂变量MATLAB

MATLAB®数字类型可以表示复数。MATLAB引擎API支持Java中的复杂变金宝app量®使用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)抛出异常{MatlabEngine eng = MatlabEngine. startmatlab ();eng。Eval ("z = roots([1.0, -1.0, 6.0]);"eng。Eval ("zc = conj(z);");eng。Eval ("rat = z.*zc;");Complex[] z = eng.getVariable("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返回的值为类型即使在Java中创建的原始变量是int

进口com.mathworks.engine。*;进口com.mathworks.matlab.types.Complex;public class javaComplexVar {public static void main(String[] args)抛出异常{MatlabEngine eng = MatlabEngine. startmatlab ();Int r = 8;Int I = 3;复合体c = new复合体(r, i);Double real = eng。函数宏指令(“真正的”c);eng.close ();}}

相关的话题