Aller au contenu

Mathc matrices/04q

Un livre de Wikilivres.


Application

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

c00a.c
/* ------------------------------------ */
/*  Save as :   c00a.c                  */
/* ------------------------------------ */
#include "v_a.h"
/* ------------------------------------ */     
#define RCA          RC2  
/* ------------------------------------ */       
/* ------------------------------------ */
int main(void)
{                          
double a[RCA*RCA] ={   
+0.390243902439, +0.487804878049, 
+0.487804878049, +0.609756097561      
};
                       
double **A      =   ca_A_mR(a, i_mR(RCA,RCA));
double **V      = eigs_V_mR(A, i_mR(RCA,RCA));
double **invV   =  invgj_mR(V, i_mR(RCA,RCA));
double **EValue =              i_mR(RCA,RCA);

double **T      =              i_mR(RCA,RCA);

  clrscrn(); 
  printf(" A :");
  p_mR(A, S8,P6, C3);     

  printf(" V :");
  p_mR(V, S9,P6, C4); 
 
  printf(" EValue = invV * A * V");
  mul_mR(invV,A,T);
  mul_mR(T,V,EValue);
  p_mR(EValue, S9,P6, C4);  
          
  printf(" A = V * EValue * invV");
  mul_mR(V,EValue,T);
  mul_mR(T,invV,A); 
  p_mR(A, S8,P6, C3);
  stop();
  
  clrscrn();          
  printf(" The matrix A projects the plane in the direction\n"
         " of the  eigenvector V2  on a line  determined by\n"
         " the eigenvector V1 if :\n\n"
         " The eigenvector V1 has its eigenvalue equal to  one and\n"
         " The eigenvector V2 has its eigenvalue equal to zero and\n\n"
         " If The vectors V1 and V2 are linearly independent\n\n"
         " det(V) = %.2f\n\n",det_R(V));          
  stop();  
              
  f_mR(A);
  f_mR(V);  
  f_mR(invV);  
  f_mR(T);  
  f_mR(EValue);
  
  return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */


Projection du plan sur une droite.

Exemple de sortie écran :

 A :
+0.390244 +0.487805 
+0.487805 +0.609756 

 V :
+0.624695 +0.780869 
+0.780869 -0.624695 

 EValue = invV * A * V
+1.000000 +0.000000 
+0.000000 -0.000000 

 A = V * EValue * invV
+0.390244 +0.487805 
+0.487805 +0.609756 

 Press return to continue. 


 The matrix A projects the plane in the direction
 of the  eigenvector V2  on a line  determined by
 the eigenvector V1 if :

 The eigenvector V1 has its eigenvalue equal to  one and
 The eigenvector V2 has its eigenvalue equal to zero and

 If The vectors V1 and V2 are linearly independent

 det(V) = -1.00

 Press return to continue.