华理-蒋志强-matlab_第二次实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
华东理工大学商学院
数值分析实验报告
姓名:李彬
班级:金融103
学号:10102469
实验名称:MATLAB编程基础和拉格朗日插值
指导教师:蒋志强
实验地址:奉贤校区信息楼319室
实验时间:2012/10/1113:30-15:10
【实验步骤】
问题1.已知x=[012 2.53 3.54],y=[2.50.50.5 1.5 1.5 1.1240],编程求拉格朗日插值函数Pn(2.5),Pn(4.3),并画出拉格朗日插值函数Pn(x)在x ∈[04]上的图像。
(1)定义拉格朗日插值函数,将其保存在LB_ex_1.m中,具体实现程序如下:
function P=LB_ex_1(a,x,y)
%计算拉格朗日插值多项式,x为自变量,y为因变量,a为插值点
m=length(x);
n=length(y);
if m~=n
error('x和y的长度需一致')
end
P=zeros(size(a));
for j=1:n
L=1;
for i=1:n
if i~=j
L=L.*(a-x(i))/(x(j)-x(i));
end
end
P=P+L*y(j);
end
end
(2)具体编程实现如下:
>>x=[0122.533.54];
>>y=[2.50.50.51.51.51.1240];
>>a=0:0.1:4;
>>P=LB_ex_1(a,x,y);
>>plot(a,P,x,y,'o');
>>xlabel('x');
>>ylabel('P');
问题2.课本109页习题3
编程实现如下:
>>x=0:1:6;
>>y=[2,2.1592,3.1687,5.4332,9.1411,14.406,21.303];
>>plot(x,y);
>>xlabel('x');ylabel('y');
问题3.课本110页习题5
(1)仍然使用拉格朗日公式进行插值,使用LB_ex_1.m,取x0为0,x1为1,记为x=[01],相应e x记为y,y=exp(x).插值点记为a,插值结果记为P,误差记为E,E=exp(a)-P
(2)实现步骤如下:
>>x=[01];
>>y=exp(x);
>>a=-1:0.2:2;
>>P=LB_ex_1(a,x,y);
>>E=exp(a)-P;
>>plot(a,E);
>>hold on
>>plot([-12],[00],'--'); >>xlabel('x');ylabel('E');
【分析讨论】
本次实验中,我。。。。。