Mathc matrices/c23d

Un livre de Wikilivres.


Application


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


c00d.c
/* ------------------------------------ */
/*  Save as :   c00d.c                  */
/* ------------------------------------ */
#include    "v_a.h"
#include "dot_trac.h"
/* ------------------------------------ */
void fun(int r)
{
double **A  = r_mR(i_mR(r,r ),99.);
double **B  = r_mR(i_mR(r,r ),99.);
double **AmnsB =   i_mR(r,r);
double **AplB  =   i_mR(r,r);

  clrscrn();
  printf(" A :");
  p_mR(A,S3,P0,C6);
  printf(" B :");
  p_mR(B,S3,P0,C6);
  
  add_mR(A,B,AplB);  
  sub_mR(A,B,AmnsB);
  
  printf("       2||u||^2 +  2||v||^2 = %.4f \n\n", 
  
            2 * pow(norm_TR_R(A),2.)
          + 2 * pow(norm_TR_R(B),2.) );
      
  printf("  ||u + v||^2 + ||u - v||^2 = %.4f \n\n", 
  
            pow(norm_TR_R(AplB),2.) 
          + pow(norm_TR_R(AmnsB),2.) );

  f_mR(A);
  f_mR(B);
  f_mR(AplB);
  f_mR(AmnsB);
}
/* ------------------------------------ */
int main(void)
{
time_t t;

  srand(time(&t));

do
{  
  fun(rp_I(R3)+R2);
  
} while(stop_w());

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


Nous vérifions une propriétée du produit scalaire.


Exemple de sortie écran :
 ------------------------------------ 
 A :
-26 +68 +13 
-77 +69 +22 
-36 +84 -74 

 B :
-81 +28 -95 
+17 +46 -14 
+62 +25  +1 

       2||u||^2 +  2||v||^2 = 107824.0000 

  ||u + v||^2 + ||u - v||^2 = 107824.0000 


 Press return to continue
 Press X      to stop