插值法和拟合实验报告(数值计算)
matlab插值与曲线拟合实验报告
湖南大学电气与信息工程学院 《数值计算》课程 上机实验报告
姓名: 班级: 学号: 日期:
指导老师:
本次实验题号:第 3 次实验
1) 实验目的:
1) 用MATLAB 实现拉格朗日插值和分段线性插值。 2) 了解matlab 实现曲线拟合方法的实际应用。
二. 实验内容:
1) 插值算法的应用:
题目:用拉格朗日插值程序,分段线形插值函数分别研究f (X )的数据表,计算f(0.472) X 0.46 0.47 0.48 0.49 Y
0.4846555
0.4937542
0.5027498
0.5116683
2) 曲线拟合方法的实际应用
用电压V=10V 的电池给电容器充电,电容器上t 时刻的电压v(t)=V-(V-V0)e^(-t/T),其中V0是电容器的初始电压,T 是充电常数。实验测量了一组数据如下,请根据数据表确定V0和T 的大小。
t 0.5 1 2 3 4 5 7 9 V(t) 6.36
6.48
7.26
8.22
8.66
8.99
9.43
9.63
三. 算法介绍或方法基础
1.1 拉格朗日插值法
对于已给定的点 00(,),...,(,)k k x y x y 和待估计的点的横坐标x ,如上述理论,将其值代入
1100,011()()()()
():......()()()()k
j j i k j i i j j i j j j j j j k
x x x x x x x x x x l x x x x x x x x x x x -+=≠-+-----==-----∏
计算出插值基函数的值,然后根据公式:
数值计算方法实验报告
数值计算方法实验报告
一、实验介绍
本次实验是关于数值计算方法的实验,旨在通过计算机模拟的方法,实现对于数值计算方法的掌握。本次实验主要涉及到的内容包括数值微积分、线性方程组的求解、插值与拟合、常微分方程的数值解等。
二、实验内容
1. 数值微积分
数值微积分是通过计算机模拟的方法,实现对于微积分中的积分运算的近似求解。本次实验中,我们将会使用梯形公式和辛普森公式对于一定区间上的函数进行积分求解,并比较不同公式的计算误差。
2. 线性方程组的求解
线性方程组求解是数值计算领域中的重要内容。本次实验中,我们将会使用高斯消元法、LU分解法等方法对于给定的线性方程组进行求解,并通过比较不同方法的计算效率和精度,进一步了解不同方法的优缺点。
3. 插值与拟合
插值与拟合是数值计算中的另一个重要内容。本次实验中,我们将会使用拉格朗日插值法和牛顿插值法对于给定的数据进行插值求解,并使用最小二乘法对于给定的函数进行拟合求解。
4. 常微分方程的数值解
常微分方程的数值解是数值计算中的难点之一。本次实验中,我们将会使用欧拉法和龙格-库塔法等方法对于给定的常微分方程进行数值解的求解,并比较不同方法的计算精度和效率。
三、实验结果
通过本次实验,我们进一步加深了对于数值计算方法的理解和掌握。在数值微积分方面,我们发现梯形公式和辛普森公式都能够有效地求解积分,但是辛普森公式的计算精度更高。在线性方程组求解方面,我们发现LU分解法相对于高斯消元法具有更高的计算效率和更好的数值精度。在插值与拟合方面,我们发现拉格朗日插值法和牛顿插值法都能够有效地进行插值求解,而最小二乘法则可以更好地进行函数拟合求解。在常微分方程的数值解方面,我们发现欧拉法和龙格-库塔法都能够有效地进行数值解的求解,但是龙格-库塔法的数值精度
数值分析关于插值的实验报告
数值计算方法实验报告
姓名:罗钰婧 学号:20121378032 学院:数统学院 1. 给出f(x)=lnx 的数值表
x 0.4 0.5
0.6
0.7
0.8 lnx
-0.9163
-0.6931 -0.5108 -0.3567
-0.2231
用线性插值及二次插值计算ln0.54的近似值
线性插值的近似值是0.6202 二次插值的近似值是0.6168 2. 已知函数在下列各点的值为
i x
0.2 0.4 0.6 0.8 1.0 )(i x f
0.98
0.92
0.81
0.64
0.38
试用4次牛顿插值多项式
)
(4x P 对数据进行插值,用图给出
}10,11,1,0,08.02.0),,{(=+=i i x y x i i i ,)(4x P
用牛顿插值法所得的多项式是:P4 =26/25 - (5*(x - 1/5)*(x - 2/5))/8 - (5*(x - 1/5)*(x - 2/5)*(x - 3/5))/24 - (25*(x - 1/5)*(x - 2/5)*(x - 3/5)*(x
- 4/5))/48 - (3*x)/10
3.已知一组数据点,编写一程序求解三次样条插值函数满足
并针对下面一组具体实验数据
0.25 0.3 0.39 0.45 0.53
0.5000 0.5477 0.6245 0.6708 0.7280
求解,其中边界条件为.
得到结果为
时
x
.0[
]3.0,
25
s1 =
-(705394867539368680*X^3 - 529046150654530286*X^2 + 23087199381998953*X - 40023205577025431)/112589990684262400
插值法和拟合实验报告(数值计算)
插值法和拟合实验报告
一、
实验目的
1.通过进行不同类型的插值,比较各种插值的效果,明确各种插值的优越性;
2.通过比较不同次数的多项式拟合效果,了解多项式拟合的原理;
3.利用matlab 编程,学会matlab 命令;
4.掌握拉格朗日插值法;
5.掌握多项式拟合的特点和方法。
二、
实验题目
1.、插值法实验
将区间[-5,5]10等分,对下列函数分别计算插值节点k
x 的值,进行不同类型的插值,作
出插值函数的图形并与)(x f y =的图形进行比较:
;11
)(2x x f += ;arctan )(x x f = .1)(42x x x f +=
(1) 做拉格朗日插值; (2) 做分段线性插值; (3) 做三次样条插值.
2、拟合实验
给定数据点如下表所示:
分别对上述数据作三次多项式和五次多项式拟合,并求平方误差,作出离散函数)
,(i i y x 和
拟合函数的图形。
三、
实验原理
1.、插值法实验
∏
∑∏∏∏∑∑≠==≠=≠=≠=+-==--=
=-=
==-=-=----==++==j
i j j
i i i i i n
i i n n
j
i j j
n
j
i j j
i i n
j
i j j
n i i i n
i i n n
n o i n
i i n x x x x x y x l x L x x c n
i x x c x x x c
x x x x x x x x c y x l x L y x l y x l y x l x L ,00
,0,0,01100
00
)(l )()()
(1
,1,0,
1)()(l )
()())(()()()()()()()(,
插值法和拟合实验报告
插值法和拟合实验报告
一、实验目的
1.通过实验了解插值法和拟合法在数值计算中的应用;
2.掌握拉格朗日插值法、牛顿插值法和分段线性插值法的原理和使用方法;
3.学会使用最小二乘法进行数据拟合。
二、实验仪器和材料
1.一台计算机;
2. Matlab或其他适合的计算软件。
三、实验原理
1.插值法
插值法是一种在给定的数据点之间“插值”的方法,即根据已知的数据点,求一些点的函数值。常用的插值法有拉格朗日插值法、牛顿插值法和分段线性插值法。
-拉格朗日插值法:通过一个n次多项式,将给定的n+1个数据点连起来,构造出一个插值函数。
-牛顿插值法:通过递推公式,将给定的n+1个数据点连起来,构造出一个插值函数。
-分段线性插值法:通过将给定的n+1个数据点的连线延长,将整个
区间分为多个小区间,在每个小区间上进行线性插值,构造出一个插值函数。
2.拟合法
拟合法是一种通过一个函数,逼近已知的数据点的方法。常用的拟合
法有最小二乘法。
-最小二乘法:通过最小化实际观测值与拟合函数的差距,找到最优
的参数,使得拟合函数与数据点尽可能接近。
四、实验步骤
1.插值法的实验步骤:
-根据实验提供的数据点,利用拉格朗日插值法、牛顿插值法、分段
线性插值法,分别求出要插值的点的函数值;
-比较三种插值法的插值结果,评价其精度和适用性。
2.拟合法的实验步骤:
-根据实验提供的数据点,利用最小二乘法,拟合出一个合适的函数;
-比较拟合函数与实际数据点的差距,评价拟合效果。
五、实验结果与分析
1.插值法的结果分析:
-比较三种插值法的插值结果,评价其精度和适用性。根据实验数据
插值法与数据拟合
图一 练习4的图形
5、在区间[-1,1]上分别取10,20n =用两组等距节点对龙格函数
2
1
(),(11)125f x x x
=
-≤≤+作多项式插值,对不同n 值,分别画出插值函数及()f x 的图形。
解:a=-1;b=1;n=100;h=(b-a)/n;
>> x=a:h:b;y=1./(1+25.*x.^2); >> plot(x,y,'k')
其函数原图形分别如下所示:
plot(x,y,'o');plot(xx,z,'r-');
hold off
其图形分别如下所示:
图三Runge(10)
图四 Runge(20)
6、下列数据点的插值
x
0 1 4 9 16 25 36 49 64 y
1
2
3
4
5
6
7
8
(1)可以得到平方根函数的近似,在区间[0,64]上作图。 (2) 用这9个点作8次多项式插值8()L x 。
function L8 %平方根函数x y
的8次多项式插值)(8x L
x=[0 1 4 9 16 25 36 49 64]; y=sqrt(x); m=length(x); z=zeros(1,m); for i=1:m
z(i)=Lagrange(x, y, x(i)); end hold on
plot(x,y,'o'); plot(x,y,'o');xlabel('x');ylabel('y'); plot(x,z,'r-'); hold off
得到其图形如下所示:
y=的图形
图五x
x=[0 1 4 9 16 25 36 49 64];
y=[0 1 2 3 4 5 6 7 8];
数值分析插值法
实验报告专用纸
实验项目名称插值法课程名称计算机数值方法
教师评语及成绩:
实验成绩:教师签字:
(请按照实验报告的有关要求书写,一般必须包括:1、实验目的;2、实验内容;3、实验步骤与方法;4、实验数据与程序清单;5、出现的问题及解决方法;6、实验结果、结果分析与体会等内容。)1、实验目的
(1)学会Lagrange插值、Newton插值、分段线性插值等基本插值方法;
(2)讨论插值的Runge现象,掌握分段线性插值方法;
(3)学会用Matlab或C等实现多项式拟合。
2、实验内容
(1)用Newton插值多项式及分段线性插值函数对数据进行插值;
(2)比较牛顿插值与分段线性插值法;
(3)函数f(x)的多项式拟合;
输入:拟合数据序列{x i,y i},i=0,1,2,…,m;
输出:多项式拟合函数,并画出拟合曲线和f(x)。
3、实验步骤
(1)用MATLAB编写独立的拉格朗日插值多项式的函数
(2)用MATLAB编写独立的牛顿插值多项式
(3)利用编写好的函数计算实际问题
(4)记录实验数据
(5)对运行结果进行分析
(6)根据实验情况和结果撰写并提交实验报告。
4、实验原理
(1)拉格朗日插值多项式
(2)牛顿插值多项式
(3)分段线性插值
5、实验程序(MATLAB)
6、实验结果与分析
(1)实验结果
图1龙格函数图形
图2Runge(10)的图形
图3Runge(12)的图形
图4Runge(20)的图形
输入:拟合数据序列{x i,y i},i=0,1,2,…,m;
01491625364964
x
i
012345678
y
i
输出:多项式拟合函数,并画出拟合曲线和f(x)。
拉格朗日插值算法及应用实验报告
拉格朗日插值算法及应用实验报告
一、引言
拉格朗日插值法是一种常用的数值插值方法,可用于在已知数据点之间估计函数值。该方法的基本思想是通过构造一个多项式来逼近给定的数据点集合,从而实现对函数的插值。本实验旨在通过实际计算的方式探讨拉格朗日插值法的基本原理与应用。
二、拉格朗日插值法原理
拉格朗日插值法利用多项式的性质来对给定的数据进行插值。给定n+1个不同的数据点(x_0,y_0),(x_1,y_1),...,(x_n,y_n),其中x_i表示自变量,y_i表示因变量。拉格朗日插值多项式的表达式为:P_n(x)=y_0*L_0(x)+y_1*L_1(x)+...+y_n*L_n(x)
其中L_i(x)为拉格朗日基函数,定义如下:
L_i(x)=(x-x_0)(x-x_1)...(x-x_i-1)(x-x_i+1)...(x-x_n)/[(x_i-x_0)(x_i-x_1)...(x_i-x_i-1)(x_i-x_i+1)...(x_i-x_n)]
三、应用实验
本实验选取了不同的数据点集合,并利用拉格朗日插值法计算相应的拟合多项式,从而对函数进行插值。
数据点集合1:
(x_0,y_0)=(0,1)
(x_1,y_1)=(1,2)
(x_2,y_2)=(2,3)
(x_3,y_3)=(3,5)
利用拉格朗日插值法得到的多项式为:
P_3(x)=1*L_0(x)+2*L_1(x)+3*L_2(x)+5*L_3(x)
将基函数带入,得到多项式表达式为:
P_3(x)=1/6*x^3-3/2*x^2+11/6*x+1
数据点集合2:
数值计算方法实验报告
数值计算方法实验报告
一、实验目的
本实验旨在通过Python语言编写数值计算方法程序,掌握常见数值计算方法的实现原理及应用。具体包括:插值法、最小二乘法、数值微积分、数值解方程、数值解微分方程等。
二、实验环境
Python编程语言、Jupyter Notebook环境
三、实验内容
1.插值法
(1)代码实现:在Python中使用Scipy库中的Interpolate模块实现拉格朗日插值法和牛顿插值法,并通过数据可视化展示其效果。
(2)实验步骤:
- 导入所需库,准备所需数据;
- 定义拉格朗日插值法函数;
- 定义牛顿插值法函数;
- 测试函数并可视化结果。
(3)实验结果:
2.最小二乘法
(1)代码实现:在Python中使用Numpy库实现最小二乘法,并通过数据可视化展示其效果。
(2)实验步骤:
- 导入所需库,准备所需数据;
- 定义最小二乘法函数;
- 测试函数并可视化结果。
(3)实验结果:
3.数值微积分
(1)代码实现:在Python中实现梯形法和辛普森法,并通过数据可视化展示其效果。
(2)实验步骤:
- 导入所需库,准备所需数据;
- 定义梯形法函数和辛普森法函数;
- 测试函数并可视化结果。
(3)实验结果:
4.数值解方程
(1)代码实现:在Python中实现二分法、牛顿法和割线法,并通过数据可视化展示其效果。
(2)实验步骤:
- 导入所需库,准备所需数据;
- 定义二分法函数、牛顿法函数和割线法函数;
- 测试函数并可视化结果。
(3)实验结果:
5.数值解微分方程
(1)代码实现:在Python中实现欧拉法和龙格-库塔法,并通过数据可视化展示其效果。
测控系统原理与设计实验报告--测试数据的拟合与插值
实验报告(理工类)
开课学院及实验室: 实验时间:年月日
一实验目的
学习利用MATLAB编程实现拟合法以及求误差。
二实验内容
1拟合法:
(l)polyfit函数
TLAB的polyfit函数用于多项式拟合,其语法为:
P=polyfit(x z Pk);
其中,X,y分别是横纵坐标向量,它们不仅元素个数相同,而且同为行向量或同为列向量。k为非负整数,是待拟合的多项式的最高次数。P是输出项,为待拟合的多项式的系数向量(由高次到低次排列)。在MATLAB中输入以下代码:
X=(10,11,12,13);
y=[8.0000,7.8431,7.6923,7.5471];
P=polyfit(×,y,1);
运行结果:
P=
-0.1509 9.5065所以拟合得的函数就是:y=-0.1509X+9.5065.
在进行多项式拟合时,必须注意的是,拟合的精度是有限的,一般而言,需要满足以下条件:
记m为不重复的横坐标的数目,则拟合次数kv=m∙1,在此前提下尽量使用低次多项式进行拟合。(2)polyval函数
polyval,顾名思义就是“多项式的值”,该函数的功能是将已知数据代入拟合得的多项式求值。语法格式:
y=polyval(p,x);
其中,P是已经拟合的多项式(比如说([)中的P),X是自变量组成的向量,y是所求值组成的向量。
输入以下代码:
X=[10,11,12];
y=[8.OOOO r7.8431,7.6923];
P=polyfit(x,y r1)
t=[l z2,3,4,5];
s=polyval(p,t)
运行结果:
数值分析实验报告插值与拟合
数值分析课程实验报告实验名称插值与拟合
n h
n=
分别取5,10,20
进行逼近,并在同一坐标系下作出函数的图形,进行比较。写出
的逼近程度与节点个数的关系,并分析原因。
插值与曲线拟合实验报告
数值计算方法插值与拟合实验报告
摘要:通过实验介绍插值方法中常见的拉格朗日插值,线性分段插值和牛顿前插公式,分析计算各种方法的插值余项。在曲线拟合方面使用两种不同类型的曲线来拟合同一组数据,并计算残差向量范数,比较不同曲线拟合的效果,在此例上给出优劣的判断。
关键词:拉格朗日插值;线性分段插值;牛顿前插公式;曲线拟合
引言
在工程和科学计算中经常碰到只知道离散的数据测量点而需要匹配其变量之间的数学函数表达式的情况,这就需要插值和拟合的数值方法来解决这些问题。插值法是在离散数据的基础上补插连续函数,使得这条连续曲线通过全部给定的离散数据点,也是离散函数逼近的重要方法,利用它可通过函数在有限点处的取值状况,估算出函数在其他点处的近似值。曲线拟合则是用连续曲线近似地刻画或比拟平面上离散点所表示的坐标之间的函数关系,在各个方面也有着愈加广泛的应用。
1 算法介绍
1.1 拉格朗日插值法
1.1.1 算法理论
对某个多项式函数,已知有给定的k+1个取值点:
x j都互不相同,那么应用拉格朗日插值公式所得到的拉格朗日插值多项式为:
拉格朗日基本多项式
的特点是在1,在其它的点
0。对于给定的
为1,而在其他点取值都是0
他点取值都是0。而多项式
就可以满足
在其它点取值为0的多项式容易找到,例如:
0。于是,将多项式除以这个取值,就得到一个满足1,而在其他点取值都是0的多项式”:
这就
是拉格朗日基本多项式。
拉格朗日插值法的公式结构整齐紧凑,在理论分析中十分方便,然而在计算中,当插值点增加或减少一个时,所对应的基本多项式就需要全部重新计算,于是整个公式都会变化,非常繁琐。此外,当插值点比较多的时候,拉格朗日插值多项式的次数可能会很高,因此具有数值不稳定的特点,也就是说尽管在已知的几个点取到给定的数值,但在附近却会和“实际上”的值之间有很大的偏差。这类现象也被称为龙格现象,解决的办法是分段用较低次数的插值多项式。
数值计算方法实验报告
数值计算方法实验报告
实验目的:
本次实验的目的是通过对数值计算方法的实践操作,加深对该方法的理解和掌握。具体来说,本次实验旨在通过使用 MATLAB 软件对一些常见的数值计算问题进行求解,从而掌握和熟练运用一些数值计算方法,如插值、数值微积分、常微分方程数值解等。
实验过程:
1.插值
(1) Lagrange 插值法
(2) Newton 插值法
2.数值微积分
(1) 梯形公式
(2) Simpson 公式
3.常微分方程数值解
(1) 古典四步 Runge-Kutta 法
(2) 改进四步 Runge-Kutta 法
实验结果:
本次实验中,我们使用 MATLAB 软件对以上数值计算问题进行了求解,成功得到了相应的数值解,并且通过分析和比较不同的数值计算方法的结果,得出了以下结论:
1.在插值问题中,Lagrange 插值法和 Newton 插值法的结果相对较
为接近,但是 Newton 插值法的计算速度更快。
2.在数值微积分问题中,梯形公式的结果较为精确,但是 Simpson 公式的精度更高。
3.在常微分方程数值解问题中,古典四步 Runge-Kutta 法和改进四
步 Runge-Kutta 法均能得到较为准确的结果,但是改进四步
Runge-Kutta 法的精度更高,尤其对于复杂的常微分方程求解有更好的效果。
实验结论:
本次实验通过对数值计算方法的实践操作,深入理解了该方法的原理和运用,掌握了一些重要的数值计算方法,如插值、数值微积分、常微分方程数值解等,并且通过实验结果的分析比较,得出了相应的结
论。这些知识和技能对于我们在科研和工程实践中的数值计算问题具有非常重要的意义,具有广泛的应用前景。
数值计算中的插值和拟合方法
在数值计算中,插值和拟合是两种常用的方法,用于通过已知数据点推测未知
数据点的数值。插值是一种通过已知数据点构建一个函数,以便在这些数据点
之间进行预测。而拟合是一种将一个函数与已知数据点进行匹配,以便预测未
知数据点的数值。
插值的目标是通过经过已知数据点的连续函数来准确地估计未知数据点的数值。最简单的插值方法是线性插值,它假设两个相邻数据点之间的函数值是线性变
化的。线性插值可以用于计算两个已知数据点之间的任何位置的函数值。如果
我们有更多的数据点,可以使用更高阶的插值方法,如二次插值或三次插值。
这些方法使用多项式来表示数据点之间的函数,以便更准确地预测未知数据点。
然而,插值方法并不总是最理想的选择。在某些情况下,通过已知数据点精确
地构建一个连续函数是不可能的。这可能是因为数据点之间的差异太大,或者
数据点的数量太少。在这种情况下,拟合方法可以提供更好的预测结果。
拟合的目标是找到一个函数,使其与已知数据点的误差最小。最常用的拟合方
法是最小二乘拟合,它通过最小化数据点的残差的平方和来找到最佳拟合函数。最小二乘拟合可以用于各种不同的函数类型,如线性拟合、多项式拟合、指数
拟合等。根据数据点的分布和特性,我们可以选择适当的拟合函数来获得最准
确的预测结果。
在实际应用中,插值和拟合方法经常同时使用。例如,在地理信息系统中,我
们可能需要通过已知地点的气温数据来估计未知地点的气温。我们可以使用插
值方法来构建一个连续函数,以便在已知地点之间预测未知地点的气温。然后,我们可以使用拟合方法来匹配这个连续函数与其他已知数据点,以提高预测的
数值计算方法实验报告
数值计算方法实验报告
实验目的:
本实验的目的是了解数值计算方法的基本原理和应用,掌握数值计算方法的基本步骤和算法,熟练运用数值计算方法解决实际问题。
实验内容:
1. 基本数值计算方法的实现,如二分法、牛顿迭代法、弦截法等。
2. 常微分方程数值解法的实现,如欧拉法、龙格-库塔法等。
3. 常微分方程组数值解法的实现,如欧拉法、龙格-库塔法等。
4. 线性方程组数值解法的实现,如高斯消元法、LU分解法等。
5. 插值与拟合的实现,如拉格朗日插值、牛顿插值、最小二乘法等。
实验步骤:
1. 根据教材或参考资料,了解数值计算方法的基本原理和应用。
2. 根据实验内容和要求,选择相应的数值计算方法,编写程序实现。
3. 运用编写的程序,解决给定的数值计算问题,分析计算结果。
4. 根据实验结果,总结数值计算方法的优缺点及应用范围。
实验要求:
1. 熟练掌握数值计算方法的基本原理和应用,能够灵活运用数值计算方法解决实际问题。
2. 编写程序时,注意代码的简洁性、可读性和可维护性。
3. 实验数据要求准确,计算结果要仔细分析,结果要清晰明了地展示。
4. 实验报告要求格式规范,内容全面、准确、详细,表述清晰,思路流畅,使用正确的数学符号和术语。
结论:
数值计算方法是一种重要的数学工具,在很多领域有广泛应用。本实
验通过编写程序,实现了基本数值计算方法、常微分方程数值解法、常微分方程组数值解法、线性方程组数值解法、插值与拟合等方法,通过实例计算,分析了计算结果,总结了数值计算方法的优缺点及应用范围。此次实验提高了我们的数学计算和编程能力,对我们今后的学习和工作有很大帮助。
实验报告-插值法
验 目 的 和 要 求
2、掌握用MATAB 作线性最小二乘的方法。
实 验 内 容 和 步 骤
计算机上机实验报告
1掌握用MATLA 计算拉格朗日、分段线性、三次样条三种插值
的方法,改变节点的数目,对三种插值结果进行初步分析。
3、通过实例学习如何用插值方法与拟合方法解决实际问题,
注意
二者的联系和区别。 实验的主要内容
1编制拉格朗日、牛顿插值程序,并运行一个简单的实例。
(1)拉格朗日插值程序:
fun cti on v=pol yin terp(x,y,u) n=len gth(x); v=zeros(size(u)); for k=1: n w=on es(size(u));
for j=[1:k-1 k+1:n] w=(u-x(j))./(x(k)-x(j)).*w; end v=v+w*y(k); end
实例:当x=144,169,225时,y=12,13,15,用拉格朗日差值法 求根
号175。如下:
''Fl ^.kiEO- 1
(2)牛顿插值程序:
fun ctio n y=n ewi nterp(X,Y,x)% 牛顿插值函数
m=le ngth(X);
for k=2:m
for j=1:k-1
Y(k)= (Y(k)- Y(j))/(X(k)-X(j));
end
end
y=Y(m);
for j=m-1:-1:1
y=y.*(x-X(j))+Y(j);
2、给定函数f(x)x,已知:
f(2.0) .1.414214 f(2.1) .1.449138
f (2.2) .1.483240 f (2.3) .1.516575 f (2.4) .1.549193 用牛顿插值法求4次Newton插值多项式在2.15处的值,以此作为函
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
插值法和拟合实验报告
一、
实验目的
1.通过进行不同类型的插值,比较各种插值的效果,明确各种插值的优越性;
2.通过比较不同次数的多项式拟合效果,了解多项式拟合的原理;
3.利用matlab 编程,学会matlab 命令;
4.掌握拉格朗日插值法;
5.掌握多项式拟合的特点和方法。
二、
实验题目
1.、插值法实验
将区间[-5,5]10等分,对下列函数分别计算插值节点
k
x 的值,进行不同类型
的插值,作出插值函数的图形并与)(x f y =的图形进行比较:
;11
)(2x x f += ;arctan )(x x f =
.1)(42x x x f += (1) 做拉格朗日插值; (2) 做分段线性插值; (3) 做三次样条插值.
2、拟合实验
给定数据点如下表所示:
分别对上述数据作三次多项式和五次多项式拟合,并求平方误差,作出离散函数
)
,(i i y x 和拟合函数的图形。
三、
实验原理
1.、插值法实验
∏
∑∏∏∏∑∑≠==≠=≠=≠=+-==--=
=-=
==-=-=----==++==j
i j j
i i i i i n
i i n n
j
i j j
n
j
i j j
i i n
j
i j j
n i i i n
i i n n
n o i n
i i n x x x x x y x l x L x x c n
i x x c x x x c
x x x x x x x x c y x l x L y x l y x l y x l x L ,00
,0,0,01100
00
)(l )()()
(1
,1,0,
1)()(l )
()())(()()()()()()()(,
故,
得
再由,设
2、拟合实验
四、实验内容
1.、插值法实验
1.1实验步骤:
打开matlab软件,新建一个名为chazhi.m的M文件,编写程序(见1.2实验程序),运行程序,记录结果。
1.2实验程序:
x=-5:1:5;
xx=-5:0.05:5;
y1=1./(1+x.^2);
L=malagr(x,y1,xx);
L1=interp1(x,y1,x,'linear');
S=maspline(x,y1,0.0148,-0.0148,xx);
hold on;
plot(x,y1,'b*');
plot(xx,L,'r');
plot(x,L1,'g');
plot(xx,S,'k');
figure
x=-5:1:5;
xx=-5:0.05:5;
y2=atan(x);
L=malagr(x,y2,xx);
L1=interp1(x,y2,x,'linear');
S=maspline(x,y2,0.0385,0.0385,xx);
hold on;
plot(x,y2,'b*');
plot(xx,L,'r');
plot(x,L1,'g');
plot(xx,S,'k');
figure
x=-5:1:5;
xx=-5:0.05:5;
y3=x.^2./(1+x.^4);
L=malagr(x,y3,xx);
L1=interp1(x,y3,x,'linear');
S=maspline(x,y3,0.0159,-0.0159,xx);
hold on;
plot(x,y3,'b*');
plot(xx,L,'r');
plot(x,L1,'g');
plot(xx,S,'k');
1.3实验设备:matlab软件。
2、拟合实验
2.1.实验步骤:
新建一个名为nihe.m的M文件,编写程序(见2.2实验源程序),运行程序,记录结果。
2.2实验程序:
x=[-1.5 -1.0 -0.5 0 0.5 1.0 1.5];
y=[-4.45 -0.45 0.55 0.05 -0.44 0.54 4.55];
a1=mafit(x,y,3)
x1=[-1.5:0.05:1.5];
y1=a1(4)+a1(3)*x1+a1(2)*x1.^2+a1(1)*x1.^3;
hold on
plot(x,y,'b*');
plot(x1,y1,'r');
p1=polyval(a1,x);
s1=norm(y-p1)
figure
a2=mafit(x,y,5)
x2=[-1.5:0.05:1.5];
y2=a2(6)+a2(5)*x2+a2(4)*x2.^2+a2(3)*x2.^3+a2(2)*x2.^4+a2(1)*x2.^5; hold on
plot(x,y,'b*');
plot(x2,y2,'r');
p2=polyval(a2,x);
s2=norm(y-p2)
2.3实验设备:matlab软件。
五、实验结果
1.、插值法实验
(1)