?? f552.cpp
字號(hào):
#include "matlib.h"
#pragma hdrstop
#include "f552.h"
Mm f552(Mm sol, Mm options, i_o_t, Mm& sol__o, Mm& eval__o) {
begin_scope
sol.setname("sol"); options.setname("options");
dMm(eval_); dMm(x1); dMm(x2); dMm(r1); dMm(r2); dMm(g1); dMm(g2);
call_stack_begin;
// nargin, nargout entry code
double old_nargin=nargin_val; if (!nargin_set) nargin_val=2.0;
nargin_set=0;
double old_nargout=nargout_val; if (!nargout_set) nargout_val=2.0;
nargout_set=0;
// translated code
x1 = sol(1.0);
x2 = sol(2.0);
r1 = 0.1;
r2 = 0.8;
//約束條件
g1 = x1-2.0*x2+1.0;
g2 = power(x1,2.0)/4.0-power(x2,2.0)+1.0;
//加懲罰項(xiàng)的適值
if (istrue((g1>=0.0))&&istrue((g2>=0.0))) {
eval_ = power((x1-2.0),2.0)+power((x2-1.0),2.0);
} else {
eval_ = power((x1-2.0),2.0)+power((x2-1.0),2.0)+r1*g1+r2*g2;
eval_ = -eval_;
}
call_stack_end;
// nargin, nargout exit code
nargin_val=old_nargin; nargout_val=old_nargout;
// function exit code
sol.setname(NULL); options.setname(NULL);
sol__o=sol; eval__o=eval_;
return x_M;
end_scope
}
Mm f552(Mm sol, Mm options) {
begin_scope
double old_nargin=nargin_val; nargin_val=2.0; nargin_set=1;
double old_nargout=nargout_val; nargout_val=1.0; nargout_set=1;
dMm(sol__o); dMm(eval__o);
f552(sol, options, i_o, sol__o, eval__o);
nargout_val=old_nargout;
nargin_val=old_nargin;
return(sol__o);
end_scope
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -