在python中如何计算复数的立方根?目前,我找到的唯一方法是根据this答案,但我正在尝试从代码中删除任何和所有import
语句
当前方法,此处复制:
import math
def cuberoot( z ):
z = complex(z)
x = z.real
y = z.imag
mag = abs(z)
arg = math.atan2(y,x)
resMag = mag**(1./3)
resArg = [ (arg+2*math.pi*n)/3. for n in range(1,4) ]
return [ resMag*(math.cos(a) + math.sin(a)*1j) for a in resArg ]
Python的内置
complex
可以处理开箱即用的查找一个根:示例:
您在上面复制的函数是获得所有三个根的一种方法
这里是一种使用旋转因子
i^(2/3)
的方法计算1并乘以1的立方根
测试:
对您的进行同样的操作不太准确:
相关问题 更多 >
编程相关推荐