我想用matlab中的Isqcurvefit函数拟合出一个方程的参数

我想用matlab中的Isqcurvefit函数拟合出一个方程的参数我的程序在图中c(1)c(2)c(3)c(4)是我想知道的系数请问我的程序错在哪里?... 我想用matlab中的Isqcurvefit函数拟合出一个方程的参数我的程序在图中 c(1) c(2) c(3) c(4)是我想知道的系数 请问我的程序错在哪里? 展开
 我来答
lhmhz
高粉答主

2017-05-12 · 专注matlab等在各领域中的应用。
lhmhz
采纳数:7263 获赞数:17001

向TA提问 私信TA
展开全部

程序错在哪里?

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

追问
请问初值设法有什么讲究?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式