作业帮 > 综合 > 作业

在Matlab中使用polyfit(x,y,2)命令对一组数据x和y进行2阶多项式拟合,会得到三个数,即分别为2次项的系

来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/05/23 15:28:15
在Matlab中使用polyfit(x,y,2)命令对一组数据x和y进行2阶多项式拟合,会得到三个数,即分别为2次项的系数,1次项的系数和常数项.现在问题来了:能不能让x和y的关系仅仅在2次项方面,即仅仅是y=k*x*x(k为系数),而不是y=k*x*x+m*x+n,虽然这样可能会导致误差大一点吧,但是我只需要这样的拟合,
在Matlab中使用polyfit(x,y,2)命令对一组数据x和y进行2阶多项式拟合,会得到三个数,即分别为2次项的系
用nlinfit函数实现非线性的最小二乘拟合
将x,y的关系拟合为y=a*x.^2
可以用polyfit首先拟合得到多项式
将p(1)也就是二次项系数作为拟合的初值,那样更快收敛
p=polyfit(x,y,2);
a = nlinfit(x,y,@(a,x) a*x.^2,p(1));