您所在位置: 网站首页 / MATLAB实现拉格朗日插值.doc / 文档详情
MATLAB实现拉格朗日插值.doc 立即下载
2024-05-28
约3千字
约10页
0
122KB
举报 版权申诉
预览加载中,请您耐心等待几秒...

MATLAB实现拉格朗日插值.doc

MATLAB实现拉格朗日插值.doc

预览

免费试读已结束,剩余 5 页请下载文档后查看

7 金币

下载文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

数值分析上机报告题目:插值法学号:201014924姓名:靳会有一、调用MATLAB内带函数插值1、MATLAB内带插值函数列举如下:interp1interpftinterp2interp3interpnsplinemeshgridndgridgriddata一维数据内插(查表法)使用FFT方法的一维数据内插二维数据内插(查表法)三维数据内插(查表法)多维数据内插(查表法)三次样条内插为三维绘图产生X和Y阵为多维函数和内插产生阵列数据网格2、取其中的一维数据内插函数(interp1)为例,程序如下:其调用格式为:yi=interp1(x,y,xi)yi=interp1(x,y,xi,method)举例如下:x=0:10:100y=[40444652657680828892110];xi=0:1:100yi=interp1(x,y,xi,'spline')3、其他内带函数调用格式为:Interpft函数:y=interpft(x,n)y=interpft(x,n,dim)interp2函数:ZI=interp2(X,Y,Z,XI,YI),ZI=imerp2(Z,ntimes)ZI=interp2(Z,XI,YI),ZI=interp2(X,Y,Z,XI,YI,method)interp3函数:VI=interp3(X,Y,Z,V,XI,YI,ZI)VI=interp3(V,ntimes)VI=interp3(V,XI,YI,ZI)VI=interp3(…,method)Interpn函数:VI=interpn(X1,X2,X3,…,V,Y1,Y2,Y3,…)VI=interpn(V,ntimes)VI=interpn(V,Yl,Y2,Y3,…)VI=interpn(…,method)Spline函数:yi=spline(x,y,xi)pp=spline(x,y)meshgrid函数:[X,Y]=meshgrid(x,y)[X,Y]=meshgrid(x)[X,Y,Z]=meshgrid(x,y,z)Ndgrid函数:[X1,X2,X3,…]=ndgrid(x1,x2,x3,…)[X1,X2,X3,…]=ndgrid(x)Griddata函数:ZI=griddata(x,y,z,XI,YI)[XI,YI,ZI]=griddata(x,y,z,xi,yi)[…]=griddata(…method)二、自编函数插值1、拉格朗日插值法:建立M文件:functionf=Language(x,y,x0)symstl;if(length(x)==length(y))n=length(x);elsedisp('x和y的维数不相等!');return;%检错endh=sym(0);for(i=1:n)l=sym(y(i));for(j=1:i-1)l=l*(t-x(j))/(x(i)-x(j));end;for(j=i+1:n)l=l*(t-x(j))/(x(i)-x(j));end;h=h+l;endsimplify(h);if(nargin==3)f=subs(h,'t',x0);%计算插值点的函数值elsef=collect(h);f=vpa(f,6);%将插值多项式的系数化成6位精度的小数end在MATLAB中输入:x=[18316668707270;]y=[23335251434046];f=Language(x,y)plot(x,y)结果为:f=Inf+(-t)*Inf-54329.8*t^2+1503.75*t^3-22.2065*t^4+0.16789*t^5-0.000512106*t^6图形如下:MATLAB实现拉格朗日插值建立如下拉格朗日插值函数:functiony=lagrange(x0,y0,x);n=length(x0);m=length(x);fori=1:mz=x(i);s=0.0;fork=1:np=1.0;forj=1:nifj~=kp=p*(z-x0(j))/(x0(k)-x0(j));endends=p*y0(k)+s;endy(i)=s;end画图程序如下:x=[-5:1:5];y=1./(1+x.^2);x0=[-5:0.001:5];y0=lagrange(x,y,x0);y1=1./(1+x0.^2);plot(x0,y0,'r')holdonplot(x0,y1,'g')注:画出的图形为n=10的图形得到图形如下:n=10的图像牛顿K次插值多项式一、实验目的:1、掌握牛顿插值法的基本思路和步骤。培养编程与上机调试能力。二、牛顿插值法基本思路与计算步骤:给定插值点序列(。构造牛顿插值多项式。输入要计算的函数点并计算的值,利用牛顿插值公式,当增加一个节点时,只需在后面多计算一项,而前面的计算仍有用;
查看更多
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

MATLAB实现拉格朗日插值

文档大小:122KB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
全场最划算
12个月
199.0
¥360.0
限时特惠
3个月
69.9
¥90.0
新人专享
1个月
19.9
¥30.0
24个月
398.0
¥720.0
6个月会员
139.9
¥180.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用