24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1250  |  回复: 4

xiaozhixiao

铁虫 (初入文坛)

[求助] 小弟新学matlab,想借用 fmincon求个函数的最小值,求助错误该法,感谢!

function p=fun0(x)
m=1;
h=6;
d=6;
c=15;%20,40, 50, 60, 100
Q=pi/12;%0, 5, 10, 15, 20, 25, 30, 35
r=20;
syms x
f1=[m/sin(x+Q)+(1+m)/sin(x-Q)]*cos(Q);
f2=[(1+m)^2*cot(x-Q)-m^2*cot(x+Q)]*sin(x);
p=(c*f1+0.5*r*d*f2)/cos(x);
回复此楼
我来了
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiaozhixiao

铁虫 (初入文坛)

clear
clc
x0=[1,1];
A=[];
B=[];
Aeq=[];
Beq=[];
LB=[pi/12];
UB=[pi/2];
[X,FVAL]= FMINCON(fun0,x0,A,B,Aeq,Beq,LB,UB);
%x为要求的变量的取值
%fval为目标函数的最优值
我来了
2楼2012-03-06 15:17:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiaozhixiao

铁虫 (初入文坛)

错误提示是:
??? SWITCH expression must be a scalar or string constant.

Error in ==> fmincon at 251
switch optimget(options,'Display',defaultopt,'fast')

Error in ==> jie at 10
[x,p]=fmincon('fun0',x0,A,b,Aeq,beq,vlb,vub);%求解非线性规划的函数(求最小值)
我来了
3楼2012-03-06 15:43:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tomato318

木虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
函数用句柄函数或者内联函数方式描述,不应该用符号变量进行定义
砺学力行
4楼2012-03-07 14:47:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yqx1985

木虫 (著名写手)

云中仙

【答案】应助回帖

感谢参与,应助指数 +1
[x,p]=fmincon('fun0',x0,A,b,Aeq,beq,vlb,vub)
改成
[x,p]=fmincon(@fun0,x0,A,b,Aeq,beq,vlb,vub);
人面不知何时去,桃花依旧笑春风
5楼2012-04-09 13:46:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 xiaozhixiao 的主题更新
信息提示
请填处理意见