计算物理学 全套课件(下).pptx

  1. 1、本文档共924页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
西安电子科技大学出版社 ;第1章 FORTRAN语言简介与误差分析初步 第2章 物理图形和图像的计算机模拟 第3章 物理学中定积分的数值计算方法 第4章 物理学中常微分方程初值问题的数值解法 第5章 物理学中线性方程组的数值解法 第6章 物理学中的非线性方程求根 第7章 实验物理学中的插值和数据拟合 第8章 有限差分方法 第9章 泛函与变分法 第10章 有限元方法 第11章 泊松方程的边界元方法 第12章 蒙特卡罗方法 第13章 定态薛定谔方程的数值解 ;7.1 实验数据的拉格朗日插值法 7.2 差商与牛顿插值公式 7.3 Hermite插值 7.4 三次样条插值 7.5 数值微分 7.6 最小二乘曲线拟合法 习题七 ;  描述客观现象的函数y=f(x)通常是很复杂的。若有一组实验观测结果如表7.1所示。 ;表 7.1 一组实验观测数据;   如果已知x=u,试求函数值yu。设u处于xi和xi+1之间,即xi<u<xi+1,利用线性插值有                      (7.1) 采用线性插值,精度不高,常采用拉格朗日插值公式                        (7.2);  其中n是插值时所利用的点数。上式中记号       如进行四点插值(三次拉格朗日插值多项式),则有                         (7.3);  通常采用三点(二次拉格朗日抛物线)插值。设有n个采样点。首先判断被插值点的横坐标u值在xi序列中的位置。具体步骤为:    (1) 若x1<u<x2<x3,则由对应于横坐标为x1、x2、x3的三个点确定yu。   (2) 若xn-2<xn-1<u<xn,同样由对应于横坐标为xn-2、xn-1、xn的三个点确定yu。;  (3) 若xi-1<u<xi(i=3,4,…,n-1),则    ① 若u靠近xi,则取对应于横坐标为xi-1、xi、xi+1的三个点确定yu;    ② 若u靠近xi-1,则取对应于横坐标为xi-2、xi-1、xi的三个点确定yu。   在确定了u靠近的三个点xi-1、xi、xi+1之后,可以用以下三点拉格朗日公式求yu。;                      (7.4);   三点插值程序设计思想是按u在xi序列中的位置情况进行的,即   (1) u<x2时,取i=2;   (2) u>xn-1时,取i=n-1;   (3) u靠近xi-1时,i=i-1; u靠近xi时,i不变。   下面以y=sinx为例给出三点拉格朗日插值计算程序。;  【例7.1】 将x∈[0,2π]区间n等分,试用三点拉格朗日插值公式编程给出x=1.4时y=sinx的值并与y=sin (1.4)作比较。   计算程序: dimension x(1000),y(1000) write(*,*)′input u,n=?′ read(*,*)u,n pi=3.1415926 do 5 i=1,n x(i)=float(i)*2.*pi/n;   5 y(i)=sin(x(i)) do 10 i=2,n-1 10 if(u.le.x(i)) goto 15    i=n-1 goto 70 15 if(i.eq.2) goto 70 if((u-x(i-1)).lt.(x(i)-u)) i=i-1;70 x1=x(i-1) x2=x(i) x3=x(i+1) a1=(u-x2)*(u-x3)/((x1-x2)*(x1-x3)) a2=(u-x1)*(u-x3)/((x2-x1)*(x2-x3)) a3=(u-x1)*(u-x2)/((x3-x1)*(x3-x2)) yu=a1*y(i-1)+a2*y(i)+a3*y(i+1) yuu=sin(u) write(*,*)u,yuu,yu end ;  程序中yuu为精确解,而yu为插值结果。若取n=100,x=1.4,计算结果为yuu=0.985 449 7 (精确值),yu=0.985 447 7 (插值结果)。   【例7.2】 给定f(x)=  的函数表如表7.2所示。;表

文档评论(0)

别样风华 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档