1、1上机实践时间:一、目的1通过本实验加深对Jacobi法的构造过程的理解;2能对Jacobi法提出正确的算法描述编程实现,得到计算结果。二、内容与设计思想自选方阵,用Jacobi法求其全部特征值及其特征向量。可使用实例:三、使用环境操作系统:Windows XP软件环境:Microsoft Visual C+四、核心代码及调试过程#include math.hvoid main()float a1010,t1010,s1010,s11010,Q1010,q11010,lam10;float a1,c,s2,t1,amax,eps=0.001,d=0,r=1;int i,j,n,p,q,m,N=
2、100,k=1;printf(矩阵a的维数为:nn=);scanf(%d,&n);n输入矩阵a:nfor(i=1;in+1;i+)j=1;while(jn+1)a%d%d=,i,j);%faij);j+;for(j=1;j=eps&kamax)amax=fabs(aij);/找非对角元素绝对值最大的元p=i;q=j;r=amax;/重置当前误差a1=(aqq-app)/(2*apq);if(a1=0)t1=1/(fabs(a1)+sqrt(1+a1*a1);t1=-1/(fabs(a1)+sqrt(1+a1*a1);c=1/sqrt(1+t1*t1);s2=t1*c;sij=1;sij=0;s
3、pp=c;spq=s2;sqp=-s2;sqq=c;s1ij=sji;/将矩阵s1ij化为sij的转置for(m=1;mN)不收敛!lami=aii;矩阵a的特征值为:,lami);n相应的特征向量为:,Qij);运算结果:矩阵的特征值为: 1=0.5601 2=-1.3077 3=17.7475矩阵的特征向量为:V1=0.8938 -0.4223 0.1505TV2=0.3978 0.5921 -0.7007TV3=0.2068 0.6862 0.6973T五、总结本次试验利用C语言实现了用Jacobi法求矩阵全部特征值及其特征向量, 通过本实验加深了对Jacobi法的构造过程的理解,对c语言在计算方法中的应用有了进一步的掌握。六、附录参考:数值计算方法与算法(第二版)