来自「乘幂法求矩阵最大特征值函数形参分别为所求矩阵及矩阵的行列数」· 代码 · 共 41 行

TXT
41
字号
乘幂法求矩阵最大特征值,函数形参a,m分别为所求矩阵及矩阵的行列数
若有不妥之处请于shihong_yuan@163.com联系。
#include <stdlib.h> 
#include <iostream.h>
#define W 0.000001
float maxeigenvalue(float **a,int m)
{
   static float x[9]={1,1,1,1,1,1,1,1,1},y[9];
   int i,j,p,k=1;
   static float temp=0,t,t0;
   t=0;t0=10;
   while( (fabs(t-t0)>W&k<=5))
   {
      for(i=0;i<m;i++)
      {
         temp=0;
         for(j=0;j<m;j++)
         {
            temp+=a[i][j]*x[j];
         }
         y[i]=temp;
      }
      t0=t;
      t=fabs(y[0]);
      for(i=0;i<m;i++)
      {
         if( t <=fabs(y[i]) )  
         {
            p=i ;
            t=fabs(y[i]);
         }
      }
      for(i=0;i<m;i++)
      {
         x[i]=y[i]/y[p];
      }
      k++;
   }
   return t;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?