如何访问此matlab矩阵元素?
这是一组点的傅里叶描述符如何访问此matlab矩阵元素?,matlab,fft,Matlab,Fft,这是一组点的傅里叶描述符 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 当我使用ab
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))
中得到“毫无意义”的答案的原因,请遵循。您的数据类型看起来很混乱,因为a(1,1)
不应该返回数字的虚部。。。如果值只是复数,那么数组应该是一维的。但是尝试在数组元素上使用real()
和imag()
函数,这将分别返回实部和虚部。不过,您可能需要考虑使用不同的数据结构,因为Matlab可以很好地处理正则复数值,在这种情况下,简单地使用<代码> ABS-()/代码>应该给出数字的模数。