求助matlab
我要算得非线性方程公式是这个:G(t)=4.5+A*exp(-a*t*cos(w*t-b)其中t分别是0.5,1,2,3;我做的源代码是以下这个:functionF=my...
我要算得非线性方程公式是这个:
G(t)=4.5+A*exp(-a*t*cos(w*t-b)
其中t分别是0.5,1,2,3;
我做的源代码是以下这个:
function F=myfun(x)
A=x(1); a=x(2); w=x(3); b=x(4);
F=(4.5+A*exp(-a*0.5)*cos(w*0.5-b)-8.06;4.5+A*exp(-a)*cos(w-b)-6.7;4.5+A*exp(-a*2)*cos(w*2-b)-3.91;4.5+A*exp(-a*3)*cos(w*3-b)-4.47);
x0=[-10;-10;-10;-10];
options=optimset('Display','iter');
[x,fval]=fsolve(@myfun,x0,options)
错误是:Strings passed to EVAL cannot contain function declarations。
但是感觉好像不只是因为这个
求高手给改改,最好是重新做一个。。。
今天24点之前。。。。。 展开
G(t)=4.5+A*exp(-a*t*cos(w*t-b)
其中t分别是0.5,1,2,3;
我做的源代码是以下这个:
function F=myfun(x)
A=x(1); a=x(2); w=x(3); b=x(4);
F=(4.5+A*exp(-a*0.5)*cos(w*0.5-b)-8.06;4.5+A*exp(-a)*cos(w-b)-6.7;4.5+A*exp(-a*2)*cos(w*2-b)-3.91;4.5+A*exp(-a*3)*cos(w*3-b)-4.47);
x0=[-10;-10;-10;-10];
options=optimset('Display','iter');
[x,fval]=fsolve(@myfun,x0,options)
错误是:Strings passed to EVAL cannot contain function declarations。
但是感觉好像不只是因为这个
求高手给改改,最好是重新做一个。。。
今天24点之前。。。。。 展开
2个回答
展开全部
我运行你的没有错误,结果是:
Norm of First-order Trust-region
Iteration Func-count f(x) step optimality radius
0 5 2.08839e-010 5.22e-011 1
Optimization terminated: first-order optimality is less than options.TolFun.
x =
-10
-10
-10
-10
fval =
1.0e-005 *
0.7226
0.7226
0.7226
0.7226
Norm of First-order Trust-region
Iteration Func-count f(x) step optimality radius
0 5 2.08839e-010 5.22e-011 1
Optimization terminated: first-order optimality is less than options.TolFun.
x =
-10
-10
-10
-10
fval =
1.0e-005 *
0.7226
0.7226
0.7226
0.7226
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询