Scipy 多变量方程的优化解
Scipy Optimization Solution for Multivariable equation
我这里有一个计算体积的公式。
def VolCalc(H,L,R,V):
return L * ((math.acos((R - H)/R) * R**2) - ((R - H)* math.sqrt((2 * R * H) - H**2))) # Volume
但是,我已经给出了体积 (V) 的值,并且必须从中计算出高度 (H)。半径 (R) 和长度 (L) 的值已知。
这需要一个数值近似解,需要知道必须使用哪个Scipy优化工具。我看了自己并努力寻找正确的。
非常感谢您对此事的帮助。
我相信您正在寻找 scipy.optimize.minimize。
并将其设置为最小化问题,您正在寻找标量函数的最小值:
def target(H):
return abs(V - (L * ((math.acos((R - H)/R) * R**2) - ((R - H)* math.sqrt((2 * R * H) - H**2)))))
您需要在其中定义 V
、R
和 L
的值。
我这里有一个计算体积的公式。
def VolCalc(H,L,R,V):
return L * ((math.acos((R - H)/R) * R**2) - ((R - H)* math.sqrt((2 * R * H) - H**2))) # Volume
但是,我已经给出了体积 (V) 的值,并且必须从中计算出高度 (H)。半径 (R) 和长度 (L) 的值已知。
这需要一个数值近似解,需要知道必须使用哪个Scipy优化工具。我看了自己并努力寻找正确的。
非常感谢您对此事的帮助。
我相信您正在寻找 scipy.optimize.minimize。 并将其设置为最小化问题,您正在寻找标量函数的最小值:
def target(H):
return abs(V - (L * ((math.acos((R - H)/R) * R**2) - ((R - H)* math.sqrt((2 * R * H) - H**2)))))
您需要在其中定义 V
、R
和 L
的值。