我想用matlab中的Isqcurvefit函数拟合出一个方程的参数
我想用matlab中的Isqcurvefit函数拟合出一个方程的参数我的程序在图中c(1)c(2)c(3)c(4)是我想知道的系数请问我的程序错在哪里?...
我想用matlab中的Isqcurvefit函数拟合出一个方程的参数我的程序在图中 c(1) c(2) c(3) c(4)是我想知道的系数 请问我的程序错在哪里?
展开
1个回答
展开全部
程序错在哪里?
1、明显的错误,是粗心大意,把 lsqcurvefit 的第一字母打成了 I(ai),应该为L 的小写。
2、运行你的程序,还存在隐形的错误,如初值的问题,拟合函数的问题。对于你的问题的处置如下,
①初值c0可以取[0.6948 0.3171 0.9502 0.0344]
②对于本样本,用lsqcurvefit()函数来拟合系数是不合适的,应该为nlinfit()函数比较合理。
[c,r,J]=nlinfit(xdata,ydata,F,c0);
按上述要求更改后,运行可得到
c(1)= 3.8405425, c(2)= 0.0007044028872,c(3)= 0.0000224100526, c(4)= -0.1413069714
追问
请问初值设法有什么讲究?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询