Mathc matrices/c05b3
Installer et compiler ces fichiers dans votre répertoire de travail.
b03.c |
---|
/* ------------------------------------ */
/* Save as : b03.c */
/* ------------------------------------ */
#include "v_a.h"
/* ------------------------------------ */
void fun(int r,int rn)
{
double **A = r_mR(i_mR(r+rn,r),9.);
double **A_T = i_mR(r,r+rn);
double **A_TA = i_mR(r,r);
double **EigsValue = i_mR(r,C1);
clrscrn();
transpose_mR(A,A_T);
mul_mR(A_T,A, A_TA);
printf(" A_TA :");
p_mR(A_TA,S5,P0,C6);
eigs_mR(A_TA,EigsValue);
printf(" EigenValues A_TA:");
p_mR(EigsValue,S13,P4,C1);
f_mR(A);
f_mR(A_T);
f_mR(A_TA);
f_mR(EigsValue);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(rp_I(R6),rp0_I(R6));
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
Calculons les valeurs propres d'une matrice A_TA. Les valeurs sur la diagonale sont positives. Les valeurs propres sont positives. Exemple de sortie écran :
A_TA :
+155 -117 +107 -73
-117 +146 -23 +86
+107 -23 +135 -23
-73 +86 -23 +77
EigenValues A_TA:
+360.2511
+130.7699
+21.3292
+0.6497
Press return to continue
Press X to stop