24小时热门版块排行榜    

查看: 301  |  回复: 0

追风的风

新虫 (小有名气)

[求助] 小女子matlab优化求助,希望大神帮忙解决!

我用matlab做一个优化,下面是我的程序:
主程序:x0=[1,0.5,5,60,5];
lb=[1,0.5,2,40,2];
ub=[4,1.5,15,80,15];
options=optimset('Algorithm','active-set');
[x,fval]=fmincon(@objfun,x0,[],[],[],[],lb,ub,@confun,options)

confun(约束条件):function [c,ceq]=confun(x)
c=[x(5)-2*asind((x(1)-x(2))./2*x(4)*sind(x(3))),2*x(2)-x(1),x(2)-2*x(4),x(1)-x(4)];
ceq=[];

objfun(目标函数):function f=objfun(x)
f=((x(1)-x(2))./(sind(x(3)))-2*x(4)*sind(x(5)/2))./tand(x(5)/2);

结果总是出现:  objfun里的sind(x(3))出现虚数,这是为什么啊?各位大神帮解决哦,感激不尽!

小女子matlab优化求助,希望大神帮忙解决!
运算出错.jpg
回复此楼
哈哈
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 追风的风 的主题更新
信息提示
请填处理意见