精品文档---下载后可任意编辑曲线拟合实验报告 数值分析 课程设计报告 学生姓名 学生学号 所在班级 指导老师 一、课程设计名称 函数逼近与曲线拟合 二、课程设计目的及要求 实验目的: ⑴ 学会用最小二乘法求拟合数据的多项式,并应用算法于实际问题。 ⑵学会基本的矩阵运算,注意点乘与叉乘的区别。 实验要求: ⑴ 编写程序用最小二乘法求拟合数据的多项式,并求平方误差,做出离散函数 与拟合函数的图形; ⑵ 用 MATLAB 的内部函数 polyfit 求解上面最小二乘法曲线拟合多项式的系数及平方误差,并用 MATLAB 的内部函数 plot 作出其图形,并与(1)结果进行比较。 三、课程设计中的算法描述 用最小二乘法多项式曲线拟合,根据给定的数据点,并不要求这条曲线精确的经过这些点,而就是拟合曲线无限逼近离散点所形成的数据曲线。 思 路 分 析 : 从 整 体 上 考 虑 近 似 函 数 ) (x p 同 所 给 数 据 点 ) (i iy x , 误 差 i i iy x p r ) ( 的大小,常用的方法有三种:一就是误差 i i iy x p r ) ( 绝对值的最大值 im ir 0max , 即误差向量的无穷范数;二就是误差绝对值的与 miir0,即误差向量的 1 成绩评定 范数;三就是误差平方与 miir02 的算术平方根,即类似于误差向量的 2 范数。前两种方法简单、自然,但不便于微分运算,后一种方法相当于考虑 2 范数的平方,此次采纳第三种误差分析方案。 算法的具体推导过程: 1、设拟合多项式为: 2、给点到这条曲线的距离之与,即偏差平方与: 3、为了求得到符合条件的 a 的值,对等式右边求 偏导数,因而我们得到了: 4、将等式左边进行一次简化,然后应该可以得到下面的等式 5、把这些等式表示成矩阵的形式,就可以得到下面的矩阵: niininiiknikinikinikinikiniiniinikiniiyyyaax x xx x xx x11i11012111111211 1an 6. 将这个范德蒙得矩阵化简后得到 n kkn nkkyyyaaax xx xx x 21102 21 1111 7、因为 Y A X * ,那么 X Y A / ,计算得到系数...