在 Python 中使用对数求逆一个简单的数学方程式时遇到问题
Having trouble inverting a simple math equation using logarithms in Python
在过去一天试图推翻一个非常简单的数学公式后,我的头撞到 scipy.special.lambertw
后我放弃了——这甚至可能不是正确的查找位置。
我有以下等式:
import numpy
# The following == 70.03
np.sqrt(np.log(742) * 742)
我正在尝试反转该等式 - 输入 70.03
将等于 742
.
这是我在使用代数求解器和 Wolfram Alpha 后的当前尝试:
from scipy.special import lambertw
np.power(np.power(np.e, lambertw(70.03)), 2)
这显然会产生一个错误的答案 — 但由于代数是很久以前的事了,我基本上不知道如何生成一个将 70.03
转换回 [=15= 的函数].
感谢您的帮助!
从 WolframAlpha 我得到
from scipy.special import lambertw
f = lambda x: x ** 2 / lambertw(x ** 2)
作为逆。
确实
f(70.03) 给出 (742.008379366021+0j)
但我没有数学知识来找到 wolframalpha 发现的东西,我希望你明白为什么上面的 f 真的是倒数
在过去一天试图推翻一个非常简单的数学公式后,我的头撞到 scipy.special.lambertw
后我放弃了——这甚至可能不是正确的查找位置。
我有以下等式:
import numpy
# The following == 70.03
np.sqrt(np.log(742) * 742)
我正在尝试反转该等式 - 输入 70.03
将等于 742
.
这是我在使用代数求解器和 Wolfram Alpha 后的当前尝试:
from scipy.special import lambertw
np.power(np.power(np.e, lambertw(70.03)), 2)
这显然会产生一个错误的答案 — 但由于代数是很久以前的事了,我基本上不知道如何生成一个将 70.03
转换回 [=15= 的函数].
感谢您的帮助!
从 WolframAlpha 我得到
from scipy.special import lambertw
f = lambda x: x ** 2 / lambertw(x ** 2)
作为逆。
确实
f(70.03) 给出 (742.008379366021+0j)
但我没有数学知识来找到 wolframalpha 发现的东西,我希望你明白为什么上面的 f 真的是倒数