Python Numpy - 复数 - 是否有用于极坐标到矩形转换的函数?

2024-01-12

是否有内置的 Numpy 函数可以将极坐标形式的复数、幅度和角度(度)转换为实部和虚部的复数?

显然我可以自己编写,但似乎某些模块中包含优化版本的类型?

更具体地说,我有一个幅度数组和一个角度数组:

>>> a
array([1, 1, 1, 1, 1])
>>> b
array([120, 121, 120, 120, 121])

我想要的是:

>>> c
[(-0.5+0.8660254038j),(-0.515038074+0.8571673007j),(-0.5+0.8660254038j),(-0.5+0.8660254038j),(-0.515038074+0.8571673007j)]

没有一个函数可以完全满足您的要求,但是有angle http://docs.scipy.org/doc/numpy/reference/generated/numpy.angle.html#numpy.angle,这是最难的部分。因此,例如,可以定义两个函数:

def P2R(radii, angles):
    return radii * exp(1j*angles)

def R2P(x):
    return abs(x), angle(x)

这些函数使用弧度作为输入和输出,对于度数,需要在两个函数中都转换为弧度。

在numpy中参考 http://docs.scipy.org/doc/numpy/reference/routines.math.html#handling-complex-numbers有一个关于处理复数的部分,这就是您要查找的函数将被列出的地方(所以因为它们不在那里,所以我认为它们不存在于 numpy 中)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python Numpy - 复数 - 是否有用于极坐标到矩形转换的函数? 的相关文章

随机推荐