使用 numpy.log 计算负值

问题描述 投票:0回答:1

我正在尝试进行一个在 log (base-e) 函数中包含负值的计算。 Python的numpy包有

log
函数,MWE如下:

from numpy import exp, log
z = 1j*log(-1.1)
print(exp(-1j*z))

但它给出了错误消息:

RuntimeWarning: invalid value encountered in log
  z = 1j*log(-1.1)

正确答案是

-1.1
,我们可以在 WolframAlpha 上轻松验证。 是否有可以处理负值的替代 numpy log 函数? 如果没有,我可以使用简单的解决方法或公式吗?

python numpy
1个回答
0
投票

据我所知,

log
的真实版本仅定义为(0,inf)。要使用复数版本,需要传入复数:

z = log(-1.1 + 0j)
© www.soinside.com 2019 - 2024. All rights reserved.