Aller au contenu

Mathc matrices/a146

Un livre de Wikilivres.


Quelques propriétés des valeurs propres.


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

c06b.c
/* ------------------------------------ */
/*  Save as :  c06b.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 p = rp_I(3)+1;

double **A           = ca_A_mR(a,         i_mR(RCA,RCA));
double **EigsValueA   =       eigs_mR(A,  i_mR(RCA,C1) );
double **A_p          =        pow_mR(p,A,i_mR(RCA,RCA));
double **EigsValueA_p =       eigs_mR(A_p,i_mR(RCA,C1) );

int    i = 0;

  clrscrn();

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

  printf(" A_%.0f :",p);
  p_mR(A_p,S11,P0,C6);
       
  printf(" EigsValueA_%.0f :",p);
  p_mR(EigsValueA_p,S15,P3,C1); 
  
  stop(); 
   
  clrscrn();
  
  printf(" EigsValue A_%.0f :",p);
  p_mR(EigsValueA_p,S15,P3,C1);    

  printf("  (EigsValues of A)**%.0f * :\n",p);    
  for(i=R1;i<=RCA;i++)
 
     printf(" %+15.3f  \n", pow(EigsValueA[i][C1],p)); 
     
  printf("\n\n\n");    
     
  stop();

  f_mR(A);
  f_mR(EigsValueA);
  f_mR(A_p);
  f_mR(EigsValueA_p);
  
  return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */


Les valeurs propres de A**P correspondent aux valeurs propres de A à la puissance P :


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

 EigsValue :
    +1628.836 
     +661.931 
     -256.767 

 A_3 :
+2685781976  +658552488 +1977709464 
 +658552488  +470783864  +532241040 
+1977709464  +532241040 +1438006544 

 EigsValueA_3 :
+4321473836.193 
 +290026993.296 
  -16928445.489 

 Press return to continue. 


 EigsValue A_3 :
+4321473836.193 
 +290026993.296 
  -16928445.489 

  (EigsValues of A)**3 * :
 +4321473836.193  
  +290026993.296  
   -16928445.489  



 Press return to continue.