错误使用 fmincon (line 626) The constraint function must return two outputs; the nonlinear inequality constraints and the nonlinear equality constraints. 出错 PH_1 (line 7) [x,fval] = fmincon(f,x0,[],[],[],[],[],[],g,options);
时间: 2023-08-18 08:34:50 浏览: 380
fmincon.rar_ fmincon_fmincon_fmincon function_fmincon 函数_matlab
这个错误提示是因为您在使用 fmincon 函数时,您的约束函数没有按照 fmincon 函数的要求返回两个值,而是只返回了一个值。
在使用 fmincon 函数时,您需要指定一个约束函数来限制您的目标函数。这个约束函数需要返回两个值,分别是非线性不等式约束和非线性等式约束。具体来说,您需要将约束函数修改为如下形式:
```
function [c, ceq] = mycon(x)
% 非线性不等式约束
c = ...
% 非线性等式约束
ceq = ...
end
```
在修改好约束函数后,您可以将其传递给 fmincon 函数,同时将其他参数也传递给 fmincon 函数,如下所示:
```
[x, fval] = fmincon(f, x0, A, b, Aeq, beq, lb, ub, @mycon, options);
```
其中,`@mycon` 表示您的约束函数。
希望这个解释可以帮助您解决问题。
阅读全文