adjoint


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


c00b.c
/* ------------------------------------ */
/*  Save as :   c00b.c                  */
/* ------------------------------------ */
#include "w_a.h"
/* ------------------------------------ */
void fun(int r)
{
double **A         =       r_mZ(             i_mZ(r,r),9.);
double **Aadjoint  = adjoint_mZ(A,       i_mZ(r,r)       );
double **AAadjoint =     mul_mZ(A, Aadjoint, i_mZ(r,r)   );

  clrscrn();
  printf(" A :");
  p_mZ(A,S4,P0, S3,P0, C6);

  printf(" Adjoint :");
  p_mZ(Aadjoint, S6,P0, S5,P0, C6);

  printf(" A * adjoint(A) = det(A) * ID\t\t\tdet(A) ");
   p_Z(det_Z(A),S6,P0,S6,P0);printf("\n");
  p_mZ(AAadjoint,S6,P0, S6,P0, C6);
  
  f_mZ(A);
  f_mZ(Aadjoint);
  f_mZ(AAadjoint);
}
/* ------------------------------------ */
int main(void)
{
time_t t;

  srand(time(&t));
do
{
  fun(rp_I(RC3)+RC1);

} while(stop_w());

  return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */


A * adjoint(A) = det(A) * ID


Exemple de sortie écran :
 A :
  +8 -2i   +6 -9i   +2 -5i 
  -3 -2i   -1 -5i   +2 -9i 
  +8 +7i   -5 +9i   +5 +8i 

 Adjoint :
   -36  -96i    -67  +40i    -42  -67i 
   +78  -24i     +5  +80i    -14  +87i 
    +6  +30i   +133 -112i    +18  -53i 

 A * adjoint(A) = det(A) * ID			det(A)    -66 -1512i 

   -66 -1512i     -0    +0i     +0    +0i 
    +0    +0i    -66 -1512i     +0    +0i 
    +0    +0i     +0    -0i    -66 -1512i 


 Press   return to continue
 Press X return to stop