这个约束
t[0] + t[1] = 1
将是等式(type='eq'
)约束,其中您必须创建一个必须等??于零的函数:
def con(t):
return t[0] + t[1] - 1
然后dict
,您对约束进行了定义(字典列表(如果有多个)):
cons = {'type':'eq', 'fun': con}
我从未尝试过,但是我相信要保持t
真实,您可以使用:
con_real(t):
return np.sum(np.iscomplex(t))
并cons
同时包含两个约束:
cons = [{'type':'eq', 'fun': con},
{'type':'eq', 'fun': con_real}]
然后您cons
输入minimize
为:
scipy.optimize.minimize(func, x0, constraints=cons)