如何使用broyden1算法计算指数值
how to use broyden1 algorithm to calculate an exponential value
我必须在等式中找到温度:
u = 1.2*e^(-.025*T)
u = viscosity in N*s/m^2
T = degree C
使用
scipy.optimize.broyden1()
当 u=.001 时,你如何使用它来找到 T?
要使用broyden1函数,只需要给它一个你想要找到根的函数和一个初始值。如果您只对求解 u=.001 感兴趣,您可以只定义一个以 T 作为输入的函数。如果您可能想要更改 u 的值,partial 可能是一个方便的工具。
import scipy.optimize
import numpy as np
from functools import partial
def findtemp(T, u):
return u - 1.2 * np.exp(-.025*T)
sol = scipy.optimize.broyden1(partial(findtemp, u=.001), 0)
print(sol)
给我一个接近理论值的值 283.4828690696808。
我必须在等式中找到温度:
u = 1.2*e^(-.025*T)
u = viscosity in N*s/m^2
T = degree C
使用
scipy.optimize.broyden1()
当 u=.001 时,你如何使用它来找到 T?
要使用broyden1函数,只需要给它一个你想要找到根的函数和一个初始值。如果您只对求解 u=.001 感兴趣,您可以只定义一个以 T 作为输入的函数。如果您可能想要更改 u 的值,partial 可能是一个方便的工具。
import scipy.optimize
import numpy as np
from functools import partial
def findtemp(T, u):
return u - 1.2 * np.exp(-.025*T)
sol = scipy.optimize.broyden1(partial(findtemp, u=.001), 0)
print(sol)
给我一个接近理论值的值 283.4828690696808。