常微分方程的函数逼近与曲线拟合实验.docVIP

常微分方程的函数逼近与曲线拟合实验.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文档。上传文档
查看更多
常微分方程的函数逼近与曲线拟合实验

实验二 函数逼近与曲线拟合 【】 在某冶炼过程中,根据统计数据的含碳量与时间关系,试求含碳量与时间的拟合曲线。 (分) 0 5 10 15 20 25 30 35 40 45 50 55 0 1.27 2.16 2.86 3.44 3.87 4.15 4.37 4.51 4.58 4.02 4.64 【】1、用最小二乘法进行曲线拟合; 2、近似解析表达式为; 3、打印出拟合函数,并打印出与的误差,; 4、另外选取一个近似表达式,尝试拟合效果的比较; 5、* 绘制出曲线拟合图。 #include stdio.h #include conio.h #include stdlib.h #include math.h #define N 12//N个节点 #define M 2//M次拟合 #define K 2*M void zhuyuan (int k,int n,float a[M+1][M+2]) {int t,i,j; float x,y; x=fabs(a[k][k]);t=k; for (i=k+1;i=n;i++) if (fabs(a[i][k])x) {x=fabs(a[i][k]);t=i;} for (j=k;j=n+1;j++) {y=a[k][j];a[k][j]=a[t][j];a[t][j]=y;} } void xiaoyuan(int n,float a[M+1][M+2]) {int k,i,j; for(i=0;in;i++) {zhuyuan(i,n,a); for (j=i+1;j=n;j++) for (k=i+1;k=n+1;k++) a[j][k]=a[j][k]-a[j][i]*a[i][k]/a[i][i]; } } void huidai(int n,float a[M+1][M+2],float x[M+1]) {int i,j; x[n]=a[n][n+1]/a[n][n]; for (i=n-1;i=0;i--) { x[i]=a[i][n+1]; for (j=i+1;j=n;j++) x[i]=x[i]-a[i][j]*x[j]; x[i]=x[i]/a[i][i]; } } void main() {float x_y[N][2],A[N][K+1],B[N][M+1],AA[K+1],BB[M+1],a[M+1][M+2],m[M+1]; int i,j,n; printf(请输入%d个已知点:\n,N); for(i=0;iN;i++) { printf((x%d y%d):,i,i); scanf(%f %f,x_y[i][0],x_y[i][1]); } for(i=0;iN;i++) { A[i][0]=1; for(j=1;j=K;j++) A[i][j]=A[i][j-1]*x_y[i][0]; for(j=0;j=M;j++) B[i][j]=A[i][j]*x_y[i][1]; } for(j=0;j=K;j++) for(AA[j]=0,i=0;iN;i++) AA[j]+=A[i][j]; for(j=0;j=M;j++) for(BB[j]=0,i=0;iN;i++) BB[j]+=B[i][j]; for(i=0;iM+1;i++) {a[i][M+1]=BB[i]; for(j=0;j=M;j++) a[i][j]=AA[i+j];} n=M; printf(正规系数矩阵为:\n); for(i=0;i=n;i++) {for(j=0;j=n+1;j++) printf(%f ,a[i][j]); printf(\n);} xiaoyuan(n,a); huidai(n,a,m); printf(拟合曲线方程为:\ny(x)=%g,m[0]); for(i=1;i=n;i++) { printf( + %g,m[i]); for(j=0;ji;j++) { printf(*X); } } } p3=polyfit(x,y,3); y3=polyval(p3,x); e3=norm(y-y3); t=0:5:60; pt3=polyval(p3,t); plot(t,pt3); plot(t,pt3); title(3次拟合函数)

文档评论(0)

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

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

1亿VIP精品文档

相关文档