Quelques propriétés des valeurs propres.


Installer et compiler ces fichiers dans votre répertoire de travail.

c04b.c
/* ------------------------------------ */
/*  Save as :  c04b.c                   */
/* ------------------------------------ */
#include "v_a.h"
/* ------------------------------------ */
#define   RCA R3
/* ------------------------------------ */
int main(void)
{
double a[RCA*RCA]={
+966,+98,+864,
+98,+692,+214,
+864,+214,+376
};

double s = rp_I(9);

double **A           = ca_A_mR(a,  i_mR(RCA,RCA));
double **EigsValueA  = eigs_mR(A,  i_mR(RCA,C1));

double **sA          = smul_mR(s,A,i_mR(RCA,RCA));
double **EigsValuesA = eigs_mR(sA, i_mR(RCA,C1));

int i = 0;

  clrscrn();

  printf(" A :");
  p_mR(A,S3,P0,C6);
       
  printf(" EigsValue A :");
  p_mR(EigsValueA,S13,P6,C1);   

  stop(); 
  
  clrscrn();
  
  printf(" %.0f * A :",s);
  p_mR(sA,S4,P0,C6);
         
  printf(" EigsValue %.0f * A :",s);
  p_mR(EigsValuesA,S13,P6,C1);
  
  stop(); 
  
  clrscrn();
    
    printf(" EigsValue %.0f * A :",s);
  p_mR(EigsValuesA,S13,P6,C1);    

  printf(" %.2f * EigsValues of A :\n",s);    
  for(i=R1;i<=RCA;i++)
        
     printf(" %+12.6f  \n", s*EigsValueA[i][C1]); 
     
  printf("\n\n\n");
  
  stop();
    
  f_mR(A);
  f_mR(EigsValueA);

  f_mR(sA);
  f_mR(EigsValuesA);
  
  return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */


Les valeurs propres de sA correspondent aux valeurs propres de A multiplié par s :


Exemple de sortie écran :
 A :
+966 +98 +864 
+98 +692 +214 
+864 +214 +376 

 EigsValue A :
 +1628.835762 
  +661.931131 
  -256.766893 

 Press return to continue. 


 2 * A :
+1932 +196 +1728 
+196 +1384 +428 
+1728 +428 +752 

 EigsValue 2 * A :
 +3257.671524 
 +1323.862262 
  -513.533787 

 Press return to continue. 


 EigsValue 2 * A :
 +3257.671524 
 +1323.862262 
  -513.533787 

 2.00 * EigsValues of A :
 +3257.671524  
 +1323.862262  
  -513.533787  



 Press return to continue.