Aller au contenu

Mathc complexes/05e

Un livre de Wikilivres.


Application

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

c00b.c
/* ------------------------------------ */
/*  Save as :   c00b.c                  */
/* ------------------------------------ */
#include "w_a.h"
/* ------------------------------------ */
#define   RA R8
#define   CA C8
#define   Cb C1
/* ------------------------------------ */
int main(void)
{
double ab[RA*(CA+Cb)]={
//    I1    I2    I3    I4    I5    I6               b
      +1,   -1,   -1,   +0,   +0,   +0,   0,  0,     0,
      +0,   +0,   +1,   -1,   -1,   +0,   0,  0,     0,
      +0,   +1,   +0,   +0,   +1,   -1,   0,  0,     0,
      -1,   +0,   +0,   +1,   +0,   +1,   0,  0,     0,
      +0,  -50,   +0,   +0,   +0,  -20,   0,  0,   -90,
      +0,  +50,  -20,   +0,  -10,   +0,   0,  0,     0, 
      +0,   +0,   +0,  -50,  +10,  +20,   0,  0,     0,
      +0,   +0,  -20,  -50,   +0,   +0,   0,  0,   -90,
};

double **Ab =  ca_A_mRZ(ab,i_Abr_Ac_bc_mZ(RA,CA,Cb));
double **A  = c_Ab_A_mZ(Ab,i_mZ(RA,CA));
double **b  = c_Ab_b_mZ(Ab,i_mZ(RA,Cb));

  clrscrn();
  printf(" Ab :\n"
         "  I1     I2     I3     I4     I5     I6 ");
  p_mRZ(Ab,S6,P2,C9);
  getchar();

  clrscrn();
  printf(" Copy/Paste into the octave window.\n\n");
  p_Octave_mZ(Ab,"Ab",P0,P0);
  printf("\n rref(Ab,.00000000001)\n\n");
  getchar();

  clrscrn();
  printf("  gj_mZ(Ab) :\n\n"
         "  I1     I2     I3     I4     I5     I6 ");
  gj_mZ(Ab);
  p_mRZ(Ab,S6,P2,C9);
  stop();

  f_mZ(Ab);
  f_mZ(b);
  f_mZ(A);
  
  return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
Exemple de sortie écran :
 Ab :
  I1     I2     I3     I4     I5     I6 
 +1.00  -1.00  -1.00  +0.00  +0.00  +0.00  +0.00  +0.00  +0.00 
 +0.00  +0.00  +1.00  -1.00  -1.00  +0.00  +0.00  +0.00  +0.00 
 +0.00  +1.00  +0.00  +0.00  +1.00  -1.00  +0.00  +0.00  +0.00 
 -1.00  +0.00  +0.00  +1.00  +0.00  +1.00  +0.00  +0.00  +0.00 
 +0.00 -50.00  +0.00  +0.00  +0.00 -20.00  +0.00  +0.00 -90.00 
 +0.00 +50.00 -20.00  +0.00 -10.00  +0.00  +0.00  +0.00  +0.00 
 +0.00  +0.00  +0.00 -50.00 +10.00 +20.00  +0.00  +0.00  +0.00 
 +0.00  +0.00 -20.00 -50.00  +0.00  +0.00  +0.00  +0.00 -90.00 


 Copy/Paste into the octave window.

 Ab=[
+1+0*i,-1+0*i,-1+0*i,+0+0*i,+0+0*i,+0+0*i,+0+0*i,+0+0*i,+0+0*i;
+0+0*i,+0+0*i,+1+0*i,-1+0*i,-1+0*i,+0+0*i,+0+0*i,+0+0*i,+0+0*i;
+0+0*i,+1+0*i,+0+0*i,+0+0*i,+1+0*i,-1+0*i,+0+0*i,+0+0*i,+0+0*i;
-1+0*i,+0+0*i,+0+0*i,+1+0*i,+0+0*i,+1+0*i,+0+0*i,+0+0*i,+0+0*i;
+0+0*i,-50+0*i,+0+0*i,+0+0*i,+0+0*i,-20+0*i,+0+0*i,+0+0*i,-90+0*i;
+0+0*i,+50+0*i,-20+0*i,+0+0*i,-10+0*i,+0+0*i,+0+0*i,+0+0*i,+0+0*i;
+0+0*i,+0+0*i,+0+0*i,-50+0*i,+10+0*i,+20+0*i,+0+0*i,+0+0*i,+0+0*i;
+0+0*i,+0+0*i,-20+0*i,-50+0*i,+0+0*i,+0+0*i,+0+0*i,+0+0*i,-90+0*i]


 rref(Ab,.00000000001)

  gj_mZ(Ab) :

  I1     I2     I3     I4     I5     I6 
 +1.00  +0.00  +0.00  +0.00  +0.00  +0.00  +0.00  +0.00  +3.00 
 +0.00  +1.00  +0.00  +0.00  +0.00  +0.00  +0.00  +0.00  +1.00 
 +0.00  +0.00  +1.00  +0.00  +0.00  +0.00  +0.00  +0.00  +2.00 
 +0.00  +0.00  +0.00  +1.00  +0.00  +0.00  +0.00  +0.00  +1.00 
 +0.00  +0.00  +0.00  +0.00  +1.00  +0.00  +0.00  +0.00  +1.00 
 +0.00  +0.00  +0.00  +0.00  +0.00  +1.00  +0.00  +0.00  +2.00 
 +0.00  +0.00  +0.00  +0.00  +0.00  +0.00  +0.00  +0.00  +0.00 
 +0.00  +0.00  +0.00  +0.00  +0.00  +0.00  +0.00  +0.00  +0.00 

 Press return to continue.