Matlab:使用复数的乘法 - 什么是正确的算子?

时间:2016-11-27 20:14:00

标签: matlab complex-numbers

我正在尝试使用复数值数据计算表达式(z*(z-h*a))^2。当输入是实值时,此表达式可正常工作。我应该得到一个标量。但是,使用复数值输入我得到一个向量。复数乘法的适当算子是什么?

z = -6.1 -6.55i;
a = 7.0000 - 7.0000i;
 h = [-0.1340 - 1.0315i,  -0.2770 - 1.0810i,   0.7774 - 0.5708i];

temp = 0.0;
temp =  (z*(z-h*a)).^2;

1 个答案:

答案 0 :(得分:2)

对于向量值输入h,该等式将产生向量,无论所涉及的数字是真实的,复杂的,octonion还是不是(假设你做了元素) -wise squaring,.^2)。

特洛伊是对的 - 你需要正方形的总和:

z = -6.1 - 6.55i;
a = 7.0000 - 7.0000i;
h = [-0.1340 - 1.0315i,  -0.2770 - 1.0810i,   0.7774 - 0.5708i];

temp = z * (z - h*a);
temp = temp * temp.';