Aller au contenu

Mathc matrices/01i

Un livre de Wikilivres.


Valeurs propres. Vecteurs propres

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


c00a.c
/* ------------------------------------ */
/*  Save as : c00a.c                    */
/* ------------------------------------ 
 * Create the files a_main.plt, g_u1 and g_u2 
 * 
 
# a_main.plt
 
reset
set size ratio -1
set zeroaxis lt 8
set grid
plot [-1:1] [-1:1]\
"g_u1"  with linespoints lt 16 lw 3,\
"g_u2"  with linespoints lt 15 lw 3
reset

 ------------------------------------ 
# g_u1

0.0 0.0   
+0.886978676 -0.461810381   
 ------------------------------------ 
# g_u2 

0.0 0.0   
+0.461810381 +0.886978676 

   ------------------------------------ */
/* ------------------------------------ */
#include "v_a.h"
/* ------------------------------------ */
#define   RCA R2
/* ------------------------------------ */
int main(void)
{
double a[RCA*RCA]={
- 4, +5,
 +5, +3 
};

double **A            = ca_A_mR(a,i_mR(RCA,RCA));
double **EigsVector   =           i_mR(RCA,RCA);

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

  printf(" EignVector:");
  eigs_V_mR(A,EigsVector);  
  p_mR(EigsVector,S14,P9,C6);
          
  printf(" Create the files \"a_main.plt\", \"g_u1\", \"g_u2\"\n\n" 
         " ... load \"a_main.plt\" ... with gnuplot.   \n\n");
  stop();
     
  f_mR(A);
  f_mR(EigsVector);

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


  • Il faut créer les fichiers, "a_main.plt", "g_u1", "g_u2", manuellement dans le répertoire de travail.
  • Comme d'habitude, il faut lancer gnuplot à partir d'une copie du terminal après avoir lancer le programme C.


Exemple de sortie écran :
 A:
  -4   +5 
  +5   +3 

 EignVector:
  +0.886978676   +0.461810381 
  -0.461810381   +0.886978676 

 Create the files "a_main.plt", "g_u1", "g_u2"

 ... load "a_main.plt" ... with gnuplot.   

 Press return to continue.