紧急求助!(MATLAB辅助优化设计)
<P> 本人编制优化程序时遇到一问题,在M文件中用积分函数运行不起来!为什么?请高手指点一下,谢谢了!<BR>目标函数M file文件:<BR>function f=myfun1(x)<BR>global t;<BR>v=0.8*1.256*t-3.1415+acos((x(1)^2+x(4)^2-2*x(1)*x(4)*cos(1.256*t+2.669)+x(3)^2-x(2)^2)/(2*x(3)*sqrt(x(1)^2+x(4)^2-2*x(1)*x(4)*cos(1.256*t+2.669))))+acos((x(1)^2+x(4)^2-2*x(1)*x(4)*cos(1.256*t+2.669)+x(4)^2-x(1)^2)/(2*x(4)*sqrt(x(1)^2+x(4)^2-2*x(1)*x(4)*cos(1.256*t+2.669))));<BR>f=int(v,t,0,2.5);<BR>约束条件M file 文件:<BR>function =mycon1(x)<BR>c(1)=x(1)^2+x(3)^2-(x(4)-x(1))^2-2*x(2)*x(3)*cos(3.1415*40/180);<BR>c(2)=-x(2)^2-x(3)^2+(x(4)+x(1))^2-2*x(2)*x(3)*cos(3.1415*40/180);<BR>ceq=0;<BR><BR>MATLAB窗口:<BR>>> A=;<BR>>> b=;<BR>>> x0=;<BR>>> lb=zeros(4,1);<BR>>> =fmincon(@myfun1,x0,A,b,[],[],lb,[],@mycon1)<BR><BR>就是目标函数M文件中我想把求积分当作目标函数,加了个f=int(v,t,0,2.5),运行时就出现下面的错误:<BR>??? Error using ==> fmincon<BR>FMINCON cannot continue because user supplied objective function<BR>failed with the following error:</P><P>No appropriate methods for function int.<BR><BR>大家帮忙解决一下吧!</P>
回复:(monster421)紧急求助!(MATLAB辅助优化设计...
function f=myfun1(x)<BR>global t;<BR>v=0.8*1.256*t-3.1415+acos((x(1)^2+x(4)^2-2*x(1)*x(4)*cos(1.256*t+2.669)+x(3)^2-x(2)^2)/(2*x(3)*sqrt(x(1)^2+x(4)^2-2*x(1)*x(4)*cos(1.256*t+2.669))))+acos((x(1)^2+x(4)^2-2*x(1)*x(4)*cos(1.256*t+2.669)+x(4)^2-x(1)^2)/(2*x(4)*sqrt(x(1)^2+x(4)^2-2*x(1)*x(4)*cos(1.256*t+2.669))));<BR>f=int(v,t,0,2.5);<BR><BR><BR>int用错了,你这样用v就变成数值了<BR>而对于int这个函数而言v应该是表达式 能具体给个做法吗? v是关于x和t的表达式啊!我还是不理解?回复:(monster421)紧急求助!(MATLAB辅助优化设计...
doc int看一下这个函数应该怎么用吧 help sym/int.m 有例子说明
页:
[1]