标量(一元)函数定义域内最小值fminbound
求给定范围内函数的最小值
scipy.optimize.fminbound(func, x1, x2, args=(), xtol=1e-05, maxfun=500, full_output=0, disp=1)[source]
return:
xopt: 取最小值时自变量的值
fval: 函数最小值
ierr: 错误标志(如果收敛则为0,如果达到最大函数调用数则为1)
numfunc: 迭代时调用函数的次数
默认full_output=0,只返回数值xopt:最小值的自变量的值
改为full_output=True,返回元组(xopt, fval, ierr, numfunc)
示例:
def H1(x):
z = 4/5 *( ((3-x)**2)/4 + 1/x)
return z
p = optimize.fminbound(H1,1,5,full_output=True)
print(p)
输出
(3.1958227932467116, 0.25799608410776015, 0, 9)