[2018年最新整理]三次样条插值报告(三转角).docVIP

[2018年最新整理]三次样条插值报告(三转角).doc

  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文档。上传文档
查看更多
[2018年最新整理]三次样条插值报告(三转角)

数值逼近实习报告 题目: 三次样条插值II 班级: 计算111班 学号: 3110811009 姓名: 刘艳平 指导老师: 秦新强 2013-3 题目:三次样条插值(三转角算法) 姓名:刘艳平 学号:3110811009 目的意义 以上我们讨论的分段线性插值,逼近程度虽然好,但光滑性差,分段三次Hermite插值,逼近程度好,光滑性也有所提高,但也增加了更多的条件,不太实用。 接下来我们研究的三次样条插值多项式,这就结合二者的优点,即逼近程度虽然好,光滑性强,不需要增加太多的条件,很实用。当已知区间两个端点的导数值时,既满足边界条件1,用三弯矩算法来求解,相对简单,且很准确。 二、数学公式 具体: 其中: 需要求出: 计算流程 Step 1:输入节点,函数值,边界条件及x. Step 2:计算 Step 3:根据边界条件,求解相应的方程得到. Step 4:判断x属于,i=1,2,...,n中的那一个. Step 5:计算. Step 6:输出y. 四、代码 #include iostream.h //三次样条三转角边界条件1 #include process.h #define N 2 #define M 4 double a[N],d[N],c[N],p[N],q[N],b[N],xx[N]; void p_q() { int k; if(d[0]==0) { coutMethod failedendl; exit(0); } p[0]=d[0]; q[0]=c[0]/p[0]; for(k=1;kN-1;k++) { p[k]=d[k]-a[k]*q[k-1]; if(p[k]==0) { coutMethod failedendl; exit(0); } q[k]=c[k]/p[k]; } p[N-1]=d[N-1]-a[N-1]*q[N-2]; if(p[N-1]==0) { coutMethod failedendl; exit(0); } } void jisuan() { int k; double y[N]; y[0]=b[0]/p[0]; for(k=1;k=N-1;k++) y[k]=(b[k]-a[k]*y[k-1])/p[k]; xx[N-1]=y[N-1]; for(k=N-2;k=0;k--) xx[k]=y[k]-q[k]*xx[k+1]; for(k=0;kN;k++) coutm的值为:xx[k]\tendl; } void main() { double X[M],Y[M],h[M],v[M],u[M],m[M],g[M],mm[M]; int i; double x,y1,y2,w1,w2,w3,w4,w,hh; cout输入已知点的X坐标:endl; for(i=0;iM;i++) cinX[i]; cout输入已知点的Y坐标:endl; for(i=0;iM;i++) cinY[i]; cout输入边界条件:endl; ciny1y2; cout输入需要计算的x值:endl; cinx; for(i=1;iM;i++) { h[i]=X[i]-X[i-1]; } for(i=1;iM-1;i++) { v[i]=h[i+1]/(h[i]+h[i+1]); u[i]=h[i]/(h[i]+h[i+1]); g[i]=3*((v[i]*(Y[i+1]-Y[i])/(X[i+1]-X[i]))+(u[i]*(Y[i]-Y[i-1])/(X[i]-X[i-1]))); } a[0]=0; b[0]=g[1]-v[1]*y1; for(i=1;iN;i++) a[i]=v[i+1]; for(i=0;iN;i++) d[i]=2; for(i=0;iN;i++) c[i]=u[i+1]; for(i=1;iN;i++) b[i]=g[i+1]; p_q(); jisuan(); mm[0]=y1; mm[1]=xx[0]; mm[2]=xx[1]; mm[3]=y2; for(i=1;iM;i++) {hh=X[i]-X[i-1]; if(x=X[i-1]) { w1=((hh+(x-X[i-1])*2)*(x-X[i])*(x-X[i])*Y[i-1])/(hh*hh*hh); w2=(

文档评论(0)

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

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

1亿VIP精品文档

相关文档