Mathc matrices/a145
Quelques propriétés des valeurs propres.
Installer et compiler ces fichiers dans votre répertoire de travail.
c06a.c |
---|
/* ------------------------------------ */
/* Save as : c06a.c */
/* ------------------------------------ */
#include "v_a.h"
/* ------------------------------------ */
void fun(int r)
{
double p = rp_I(3)+1;
double **A = rsymmetric_mR( i_mR(r, r),9.);
double **EigsValueA = eigs_mR(A, i_mR(r,C1));
double **A_p = pow_mR(p,A,i_mR(r, r));
double **EigsValueA_p = eigs_mR(A_p,i_mR(r,C1));
int i = 0;
clrscrn();
printf(" A :");
p_mR(A,S3,P0,C6);
printf(" EigsValue :");
p_mR(EigsValueA,S13,P6,C1);
printf(" A_%.0f :",p);
p_mR(A_p,S8,P0,C6);
printf(" EigsValueA_%.0f :",p);
p_mR(EigsValueA_p,S15,P6,C1);
stop();
clrscrn();
printf(" EigsValue A_%.0f :",p);
p_mR(EigsValueA_p,S15,P6,C1);
printf(" (EigsValues of A)**%.0f * :\n",p);
for(i=R1;i<=r;i++)
printf(" %+14.6f \n", pow(EigsValueA[i][C1],p));
f_mR(A);
f_mR(EigsValueA);
f_mR(A_p);
f_mR(EigsValueA_p);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(rp_I(R3)+R2);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
Les valeurs propres de A**P correspondent aux valeurs propres de A à la puissance P :
Exemple de sortie écran :
A :
+9 -5 -3 -7 -3
-5 -5 -9 -7 +5
-3 -9 -7 +8 +8
-7 -7 +8 -9 +4
-3 +5 +8 +4 +3
EigsValue :
-19.869496
-16.738801
+16.667581
+8.149702
+2.791014
A_2 :
+173 +41 -41 -1 -113
+41 +205 +107 +81 -95
-41 +107 +267 -12 -36
-1 +81 -12 +259 +26
-113 -95 -36 +26 +123
EigsValueA_2 :
+394.796871
+280.187465
+277.808265
+66.417640
+7.789760
Press return to continue.
EigsValue A_2 :
+394.796871
+280.187465
+277.808265
+66.417640
+7.789760
(EigsValues of A)**2 * :
+394.796871
+280.187465
+277.808265
+66.417640
+7.789760
Press return to continue
Press X return to stop