北航硕士研究生数值分析大作业一.doc_第1页
北航硕士研究生数值分析大作业一.doc_第2页
北航硕士研究生数值分析大作业一.doc_第3页
北航硕士研究生数值分析大作业一.doc_第4页
北航硕士研究生数值分析大作业一.doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

数值分析 计算实习作业一学 院: 17系专 业: 精密仪器及机械 姓 名: 张大军学 号: D11-11数值分析计算实现第一题报告1、 算法方案算法方案如图1所示。(此算法设计实现完全由本人独立完成)图1算法方案流程图2、 全部源程序全部源程序如下所示#include #include #include int main()double a501;double vv5501;double d=0;double r3;double uu;int i,k;double mifayunsuan(double *a,double weiyi);double fanmifayunsuan(double *a,double weiyi);void yasuo(double *A,double (*C)501);void LUfenjie(double (*C)501);/赋值语句for(i=1;ir1)d=r0;r0=r1;r1=d;/程序三:使用反幂法求r2=fanmifayunsuan(a,0);coutsetiosflags(ios:right);cout1=setiosflags(ios:scientific)setprecision(12)r0endl;cout501=setiosflags(ios:scientific)setprecision(12)r1endl;couts=setiosflags(ios:scientific)setprecision(12)r2endl;/程序四:求A的与数u最接近的特征值for(k=1;k40;k+)uu=r0+k*(r1-r0)/40;cout最接近uk的特征值为setiosflags(ios:scientific)setprecision(12)fanmifayunsuan(a,uu)endl;/程序五:谱范数的条件数是绝对值最大的特征值除以绝对值最小的特征值的绝对值coutcond(A)2=fabs(r0/r2)endl;/程序六:A的行列式的值就是A分解成LU之U的对角线的乘积 yasuo(a,vv);LUfenjie(vv);uu=1;for(i=0;i501;i+)uu=uu*vv2i;coutDet(A)=uuendl;return 1;double mifayunsuan(double *a,double weiyi)int i,k;double b=0.16;double c=-0.064;double ee,w,v1,v2,mm,sum;double u501;double y505=0;for(i=0;i501;i+)ui=1;/给u赋初值if (weiyi!=0) for (i=0;i1e-12)mm=0;for(i=0;i501;i+)mm=mm+ui*ui;w=sqrt(mm);for(i=0;i501;i+)yi+2=ui/w;/注意此处编程与书上不同,之后会解释它的巧妙之处1for(i=0;i501;i+)ui=c*yi+b*yi+1+ai*yi+2+b*yi+3+c*yi+4;/1显然巧妙之处凸显出来sum=0;for(i=0;i501;i+)sum+=yi+2*ui;v1=v2;v2=sum;/去除特殊情况,减少漏洞if(k=0)k+;elseee=fabs(v2-v1)/fabs(v2);if (weiyi!=0) for (i=0;i501;i+)ai+=weiyi;/还原A矩阵return (v2+weiyi);double fanmifayunsuan(double *a,double weiyi)int i,k;double b=0.16;double c=-0.064;double ee,w,v1,v2,mm,sum;double u501;double y501;double C5501;void yasuo(double *A,double (*C)501);void LUfenjie(double (*C)501);void qiuU(double (*C)501,double *y,double *u);/把A阵压缩到C阵中for(i=0;i501;i+)ui=1;/给u赋初值if (weiyi!=0) for (i=0;i1e-12)mm=0;for(i=0;i501;i+)mm=mm+ui*ui;w=sqrt(mm);for(i=0;i501;i+)yi=ui/w;qiuU(C,y,u);sum=0;for(i=0;i501;i+)sum+=yi*ui;v1=v2;v2=sum;/去除特殊情况,减少漏洞if(k=0)k+;elseee=fabs(1/v2-1/v1)/fabs(1/v2);if (weiyi!=0) for (i=0;i501;i+)ai+=weiyi;/还原A矩阵return (1/v2+weiyi);void yasuo(double *A,double (*C)501)double b=0.16;double c=-0.064;int i;for(i=0;i501;i+)C0i=c;C1i=b;C2i=Ai;C3i=b;C4i=c;void LUfenjie(double (*C)501)int k,t,j;int r=2,s=2;double sum;int minn(int ,int );int maxx(int ,int );for(k=0;k501;k+)for(j=k;j=minn(k+s,501-1);j+)if(k=0)sum=0;else sum=0;for(t=maxx(k-r,j-s);tk;t+)sum=sum+Ck-t+st*Ct-j+sj;Ck-j+sj=Ck-j+sj-sum;for(j=k+1;j=minn(k+r,501-1);j+)if(k501-1)if(k=0)sum=0; else sum=0; for(t=maxx(j-r,k-s);tk;t+) sum=sum+Cj-t+st*Ct-k+sk; Cj-k+sk=(Cj-k+sk-sum)/Csk;void qiuU(double (*C)501,double *y,double *u)int i,t;double b501;double sum;int r=2,s=2;int minn(int ,int );int maxx(int ,int );for(i=0;i501;i+)bi=yi;for(i=1;i501;i+)sum=0; for(t=maxx(0,i-r);t=0;i-)sum=0;for(t=i+1;ty)min=y;elsemin=x;return min;int maxx(int b,int c)int max;if(bc)if(b0)max=b;elsemax=0;elseif(c0)max=c;elsemax=0;return max;三、特征值以及的值1=-1.070011361502e+001 501=9.724634098777e+000 s=-5.557910794230e-003最接近u1的特征值为-1.018293403315e+001最接近u2的特征值为-9.585707425068e+000最接近u3的特征值为-9.172672423928e+000最接近u4的特征值为-8.652284007898e+000最接近u5的特征值为-8.093483808675e+000最接近u6的特征值为-7.659405407692e+000最接近u7的特征值为-7.119684648691e+000最接近u8的特征值为-6.611764339397e+000最接近u9的特征值为-6.066103226595e+000最接近u10的特征值为-5.585101052628e+000最接近u11的特征值为-5.114083529812e+000最接近u12的特征值为-4.578872176865e+000最接近u13的特征值为-4.096470926260e+000最接近u14的特征值为-3.554211215751e+000最接近u15的特征值为-3.041090018133e+000最接近u16的特征值为-2.533970311130e+000最接近u17的特征值为-2.003230769563e+000最接近u18的特征值为-1.503557611227e+000最接近u19的特征值为-9.935586060075e-001最接近u20的特征值为-4.870426738850e-001最接近u21的特征值为2.231736249575e-002最接近u22的特征值为5.324174742069e-001最接近u23的特征值为1.052898962693e+000最接近u24的特征值为1.589445881881e+000最接近u25的特征值为2.060330460274e+000最接近u26的特征值为2.558075597073e+000最接近u27的特征值为3.080240509307e+000最接近u28的特征值为3.613620867692e+000最接近u29的特征值为4.091378510451e+000最接近u30的特征值为4.603035378279e+000最接近u31的特征值为5.132924283898e+000最接近u32的特征值为5.594906348083e+000最接近u33的特征值为6.080933857027e+000最接近u34的特征值为6.680354092112e+000最接近u35的特征值为7.293877448127e+000最接近u36的特征值为7.717111714236e+000最接近u37的特征值为8.225220014050e+000最接近u38的特征值为8.648666065193e+000最接近u39的特征值为9.254200344575e+000cond(A)2=1.925204273902e+003 Det(A)=2.

温馨提示

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

最新文档

评论

0/150

提交评论