数值分析实验报告2
更新时间:2024-07-07 13:21:01 阅读量: 综合文库 文档下载
- 数值计算实验报告推荐度:
- 相关推荐
实验名称 插值法
实验目的
(1)学习并熟练掌握MATLAB语言的编程;
(2)通过课程实习能够应用MATLAB软件来计算函数的插值,了解函数插值方法。 实验原理
牛顿差商形式多项式
P(x)=f(x0)+f[x0,x1](x-x0)+f[x0,x1,x2](x-x0)(x-x1)+…+f[x0,x1,x2…xn](x-x0)…(x-xn-1) 牛顿插值多项式的余项 Rn(x)=f[x0,x1,x2…xn]wn+1(x) 实验题目
{1}已知函数在下列各点的值为
xi 0.2 0.4 0.6 0.8 1.0 f?xi? 0.98 0.92 0.81 0.64 0.38
试用4次牛顿插值多项式P4?x?及三次样条函数Q?x?(自然边界条件)对数据进行插 值。用图给出{(xi,yi),xi=0.2+0.08i,i=0,1,11,10},P4?x?及Q?x?。 ①实验过程
x1=[0.2 0.4 0.6 0.8 1.0];
y1=[0.98 0.92 0.81 0.64 0.38]; n=length(y1); c=y1(:);
for j=2:n %求差商 for i=n:-1:j
c(i)=(c(i)-c(i-1))/(x1(i)-x1(i-j+1)); end end
syms x df d;
df(1)=1;d(1)=y1(1);
for i=2:n %求牛顿差值多项式 df(i)=df(i-1)*(x-x1(i-1)); d(i)=c(i-1)*df(i); end
P4=vpa(sum(d),5) %P4即为4次牛顿插值多项式,并保留小数点后5位数 pp=csape(x1,y1, 'variational');%调用三次样条函数 q=pp.coefs;
q1=q(1,:)*[(x-.2)^3;(x-.2)^2;(x-.2);1]; q1=vpa(collect(q1),5)
q2=q(1,:)*[(x-.4)^3;(x-.4)^2;(x-.4);1]; q2=vpa(collect(q2),5)
q3=q(1,:)*[(x-.6)^3;(x-.6)^2;(x-.6);1];
q3=vpa(collect(q3),5)
q4=q(1,:)*[(x-.8)^3;(x-.8)^2;(x-.8);1]; q4=vpa(collect(q4),5)%求解并化简多项式
②运行结果 P4 = - 0.20833333333212067373096942901611*x^4 - 0.20833333333212067373096942901611*x^3 + 0.15833*x^2 + 0.96833*x + 0.782 q1 = - 1.3392857142898719757795333862305*x^3 + 0.40714285714057041332125663757324*x + 1.04 q2 = - 1.3392857142898719757795333862305*x^3 + 0.8892857142927823588252067565918*x + 1.1643 q3 = - 1.3392857142898719757795333862305*x^3 + 1.6928571428579743951559066772461*x + 1.4171 q4 = - 1.3392857142898719757795333862305*x^3 + 2.8178571428288705646991729736328*x + 1.8629
1.6071*x^2 2.4107*x^2 3.2143*x^2 - - - - 0.80357*x^2
③问题结果
4次牛顿差值多项式P4?x?= 0.98*x - 0.3*(x - 0.2)*(x - 0.4) - 0.625*(x - 0.2)*(x - 0.4)*(x - 0.6) - 0.20833*(x - 0.2)*(x - 0.4)*(x - 0.8)*(x - 0.6) + 0.784
三次样条差值多项式Q?x??
{2}2.在区间[-1,1]上分别取n=10.20用两组等距节点对龙格函数f(x)=式及三次样条差值,对每个n值,分别画出差值函数及f(x)的函数. 龙格图函数做多项式
function L=lagrange(a,b,a0) syms x n=length(a) L=0.0 for i=1:n l=b(i); for j=1:i-1
l=l.*(x-a(j))/(a(i)-a(j)); end
for j=i+1:n
l=l.*(x-a(j))/(a(i)-a(j)); end
1)做多项21?25x L=L+l; simplify(L); end
L=collect(L) L=vpa(L,6) L=subs(L,'x',a0); end clear all subplot(1,2,1); a=linspace(-1,1,10); b=1./(1+25.*a.^2); L=Lagrange(a,b) b0=subs(L,'x',a); plot(a,b0,'rs') hold on plot(a,b)
title('n=10ê±μ?2??μoˉêy'); subplot(1,2,2); a=linspace(-1,1,20); b=1./(1+25.*a.^2); L=Lagrange(a,b) b0=subs(L,'x',a); plot(a,b0,'rs'); hold on; plot(a,b)
title('n=20ê±μ?2??μoˉêy');
图像:
三次样条插值函数插值程序:
subplot(1,2,1); a=linspace(-1,1,5); b=1./(1+25.*a.^2); a0=linspace(-1,1,10); b0=spline(a,b,a0); plot(a,b,'rs',a0,b0) hold on plot(a,b,'G')
title('n=10时的插值函数'); subplot(1,2,2); a=linspace(-1,1,5); b=1./(1+25.*a.^2); a0=linspace(-1,1,20); b0=spline(a,b,a0); plot(a,b,'rs',a0,b0) hold on plot(a,b,'G')
title('n=20时的插值函数');
图像:
y
{3}下列数据点的插值
x 0 1 4 9 16 25 36 49 64 y 0 1 2 3 4 5 6 7 8
可以得到平方根函数的近似,在区间[0,64]上作图. (1)用这9个点作8次多项式插值Ls(x).
(2)用三次样条(第一边界条件)程序求S(x).
从得到结果看在[0,64]上,哪个插值更精确;在区间[0,1]上,两种插值哪个更精确? ①实验过程
(1)拉格朗日插值多项式,求解程序如下
syms x l;
x1=[0 1 4 9 16 25 36 49 64]; y1=[0 1 2 3 4 5 6 7 8]; n=length(x1); Ls=sym(0); for i=1:n l=sym(y1(i)); for k=1:i-1
l=l*(x-x1(k))/(x1(i)-x1(k)); end
for k=i+1:n
l=l*(x-x1(k))/(x1(i)-x1(k)); end Ls=Ls+l; end
Ls=simplify(Ls) %为所求插值多项式.
输出结果为
Ls =
-(x*(143*x^7 - 29260*x^6 + 2366546*x^5 - 97191380*x^4 + 2171047879*x^3 - 26340674360*x^2 + 166253376432*x - 577880352000))/435891456000
(2)三次样条插值,程序如下
x1=[0 1 4 9 16 25 36 49 64]; y1=[0 1 2 3 4 5 6 7 8]; x2=[0:1:64];
y3=spline(x1,y1,x2);
p=polyfit(x2,y3,3); %三条拟和函数
S=p(1)+p(2)*x+p(3)*x^2+p(4)*x^3 %得到S(x)
输出结果为: S =
(1998674665313721*x^3)/2251799813685248+(4552380473376719*x^2)/18014398509481984-(4798224608945675*x)/1152921504606846976+4576150135846985/147573952589676412928
(3)在区间[0,64]上,分别对这两种插值和标准函数作图,
plot(x2,sqrt(x2),'b',x2,y2,'r',x2,y3,'y')
蓝色曲线为y=函数曲线,红色曲线为拉格朗日插值函数曲线,黄色曲线为三次样条插值曲线
可以看到蓝色曲线与黄色曲线几乎重合,因此在区间[0,64]上三次样条插值更精确。 在[0,1]区间上由上图看不出差别,不妨代入几组数据进行比较 ,取x4=[0:0.2:1]
x4=[0:0.2:1];
sqrt(x4) %准确值 subs(Ls,'x',x4) %拉格朗日插值 spline(x1,y1,x4) %三次样条插值 运行结果为 ans =
0 0.4472 0.6325 0.7746 0.8944 1.0000 ans =
0 0.2504 0.4730 0.6706 0.8455 1.0000 ans =
0 0.2429 0.4630 0.6617 0.8403 1.0000 从这几组数值上可以看出在[0,1]区间上,拉格朗日插值更精确。 数据拟合和最佳平方逼近
正在阅读:
数值分析实验报告207-07
新加坡理工学院留学优势都是什么10-22
15438《电气控制与PLC应用(第四版)》习题解答05-25
中国石脑油市场简析06-18
请相信友情的力量作文700字07-15
污水处理水质检化验操作规程06-14
商务信函英语模板02-22
复习:数据库原理与应用复习提纲04-23
学校教育扶贫攻坚工作领导小组04-19
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 数值
- 实验
- 报告
- 分析
- HTML综合测试一(答案)
- 高中地理第三章区域产业活动测评湘教版必修2
- 涡阳高中生物第三章细胞的基本结构细胞膜系统的边界导学案新人教
- 高中历史第21课新中国的政治建设教案7岳麓版必修1 - 图文
- 曹冲称象 教学反思
- 华硕电脑BIOS设置的基础常识 - 图文
- PEP - 小学英语六年级下册第一单元导学案
- 小学六年级应用题归类复习材料
- 机电专业暑期实习报告
- 广西市政工程消耗量定额工程量计算规则
- 2018-2024年中国电子听诊器市场评估及未来发展趋势报告(目录)
- 人教版四年级数学上学期第一、二单元试卷分析
- 2018年中考物理真题汇编--电功率计算及答案
- TMS320C6678的EMIF16多核程序烧写的软件使用说明
- 我爱我班-一个学生感动我的故事
- 定积分的应用练习题
- 粉末涂料技术讲座 - 图文
- 国内外高速铁路发展
- (新课标卷)2016年高考化学冲刺卷01
- 高中生物第二册第6章遗传住处的传递和表达6.1遗传信息学案(1)沪