数值分析小牛.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数值分析小牛.doc

实验成绩: 理论描述(10) 数值公式(10) 程序流程图和程序结构(20) 数据和结果(20) 讨论(20) 源程序(20) 总分(100) 实验内容: 1.题目/要求: 函数插值方法 一、问题提出 对于给定的一元函数 的n+1个节点值 。试用Lagrange公式求其插值多项式或分段二次Lagrange插值多项式。 数据如下: (1) 0.4 0.55 0.65 0.80 0.95 1.05 0.41075 0.57815 0.69675 0.90 1.00 1.25382 求五次Lagrange多项式L,和分段三次插值多项式,计算 的值。 (2) 1 2 3 4 5 6 7 0.368 0.135 0.050 0.018 0.007 0.002 0.001 试构造Lagrange多项式L,计算的值。 结果0.165299 0 二、要求 利用Lagrange插值公式 编写出插值多项式程序; 给出插值多项式或分段三次插值多项式的表达式; 根据节点选取原则,对问题(2)用三点插值或二点插值,其结果如何; 对此插值问题用Newton插值多项式其结果如何。 2.作业环境(包括选用的程序语言、运行环境) 本题中的插值多项式程序采用的编程语言为c++,因此运行环境可以在装有Microsoft VC++的windows XP 或2000的系统下运行程序。 3.数学(理论背景)描述 在生产实践和科学研究所遇到的大量函数中,相当一部分是通过测量或实验得到的。虽然其函数关系y=f(x)在某个区间[a,b]上是客观存在的,但是却不知道具体的解析表达式,只能通过观察、测量或实验得到函数在区间[a,b]上一些离散点上的函数值、导数值等, 因此,希望对这样的函数用一个比较简单的函数表达式来近似地给出整体上的描述。还有些函数,虽然有明确的解析表达式,但却过于复杂而不便于进行理论分析和数值计算,同样希望构造一个既能反映函数的特性又便于计算的简单函数,近似代替原来的函数。插值法就是寻求近似函数的方法之一。 在用插值法寻求近似函数的过程中,根据所讨论问题的特点,对简单函数的类型可有不同的 选取,如多项式、有理式、三角函数等,其中多项式结构简单,并有良好的性质,便于数值计算和理论分析,因此被广泛采用。 设函数y=f(x)在区间[a,b]上有定义且已知函数在区间[a,b]上n+1个互异点上的函数值,若存在一个简单函数y=p(x ),使其经过y=f(x)上的这n+1个已知点(),(),…,(),即 p()= , i=0,1,…,n 那么,函数p(x)称为插值函数,点称为插节点, 点(),(),…,()称为插值点,包含插值节点的区间[a,b]称为插值区间,求p (x)的方法称为插值法,f(x)称为被插函数。若p(x)是次数不超过n的多项式,用Pn(x)表示,即  则称为n次插值多项式,相应的插值法称为多项式插值;若P(x)为分段多项式,称为分段插值,多项式插值和分段插值称为代数插值。 4.数值计算公式 1.Lagrange插值公式: 2.分段三次插值公式 其中;如下: 5.算法程序流程与程序结构(程序中的函数调用关系) 参数说明: X[] 双精度实型一维数组,长度为n。存放n个不等距结点的值(从小到大)。 Y[] 双精度实型一维数组,长度为n。存放n个不等距结点上的函数值。 n 整型变量。给定不等距结点的个数。 t 双精度实型变量。指定插值点的值。 k 整型变量。插值时启始结点的位置。 m 整型变量。插值时最后结点的位置。 i,j 整型变量。数组下标。 s 双精度实型变量,存放运算过程中间值。 z 双精度实型变量,初始值为0.0。存放最终插值。 h 双精度实型变量,给定n个结点的步长。 算法描述: 全区不等值插值算法 输入数据,判断n值。 如果1返回z;如果=1则返回y[0]; 如果=2则进行两点线性插值 {z=(y[1]*(t-x[0])-y[0]*(t-x[0]-h))/h Return(z)}; 若n=3,则进行全区间插值 For (i=0;in;i++) { s=1.0 For (j=0;jn;j++) If (j!=i) s=s*(t-x[j])/(x[i]-x[j]); z=z+s*y[i]; } 最后返回z值。 全区间等值插值算法 输入数据,判断n值。 如果1返回z;如果=1则返回y[0]; 如果=2则进行两点线性插值 {z=

文档评论(0)

docindoc + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档