Mathc complexes/a307
Quelques propriétés des valeurs propres. Matrices non symétrique conjuguée
Installer et compiler ces fichiers dans votre répertoire de travail.
c04a.c |
---|
/* ------------------------------------ */
/* Save as : c04a.c */
/* ------------------------------------ */
#include "w_a.h"
/* ------------------------------------ */
void fun(int r)
{
nb_Z z = r_Z(9);
double **A = r_mZ( i_mZ(r, r),9.);
double **EigsValueA = eigs_mZ(A, i_mZ(r,C1) );
double **zA = zmul_mZ(z,A,i_mZ(r, r));
double **EigsValuezA = eigs_mZ(zA, i_mZ(r,C1));
int i = 0;
nb_Z za = i_Z(0, 0);
clrscrn();
printf(" A :");
p_mZ(A,S5,P0,S4,P0,C6);
printf(" EigsValue A :");
p_mZ(EigsValueA,S10,P3,S10,P3,C6);;
printf(" ( ");p_Z(z,S0,P0,S0,P0);
printf(") * A : (zA)");
p_mZ(zA,S6,P0,S6,P0,C6);
printf(" EigsValue zA :");
p_mZ(EigsValuezA,S10,P3,S10,P3,C6);
stop();
clrscrn();
printf(" EigsValue zA :");
p_mZ(EigsValuezA,S10,P3,S10,P3,C6);
printf(" z * EigsValues of A :\n");
for(i=R1;i<=r;i++)
{
za = i_Z(EigsValueA[i][C1], EigsValueA[i][C2]);
p_Z(mul_Z(za,z),S10,P3,S10,P3);printf("\n");
}
f_mZ(A);
f_mZ(EigsValueA);
f_mZ(zA);
f_mZ(EigsValuezA);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(rp_I(R3)+R1);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
Les valeurs propres de sA correspondent aux valeurs propres de A multiplié par s :
Exemple de sortie écran :
A :
-4 +9i +6 +6i +6 +2i
+8 +2i +4 -2i -8 -7i
-3 +8i -6 -4i -5 -4i
EigsValue A :
-11.576 -10.891i
+9.008 +5.219i
-2.431 +8.672i
( +8+9i ) * A : (zA)
-113 +36i -6 +102i +30 +70i
+46 +88i +50 +20i -1 -128i
-96 +37i -12 -86i -4 -77i
EigsValue zA :
+5.408 -191.314i
+25.092 +122.817i
-97.500 +47.497i
Press return to continue.
EigsValue zA :
+5.408 -191.314i
+25.092 +122.817i
-97.500 +47.497i
z * EigsValues of A :
+5.408 -191.314i
+25.092 +122.817i
-97.500 +47.497i
Press return to continue
Press X return to stop