方便大家使用的最小二乘法曲线拟合的Matlab程序-untitled.fig
非常方便用户使用,直接按提示操作即可;这里我演示一个例子:
请以向量的形式输入x,y.
x=[1,2,3,4]
y=[3,4,5,6]
通过下面的交互式图形,你可以事先估计一下你要拟合的多项式的阶数,方便下面的计算.
polytool()是交互式函数,在图形上方[Degree]框中输入阶数,右击左下角的[Export]输出图形
回车打开polytool交互式界面
回车继续进行拟合
输入多项式拟合的阶数 m = 4
Warning: Polynomial is not unique; degree >= number of data points.
> In polyfit at 72
In zxecf at 64
输出多项式的各项系数
a = 0.0200000000000001
a = -0.2000000000000008
a = 0.7000000000000022
a = 0.0000000000000000
a = 2.4799999999999973
输出多项式的有关信息 S
R: [4x5 double]
df: 0
normr: 2.3915e-015
Warning: Zero degrees of freedom implies infinite error bounds.
> In polyval at 104
In polyconf at 92
In zxecf at 69
观测数据 拟合数据
x y yh
1.0000 3.0000 3.0000
2.0000 4.0000 4.0000
3 5 5
4.0000 6.0000 6.0000
剩余平方和 Q = 0.000000
标准误差 Sigma = 0.000000
相关指数 RR = 1.000000
请输入你所需要拟合的数据点,若没有请按回车键结束程序.
输入插值点 x0 = 3
输出插值点拟合函数值 y0 = 5.0000
>>
结果:
untitled.fig
Figure88.jpg
最小二乘法曲线拟合的程序
untitled2.fig
Figure89.jpg
最小二乘法曲线拟合的程序
2022-05-09 12:29:12
6KB
matlab
1