< Mathc matrices


Sommaire


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

c05k.c
'
/* ------------------------------------ */
/*  Save as :   c05k.c                   */
/* ------------------------------------ */
#include "v_a.h"
/* ------------------------------------ */
void fun(int r)
{
double **u       = r_mR(i_mR(r,C1),9.);
double **v       = r_mR(i_mR(r,C1),9.);
double **projuv  =      i_mR(r,C1);
double **umnsprojuv  =  i_mR(r,C1);

  clrscrn();
  
  printf(" u :");
  p_mR(u,3,0,6);
  printf(" v :");
  p_mR(v,3,0,6);
  stop();
  
  clrscrn();
  
  projuv_mR(u,v,projuv);
  
  printf(" vector component of u along v \n\n");  
  printf(" projuv :");
  p_mR(projuv,3,3,6);
  stop();
  
  clrscrn();
  printf(" vector component of u orthogonal to v \n\n");
  printf(" u - projuv :");
  sub_mR(u,projuv,umnsprojuv);
  p_mR(umnsprojuv,3,3,6);
  printf(" <v,u - projuv> = %.6f \n\n", dotuv_R(v,umnsprojuv));

  f_mR(u);
  f_mR(v);
  f_mR(projuv);
}
/* ------------------------------------ */
int main(void)
{
time_t t;

  srand(time(&t));

do
{
  fun(rp_I(3)+R2);


} while(stop_w());

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


Nous vérifions une des propriétés du projeté de u sur v : <v,u - projuv> = -0.000000 



Exemple de sortie écran :
 u :
 -7 
 -5 
 -9 
 +6 
 +8 

 v :
 +4 
 +2 
 +4 
 +2 
 -5 

 vector component of u along v 

 projuv :
-6.277 
-3.138 
-6.277 
-3.138 
+7.846 

 

 vector component of u orthogonal to v 

 u - projuv :
-0.723 
-1.862 
-2.723 
+9.138 
+0.154 

 <v,u - projuv> = -0.000000 


 Press return to continue
 Press X      to stop
Cet article est issu de Wikibooks. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.