Exemple de sortie écran :
 A :
 +1.0 +2.0i +3.0 +4.0i 
 +5.0 +4.0i +1.0 +3.0i 
 +7.0 +2.0i +5.0 +1.0i 
 U :
 +0.2940 +0.2567i -0.6119 +0.4960i 
 +0.4702 +0.3112i +0.1304 -0.5579i 
 +0.7278 +0.0000i +0.2265 -0.0000i 
 V :
 +0.7964 +0.0735i -0.5977 -0.0552i 
 +0.6002 -0.0000i +0.7998 +0.0000i 
 +0.0000 +0.0000i +0.0000 +0.0000i 
 X_Value = U_T * A * V :
 +11.5820 +3.7205i +0.0000 -0.0000i 
 -0.0000 +0.0000i -0.3277 -3.4507i 
 Press return to continue. 
 invX_Value invU_TA2V:
 +7.8265e-02-2.5141e-02i +0.0000e+00+0.0000e+00i 
 +0.0000e+00+0.0000e+00i -2.7275e-02+2.8721e-01i 
 PseudoinverseA = V * invX_Value * U_T:
 -8.8864e-02+6.7492e-02i +1.2486e-01-3.0934e-02i +5.3993e-02-4.8931e-02i 
 +1.3723e-01-1.4623e-01i -1.1361e-01-3.9370e-03i +2.9246e-02+4.1057e-02i 
 +0.0000e+00+0.0000e+00i +0.0000e+00+0.0000e+00i +0.0000e+00+0.0000e+00i 
 Ide = PseudoinverseA * A 
 +1.0000 +0.0000i -0.0000 +0.0000i 
 -0.0000 -0.0000i +1.0000 -0.0000i 
 +0.0000 +0.0000i +0.0000 +0.0000i 
 Press return to continue.

Mathc complexes/a90
Application
Installer et compiler ce fichier dans votre répertoire de travail.
/* Save as : c00a.c */
void fun(int r)
double **A = r_mZ(i_mZ(r,r),999.);
double **b = i_mZ(r,r);
double **Ab = i_Abr_Ac_bc_mZ( r, r, r);
/* i_Abr_Ac_bc_mZ(R_Ab,C_A,C_b)); */
double **invA = i_mZ(r,r);
 clrscrn();
 printf(" A :");
 p_mZ(A, S6,P0, S5,P0, C4);
 printf(" b : ID :");
 eye_mZ(b);
 p_mZ(b, S6,P0, S5,P0, C4);
 stop();
 clrscrn(); 
 printf(" Ab :");
 c_A_b_Ab_mZ(A,b,Ab);
 p_mZ(Ab, S6,P0, S5,P0, C4);
 printf(" gj_TP_mZ(Ab) :"); 
 gj_mZ(Ab);
 p_mZ(Ab, S8,P4, S8,P4, C4);
 stop();
 clrscrn(); 
 printf(" Copy/Past into the octave window.\n");
 p_Octave_mZ(A,"A",P0,P0);
 printf("format short e\n");
 printf(" inv(A)\n\n");
 printf(" invA : c_Inv_A_mZ(Ab,invA);"); 
 c_Inv_A_mZ(Ab,invA);
 pE_mZ(invA, S10,P4, S10,P4, C3);
 f_mZ(invA);
 f_mZ(Ab);
 f_mZ(b);
 f_mZ(A);
/* ------------------------------------ */
int main(void)
time_t t;
 srand(time(&t));
do
 fun(R4);
} while(stop_w());
 return 0;
/* ------------------------------------ */
 Copier la matrice inverse du système Ab dans la matrice invA :
Exemple de sortie écran :
 ----------------------------------
 A :
 +697 -663i +385 -746i -213 +968i -885 +608i 
 -229 -266i +22 +94i +29 -785i -934 -227i 
 +384 -871i +637 +784i -816 -798i +475 -300i 
 +244 +745i -650 -171i -880 -23i -58 +164i 
 b : ID :
 +1 +0i +0 +0i +0 +0i +0 +0i 
 +0 +0i +1 +0i +0 +0i +0 +0i 
 +0 +0i +0 +0i +1 +0i +0 +0i 
 +0 +0i +0 +0i +0 +0i +1 +0i 
 Press return to continue. 
 ----------------------------------
 Ab :
 +697 -663i +385 -746i -213 +968i -885 +608i 
 -229 -266i +22 +94i +29 -785i -934 -227i 
 +384 -871i +637 +784i -816 -798i +475 -300i 
 +244 +745i -650 -171i -880 -23i -58 +164i 
 +1 +0i +0 +0i +0 +0i +0 +0i 
 +0 +0i +1 +0i +0 +0i +0 +0i 
 +0 +0i +0 +0i +1 +0i +0 +0i 
 +0 +0i +0 +0i +0 +0i +1 +0i 
 gj_TP_mZ(Ab) :
 +1.0000 +0.0000i +0.0000 +0.0000i -0.0000 +0.0000i +0.0000 +0.0000i 
 -0.0000 -0.0000i +1.0000 -0.0000i -0.0000 +0.0000i -0.0000 +0.0000i 
 +0.0000 +0.0000i -0.0000 -0.0000i +1.0000 -0.0000i +0.0000 +0.0000i 
 +0.0000 -0.0000i -0.0000 +0.0000i +0.0000 +0.0000i +1.0000 +0.0000i 
 +0.0005 +0.0002i -0.0003 +0.0004i +0.0002 +0.0004i +0.0002 +0.0002i 
 +0.0001 +0.0005i -0.0005 -0.0004i -0.0000 +0.0001i -0.0009 +0.0004i 
 -0.0000 +0.0001i -0.0001 +0.0001i -0.0003 +0.0003i -0.0006 +0.0001i 
 -0.0001 -0.0001i -0.0007 +0.0002i +0.0003 +0.0000i +0.0001 +0.0003i 
 Press return to continue. 
 ----------------------------------
 Copy/Past into the octave window.
 A=[
+697-663*i,+385-746*i,-213+968*i,-885+608*i;
-229-266*i,+22+94*i,+29-785*i,-934-227*i;
+384-871*i,+637+784*i,-816-798*i,+475-300*i;
+244+745*i,-650-171*i,-880-23*i,-58+164*i]
format short e
 inv(A)
 invA : c_Inv_A_mZ(Ab,invA);
+4.7003e-04+2.1135e-04i -2.9930e-04+3.5515e-04i +1.9455e-04+4.3014e-04i 
+1.1285e-04+5.0449e-04i -5.2150e-04-4.0555e-04i -3.6558e-06+9.2722e-05i 
-7.9562e-07+5.4058e-05i -5.6900e-05+9.7203e-05i -3.0870e-04+2.7735e-04i 
-9.1274e-05-1.3791e-04i -7.4673e-04+1.6845e-04i +2.9780e-04+3.6630e-05i 
+1.7466e-04+1.6472e-04i 
-8.6345e-04+3.9377e-04i 
-5.7102e-04+7.7681e-05i 
+6.4338e-05+2.9895e-04i 
 Press return to continue
 Press X to stop

Mathc complexes/a91
Application
Installer et compiler ces fichiers dans votre répertoire de travail.
/* ------------------------------------ */
/* Save as : c00c.c */
/* ------------------------------------ */
/* ------------------------------------ */
void fun(void)
double a[RCA*(RCA*C2)] ={ 
 +25072, +0, +21293, -4811, +5386, -6531, +11975, -5847, 
 +21293, +4811, +30848, +0, -1526, -1774, +13478, -6658, 
 +5386, +6531, -1526, +1774, +20007, +0, +7542, -1322, 
 +11975, +5847, +13478, +6658, +7542, +1322, +21250, +0 };
double **A = ca_A_mZ(a, i_mZ(RCA,RCA));
double **V = i_mZ(RCA,RCA);
double **cV_T = i_mZ(RCA,RCA);
double **T = i_mZ(RCA,RCA);
double **EigsValue = i_mZ(RCA,RCA);
 clrscrn();
 printf(" Copy/Past into the octave windows \n\n\n");
 p_Octave_mZ(A,"a",P0,P0); 
 printf(" [V, E] = eigs (a,10) \n\n\n");
 stop();
 clrscrn();
 printf(" A :");
 p_mZ(A, S8,P0, S6,P0, C4); 
/* V and cV_T*/ 
 eigs_V_uv_mZ(A,V,FACTOR_E);
 printf(" V :");
 p_mZ(V, S8,P2, S6,P2, C4); 
 printf(" cV_T :");
 p_mZ(ctranspose_mZ(V,cV_T), S8,P2, S6,P2, C4);
 stop();
 clrscrn(); 
/* EigsValue : cV_T * A * V */ 
 mul_mZ(cV_T,A,T);
 mul_mZ(T,V,EigsValue); 
 printf(" EigsValue :");
 p_mZ(EigsValue, S8,P2, S6,P2, C4);
 printf(" A :");
 p_mZ(A, S8,P0, S6,P0, C4); 
/* A = V * EigsValue * cV_T*/ 
 mul_mZ(V,EigsValue,T);
 mul_mZ(T,cV_T,A); 
 printf(" A = V * EigsValue * cV_T");
 p_mZ(A, S8,P0, S6,P0, C4); 
 stop();
 f_mZ(A);
 f_mZ(V); 
 f_mZ(cV_T); 
 f_mZ(T); 
 f_mZ(EigsValue);
/* ------------------------------------ */
int main(void)
 fun();
 return 0;
/* ------------------------------------ */
Avec les matrices réelles nous avons calculer les vecteurs et valeurs propres des matrices symétriques. Avec les matrices complexes nous allons calculer les vecteurs et valeurs propres des matrices symétriques conjuguées.
Contrôle du facteur : 
Nous allons étudier une des propriétés des valeurs propres et des vecteurs propres :
 A = V * EigsValue * cV_T
 Exemple de sortie écran :
 Copy/Past into the octave windows 
 a=[
+25072+0*i,+21293-4811*i,+5386-6531*i,+11975-5847*i;
+21293+4811*i,+30848+0*i,-1526-1774*i,+13478-6658*i;
+5386+6531*i,-1526+1774*i,+20007+0*i,+7542-1322*i;
+11975+5847*i,+13478+6658*i,+7542+1322*i,+21250+0*i]
 [V, E] = eigs (a,10) 
 Press return to continue. 
 ------------------------------------
 A :
 +25072 +0i +21293 -4811i +5386 -6531i +11975 -5847i 
 +21293 +4811i +30848 +0i -1526 -1774i +13478 -6658i 
 +5386 +6531i -1526 +1774i +20007 +0i +7542 -1322i 
 +11975 +5847i +13478 +6658i +7542 +1322i +21250 +0i 
 V :
 +0.49 -0.32i +0.01 -0.03i -0.24 +0.48i -0.13 -0.59i 
 +0.58 -0.26i -0.26 +0.36i -0.17 -0.22i -0.20 +0.54i 
 +0.19 +0.05i +0.70 -0.50i -0.22 -0.01i -0.28 +0.31i 
 +0.46 +0.00i +0.26 -0.00i +0.77 +0.00i +0.36 +0.00i 
 cV_T :
 +0.49 +0.32i +0.58 +0.26i +0.19 -0.05i +0.46 -0.00i 
 +0.01 +0.03i -0.26 -0.36i +0.70 +0.50i +0.26 +0.00i 
 -0.24 -0.48i -0.17 +0.22i -0.22 +0.01i +0.77 -0.00i 
 -0.13 +0.59i -0.20 -0.54i -0.28 -0.31i +0.36 -0.00i 
 Press return to continue. 
 ------------------------------------
 EigsValue :
+61819.15 -0.00i -0.00 +0.00i -0.00 -0.00i -0.00 -0.00i 
 -0.00 -0.00i +22896.22 -0.00i -0.00 -0.00i -0.00 +0.00i 
 -0.00 +0.00i -0.00 +0.00i +10720.54 +0.00i +0.00 -0.00i 
 +0.00 +0.00i -0.00 -0.00i +0.00 +0.00i +1741.10 +0.00i 
 A :
 +25072 +0i +21293 -4811i +5386 -6531i +11975 -5847i 
 +21293 +4811i +30848 +0i -1526 -1774i +13478 -6658i 
 +5386 +6531i -1526 +1774i +20007 +0i +7542 -1322i 
 +11975 +5847i +13478 +6658i +7542 +1322i +21250 +0i 
 A = V * EigsValue * cV_T
 +25072 -0i +21293 -4811i +5386 -6531i +11975 -5847i 
 +21293 +4811i +30848 -0i -1526 -1774i +13478 -6658i 
 +5386 +6531i -1526 +1774i +20007 +0i +7542 -1322i 
 +11975 +5847i +13478 +6658i +7542 +1322i +21250 +0i 
 Press return to continue.