解決指數方程現在我有一個方程求解:如何在Python
EXP(X * A)-exp(X * B)= c,其中a,b和c是已知的常數。
我試圖sympy和scipy.optimize.fsolve,甚至brenth和牛頓。沒什麼好的。我對python很陌生,就像2周。所以請幫我解決這個問題。謝謝!
解決指數方程現在我有一個方程求解:如何在Python
EXP(X * A)-exp(X * B)= c,其中a,b和c是已知的常數。
我試圖sympy和scipy.optimize.fsolve,甚至brenth和牛頓。沒什麼好的。我對python很陌生,就像2周。所以請幫我解決這個問題。謝謝!
目前還不清楚你真正想要的。符號數值優化和精確解與最小二乘法解決方案。
忽略此,只是呈現最小二乘方法:
from scipy.optimize import minimize_scalar
import math
a = 3
b = 2
c = 1
def func(x):
return (math.exp(x * a) - math.exp(x * b) - c)**2
res = minimize_scalar(func)
print(res.x)
print(res.fun)
輸出:
0.382245085908
1.2143546318937163e-19
替代例如:
a = 5
b = 2
c = -1
輸出:
-0.305430244172
0.4546398791780655
這只是在問候scipy.optimize演示。這可能不是你想要的。
其實我想要數值解,所以最小二乘法解決方案應該這樣做,謝謝。對於我的數據集中的一些參數,公式沒有真正的根,所以我必須改變我的模型LOL。再次感謝您的幫助和插圖! – Kyle
你可以嘗試'numpy'包。 – GreenSaber
'''什麼都不好'''不會告訴我們任何事情。除此之外,sympy和scipy.optimize是不同的方法,它使我們想知道你真正想要什麼,如果你知道你想要什麼。 – sascha
取決於a,b和c,可能沒有解決方案,這可能是您的方法無法找到解決方案的原因。 – wrkyle