计算方法:插值_第1页
计算方法:插值_第2页
计算方法:插值_第3页
计算方法:插值_第4页
计算方法:插值_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算方法:函数插值

什么叫插值?温度oC饱和蒸汽压kN/m2

焓kJ/kg00.60820101.226242.04202.334683.90304.2474125.69407.3766167.515012.34209.306019.923251.127031.164292.99如何查水在27oC、32.7oC的饱和蒸汽压和焓?水的物理性质函数关系:函数值和自变量的关系以表格给出,称列表函数列表函数的特点:①自变量与函数值一一对应;②函数值有很可靠的精确度;③自变量与函数间的解析表达式可能不清楚,或者解析表达式非常复杂不便于计算(如为无穷级数等);④没有直接给出未列出点的函数值,不便于进行微分和积分以及计算机计算。1目的:运用计算机方便地求解函数值和进行微积分等计算思路:寻找列表函数的近似解析表达式(不知道f(x)的函数表达形式)

代数插值问题描述(怎样进行插值)列表函数例在区间上连续设函数已知函数f(x)

在各点(x0,

x1…)上的值方法:建立一个次数不超过n的代数多项式P(x)来近似f(x)温度x饱和蒸汽压f(x)x0=00.6087x1=101.2262x2=202.3346x3=304.2474x4=407.3766x5=5012.34x6=6019.923x7=7031.1642用代数多项式P(x)近似列表函数y插值法插值方式:全节点插值——用全部节点构造插值多项式(通过全部节点)分段插值——只用部分节点构造插值多项式(只通过部分节点)本节讨论一元n次拉格朗日插值(n+1个点)线性插值(2个节点)抛物线插值(3个节点)条件:满足Pn(xi)=yi(i=0,1,…n)Pn(x)称为函数f(x)的插值多项式点x0,x1,…xn叫做插值节点[a,b]为插值区间。温度x饱和蒸汽压f(x)x0=0y0=0.6087x1=10y1=1.2262x2=20y2=2.3346x3=30y3=4.2474x4=40y4=7.3766x5=50y5=12.34x6=60y6=19.923x7=70y7=31.1643拉格朗日(Lagrange)插值由已知的两点,可写出直线方程以直线方程作为插值多项式,即下式中的n=1构造线性函数L1(x),使函数通过已知的两点,即满足线性插值——用直线方程L1(x)近似列表函数式f(x)需要构造一个直线方程(线性插值多项式)温度x饱和蒸汽压f(x)x0=0y0=0.6082x1=10y1=1.2262x2=20y2=2.3346x3=30y3=4.2474x4=40y4=7.3766x5=50y5=12.34x6=60y6=19.923x7=70y7=31.1644由两点式可看出,L1(x)是由两个线性函数两点式点斜式的线性组合得到的,线性插值多项式可写为线性组合系数线性组合系数也是线性插值多项式满足直线方程的两种构成形式,通过点(xk,yk)和(xk+1,yk+1)

满足以上条件的lk(x)和lk+1(x)称为线性基本插值多项式或线性插值基函数,插值多项式可用插值基函数的线性组合构成。5线性插值图示

几何意义:用给定两点的直线y=L1(x)近似替代f(x)。xf(x)xkf(xk+1)f(xk)xk+1yL1(x)温度x饱和蒸汽压f(x)x0=0y0=0.6082x1=10y1=1.2262x2=20y2=2.3346x3=30y3=4.2474x4=40y4=7.3766x5=50y5=12.34x6=60y6=19.923x7=70y7=31.1646

二次插值(三点插值或抛物线插值)f(xk+2)xk-1xkxf(xk)f(xk-1)yL1(x)二次插值是用已知的3个插值节点,构造一个二次函数L2(x)并使函数通过三个插值节点构造方法:用插值基函数进行线性组合。但此时因是三个插值节点,插值基函数应该是二次函数。插值基函数在节点处应满足条件:xk+17二次插值(三点插值或抛物线插值)如何求满足条件的二次插值基函数,分析一次插值基函数必定含有因子由类推可得二次插值基函数要满足条件8利用三个二次插值基函数可组合成二次插值多项式二次插值又称为三点插值或抛物线插值二次插值几何意义:用通过给定三点的抛物线y=L2(x)近似替代函数y=f(x)。近似程度通常比线性插值更高。xk-1xkf(xk+2)xf(xk)f(xk-1)yL2(x)f(x)9n次插值线性插值和插值基函数为插值基函数满足lk(xk)

=1,lk(xk+1)

=0lk+1(xk)

=0,lk(xk+1)

=1抛物线插值和插值基函数为10所以此时的插值基函数应该满足用类似的推导方法,可求得n次插值基函数为利用

n+1个插值节点,构造一个n次插值多项式使通过所有n+1个插值节点,即满足(j=0,1,…,n)

将插值基函数组合可得拉格朗日n次插值多项式拉格朗日插值公式11插值公式通过n+1个插值节点,是唯一确定的如果节点数有n+1个,称为全节点插值拉格朗日n次插值的几何意义是否通过的点越多,插值次数越高越好?12用11点构造10次多项式插值的龙格现象某些点插值结果误差很大,函数两端震荡加剧在节点很多的场合,通常不宜采用高次插值分段的低阶插值往往效果更好13例:

已知函数表x0·10·20·30·4

f(x)0·09980·19870·29550·3894

分别用线性插值、2次插值和3次插值求f(x)在x=0.25处的值。解:(1)分段线性插值选取最接近插值点0.25的两个插值节点,求f(x)在x=0.25处的值。由于简单,可以直接计算。选取的两个插值节点如下采用由线性插值多项式构成的近似多项式代入插值节点数据14C语言:插值计算水的物性#include<stdio.h>#include<stdlib.h>#include<math.h>#ifndeflagi3#definelagi3#include"lagi3.cpp"#endiffloatwater(floattm1,inta){ staticfloatt[11],mr[6][11]; staticintn=0; floaty; FILE*in; intitm,i; if(n==0){ n=11;if((in=fopen("water.txt","r"))==NULL){printf("Cannotopeninputfile.\n");exit(0);}fscanf(in,"%d",&itm);

do{

while((i=fgetc(in))!=10);/*printf("%c",i);printf("\n");/**/ itm--;}while(itm>0);

for(i=0;i<n;++i){

fscanf(in,"%f",&t[i]);

fscanf(in,"%f",&mr[0][i]);

fscanf(in,"%f",&mr[1][i]);mr[1][i]/=1e3;

fscanf(in,"%f",&mr[2][i]);mr[2][i]/=1e3;

fscanf(in,"%f",&mr[3][i]);

fscanf(in,"%f",&mr[4][i]);

fscanf(in,"%f",&mr[5][i]);mr[5][i]/=1e3;}fclose(in);}#ifndeftiaoshipfor(i=0;i<n;++i){printf("%d%f%f%f\n",i,t[i],mr[0][i],mr[1][i]);}printf("\n");#endif

y=lagi3y(n,t,&mr[a][0],tm1);returny;}#ifndeftiaoshimvoidmain(){floattm1,rho,mu;tm1=15.2;rho=water(tm1,0);mu=water(tm1,2);tm1=25.2;mu=water(tm1,2);rho=water(tm1,0);return;}#endif15lagi3.cpp#include"stdio.h"floatlagi3y(intn,float

a[],float

b[],floatx){ staticinti=0; staticfloatxold=-999.;

intflag,i0,ie; floaty,x1,x2,x3,z1,z2,z3;

if(xold!=x){i0=0;ie=n-3;i=(i0+ie)/2; if(a[i0]<a[ie])flag=1; elseflag=-1;

while(i!=ie){if(x*flag>(a[i+1]+a[i+2])/2*flag)i0=i+1;elseie=i;i=(i0+ie)/2;}//printf("%f%f\n",a[i],x);xold=x;}

x1=a[i];x2=a[i+1];x3=a[i+2];//printf("%f%f%f\n",x1,x2,x3);

z1=(x-x2)/(x1-x2)*(x-x3)/(x1-x3);z2=(x-x1)/(x2-x1)*(x-x3)/(x2-x3);z3=(x-x2)/(x3-x2)*(x-x1)/(x3-x1);

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论