繁体   English   中英

在 Python 中查找 3X1 复向量的大小?

[英]Finding the magnitude of a 3X1 complex vector in Python?

我想知道是否有人会帮助我解决这个问题。 我有一个复杂的 3x1 矩阵,看起来像,

matrix = np.matrix([[(0.0009118819655545739+0.0009118819655545738j)], [(0.0009118819655544588-0.0009118819655544589j)], [(-0.0009118819655545161-5.421010862427522e-20j)]])

由于我对最后一个元素不感兴趣,我将按如下方式删除,所以我得到:

vector = np.delete(matrix, 2, 0)

这给了我,

vector = [[(0.0009118819655545739+0.0009118819655545738j)]]
         [[(0.0009118819655544588-0.0009118819655544589j)]]

我有兴趣找到上述向量 (2X1) 的大小。 这就是我所做的:

for element in vector:
      mag = np.absolute(element)
    
return mag

我得到的是,

mag = 0.0012895958429705512

这是第一个元素的大小。

如何获得包含向量中所有元素的复数值的新 2x1 向量的大小?

数学正确吗:如果我考虑,

vector = [[(x1+x2j)]]
         [[(y1-y2j)]]

作为 mag = sqrt((x1)**2 + (x2)**2 + (y1)**2 + (y2)**2)) ,它会给我一个 0.00182376392 而不是 0.0012895958429705512 的 mag。

我真的很感激这个问题的帮助。

非常感谢

numpy 附带numpy.linalg.norm用于计算向量的范数。 c.f 这里

在你的情况下,这只是:

np.linalg.norm(vector)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM