我怎样才能访问这个matlab矩阵元素?
问题描述:
这是一组点的傅立叶描述我怎样才能访问这个matlab矩阵元素?
a =
-3.4173 - 7.1634i
7.4589 + 0.1321i
3.1190 - 2.1870i
-7.1979 + 0.2863i
5.9594 + 0.8209i
-5.4295 -15.7931i
-1.0957 + 3.7485i
0.2657 - 4.1459i
7.4644 - 0.9546i
我需要总结每一对中,但是当我使用一(1)或(1,1)它产生-3.4173 - 7.1634i 时我使用abs(a(1))或abs(a(1,1)),它也产生7.9367这对我来说没有意义!
我需要的是如何访问任何一对单独的每个元素,所以我得到-3.4173单独和 - 7.1634i单独以及所以我可以做它的规范化!
答
你有一个复数的数组,你想要做的是访问每个数的实部和虚部。
r = real(a);
i = imag(a);
将导致r
和i
分别包含你的描述符的实部和虚部。
要理解您从abs(a(1))
得到“没有任何意义”答案的原因,请按照this link。
答
你的数据类型看起来令人困惑,因为a(1,1)
不应该给你回数字的虚部......如果数值只是复数,你的数组应该是一维的。但尝试使用数组元素上的real()
和imag()
函数,它们将分别返回实部和虚部。尽管你可能想要考虑使用不同的数据结构,因为Matlab可以处理常规的复数值,在这种情况下,只需使用abs()
就可以给出数字的模数。
非常感谢,它的工作原理,谢谢你救了我! – 2012-03-20 00:11:14