|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
x=[t1 t2 t3 t4 t5 t6 th(4:57,2) const];
aveW=sum(th(4:57,1))/nx;aveS=sum(th(4:57,2))/nx;
b0=[ aveW^2 1 0.5 aveW aveS 1];
myfunc=inline('beta(1)*(x(:,1)+x(:,2)*beta(2)+x(:,3)*beta(2)^2+x(:,4)*beta(3)+x(:,5)*beta(3)^2+x(:,6)*beta(3)^3)^2 + beta(4)*(x(:,1)+x(:,2)*beta(2)+x(:,3)*beta(2)^2+x(:,4)*beta(3)+x(:,5)*beta(3)^2+x(:,6)*beta(3)^3) + beta(5)x(:,7) + beta(6)*x(:,8)','beta','x');
b=nlinfit(x,p,myfunc,b0);
t1,t2等都是54*1的列向量,我试图用ninfit来拟合 结果报错如下
??? Error using ==> nlinfit
The inline model function generated the following error:
Error using ==> inlineeval
Error in inline expression ==> beta(1)*(x(:,1)+x(:,2)*beta(2)+x(:,3)*beta(2)^2+x(:,4)*beta(3)+x(:,5)*beta(3)^2+x(:,6)*beta(3)^3)^2+beta(4)*(x(:,1)+x(:,2)*beta(2)+x(:,3)*beta(2)^2+x(:,4)*beta(3)+x(:,5)*beta(3)^2+x(:,6)*beta(3)^3)+beta(5)x(:,7)+beta(6)*x(:,8)
??? Error: Unexpected MATLAB expression.
Error in ==> erci at 40
b=nlinfit(x,p,myfunc,b0);
要拟合的方程有点长,求大虾指导我哪里弄错了?或者说nlinfit能否做这样的拟合?不行的话matlab还要其他什么命令能做到的?
再问一件事情呵呵,在这里常看到有什么说拟合用1stOpt拟合,这个软件貌似都是收费的吗?
式子有点长,问题也有点多,请各位多多指教啦,最近要用到刚这个头都大了,先谢过了 |
|