Aller au contenu

Mathc matrices/a122

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   RA R3
#define   CA C3
#define   Cb C1
/* ------------------------------------ */
int main(void)
{
double ab[RA*(CA+Cb)]={
    -2.0,     -9.0,     +4.0,   -202.0, 
    -1.0,     +1.0,     -1.0,     +3.0, 
    +8.0,     +6.0,     -2.0,   +236.0      
};

double **Ab = ca_A_mR(ab,i_Abr_Ac_bc_mR(RA,CA,Cb));
double **A  = c_Ab_A_mR(Ab,i_mR(RA,CA));
double **b  = c_Ab_b_mR(Ab,i_mR(RA,Cb));

  clrscrn();
  printf(" You have this nonlinear system of equations :\n\n");
  printf(" a x*y + b x*z + c z**(1/2) = d \n");
  printf(" e x*y + f x*z + g z**(1/2) = h \n");
  printf(" i x*y + j x*z + k z**(1/2) = l \n\n");
  printf(" We write X = x*y; Y = x*z; Z = z**(1/2);\n\n"); 
  printf(" a X + b Y + c Z = d\n");
  printf(" e X + f Y + g Z = h\n");
  printf(" i X + j Y + k Z = l\n\n");  
  printf(" Ab :\n");  
  printf(" a  b  c  d\n");
  printf(" e  f  g  h\n");
  printf(" i  j  k  l\n\n\n"); 
  stop();  
  
  clrscrn();
  printf(" With  A :");
  p_mR(A,S8,P4,C7);
  printf(" And b :");
  p_mR(b,S8,P4,C7);
  printf(" Ab :");
  p_mR(Ab,S8,P4,C7);
  getchar();

  clrscrn();
  printf(" Copy/Past into the octave window.\n\n");
  p_Octave_mR(Ab,"Ab",P4);
  printf("\n rref(Ab,.00000000001)\n\n");
  printf("  gj_TP_mR(Ab) :");
  gj_TP_mR(Ab);
  p_mR(Ab,S10,P4,C7);
  printf(" You have X= x*y = 15, Y = x*z = 20, Z = z**(1/2) = 2 \n\n");
  printf(" These give     x = 5,    y =  3,        z = 4 \n\n\n");
  stop();

  f_mR(Ab);
  f_mR(b);
  f_mR(A);
  
  return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
Exemple de sortie écran :
 ------------------------------------                                                  
 You have this nonlinear system of equations :

 a x*y + b x*z + c z**(1/2) = d 
 e x*y + f x*z + g z**(1/2) = h 
 i x*y + j x*z + k z**(1/2) = l 

 We write X = x*y; Y = x*z; Z = z**(1/2);

 a X + b Y + c Z = d
 e X + f Y + g Z = h
 i X + j Y + k Z = l

 Ab :
 a  b  c  d
 e  f  g  h
 i  j  k  l


 Press return to continue. 

 ------------------------------------    
 With  A :
 -2.0000  -9.0000  +4.0000 
 -1.0000  +1.0000  -1.0000 
 +8.0000  +6.0000  -2.0000 

 And b :
-202.0000 
 +3.0000 
+236.0000 

 Ab :
 -2.0000  -9.0000  +4.0000 -202.0000 
 -1.0000  +1.0000  -1.0000  +3.0000 
 +8.0000  +6.0000  -2.0000 +236.0000 

 ------------------------------------    
 Copy/Past into the octave window.

 Ab=[
-2.0000,-9.0000,+4.0000,-202.0000;
-1.0000,+1.0000,-1.0000,+3.0000;
+8.0000,+6.0000,-2.0000,+236.0000]


 rref(Ab,.00000000001)

  gj_TP_mR(Ab) :
   +1.0000    +0.0000    +0.0000   +15.0000 
   +0.0000    +1.0000    +0.0000   +20.0000 
   -0.0000    -0.0000    +1.0000    +2.0000 

 You have X= x*y = 15, Y = x*z = 20, Z = z**(1/2) = 2 

 These give     x = 5,    y =  3,        z = 4 


 Press return to continue.