Mathc matrices/a86
Application
Installer et compiler ces fichiers dans votre répertoire de travail.
/* Save as : c00a.c */
/* ------------------------------------ */
void fun(void)
double **A = rEsymmetric_mR(i_mR(RCA,RCA),555.,1E-3);
double **cosh_A = i_mR(RCA,RCA);
double **EigsVector = i_mR(RCA,RCA);
double **T_EigsVector = i_mR(RCA,RCA);
double **EigsValue = i_mR(RCA,RCA);
double **cosh_EigsValue = i_mR(RCA,RCA);
double **T1 = i_mR(RCA,RCA);
 clrscrn();
 printf(" A :");
 p_mR(A,S10,P4,C6); 
 eigs_V_uv_mR(A,EigsVector); 
 transpose_mR(EigsVector,T_EigsVector);
/* EigsValue : T_EigsVector * A * EigsVector */
 mul_mR(T_EigsVector,A,T1);
 mul_mR(T1,EigsVector,EigsValue); 
 f_eigs_uv_mR(cosh,EigsValue,cosh_EigsValue);
//A == EigsVector * EigsValue * T_EigsVector 
 mul_mR(EigsVector,cosh_EigsValue,T1);
 mul_mR(T1,T_EigsVector,cosh_A); 
 printf(" cosh(A):");
 p_mR(cosh_A,S10,P4,C6); 
 eigs_V_uv_mR(cosh_A,EigsVector); 
 transpose_mR(EigsVector,T_EigsVector); 
/* EigsValue : T_EigsVector * A * EigsVector */
 mul_mR(T_EigsVector,cosh_A,T1);
 mul_mR(T1,EigsVector,EigsValue); 
 f_eigs_uv_mR(acosh,EigsValue,cosh_EigsValue);
//A == EigsVector * EigsValue * T_EigsVector 
 mul_mR(EigsVector,cosh_EigsValue,T1);
 mul_mR(T1,T_EigsVector,A); 
 printf(" acosh(cosh(A)) = A :");
 p_mR(A,S10,P4,C6);
 f_mR(A);
 f_mR(cosh_A);
 f_mR(EigsVector);
 f_mR(T_EigsVector);
 f_mR(EigsValue); 
 f_mR(cosh_EigsValue); 
 f_mR(T1);
/* ------------------------------------ */
int main(void)
time_t t;
 srand(time(&t));
do
 fun();
} while(stop_w());
 return 0;
/* ------------------------------------ */
 acosh(cosh(A)) = A

Exemple de sortie écran :
 A :
 +0.6608 +0.4029 -0.7211 +0.1469 -0.4697 
 +0.4029 +0.2884 -0.4317 +0.1532 -0.2475 
 -0.7211 -0.4317 +0.8667 -0.2079 +0.4934 
 +0.1469 +0.1532 -0.2079 +0.6138 -0.0042 
 -0.4697 -0.2475 +0.4934 -0.0042 +0.4031 
 cosh(A):
 +1.9697 +0.5938 -1.0963 +0.2932 -0.6794 
 +0.5938 +1.3675 -0.6728 +0.2017 -0.4106 
 -1.0963 -0.6728 +2.2430 -0.3465 +0.7646 
 +0.2932 +0.2017 -0.3465 +1.2675 -0.1705 
 -0.6794 -0.4106 +0.7646 -0.1705 +1.4845 
 acosh(cosh(A)) = A :
 +0.6608 +0.4029 -0.7211 +0.1469 -0.4697 
 +0.4029 +0.2884 -0.4317 +0.1532 -0.2475 
 -0.7211 -0.4317 +0.8667 -0.2079 +0.4934 
 +0.1469 +0.1532 -0.2079 +0.6138 -0.0042 
 -0.4697 -0.2475 +0.4934 -0.0042 +0.4031 
 Press return to continue
 Press X return to stop

Mathc matrices/a87
Application
Installer et compiler ces fichiers dans votre répertoire de travail.
/* Save as : c00a.c */
/* ------------------------------------ */
void fun(void)
double **A = rEsymmetric_mR(i_mR(RCA,RCA),455.,1E-3);
double **sinh_A = i_mR(RCA,RCA);
double **EigsVector = i_mR(RCA,RCA);
double **T_EigsVector = i_mR(RCA,RCA);
double **EigsValue = i_mR(RCA,RCA);
double **sinh_EigsValue = i_mR(RCA,RCA);
double **T1 = i_mR(RCA,RCA);
 clrscrn();
 printf(" A :");
 p_mR(A,S10,P4,C6); 
 eigs_V_uv_mR(A,EigsVector); 
 transpose_mR(EigsVector,T_EigsVector);
/* EigsValue : T_EigsVector * A * EigsVector */
 mul_mR(T_EigsVector,A,T1);
 mul_mR(T1,EigsVector,EigsValue); 
 f_eigs_uv_mR(sinh,EigsValue,sinh_EigsValue);
//A == EigsVector * EigsValue * T_EigsVector 
 mul_mR(EigsVector,sinh_EigsValue,T1);
 mul_mR(T1,T_EigsVector,sinh_A); 
 printf(" sinh(A) :");
 p_mR(sinh_A,S10,P4,C6); 
 eigs_V_uv_mR(sinh_A,EigsVector); 
 transpose_mR(EigsVector,T_EigsVector); 
/* EigsValue : T_EigsVector * A * EigsVector */
 mul_mR(T_EigsVector,sinh_A,T1);
 mul_mR(T1,EigsVector,EigsValue); 
 f_eigs_uv_mR(asinh,EigsValue,sinh_EigsValue);
//A == EigsVector * EigsValue * T_EigsVector 
 mul_mR(EigsVector,sinh_EigsValue,T1);
 mul_mR(T1,T_EigsVector,A); 
 printf(" asinh(sinh(A)) = A :");
 p_mR(A,S10,P4,C6);
 f_mR(A);
 f_mR(sinh_A);
 f_mR(EigsVector);
 f_mR(T_EigsVector);
 f_mR(EigsValue); 
 f_mR(sinh_EigsValue); 
 f_mR(T1);
/* ------------------------------------ */
int main(void)
time_t t;
 srand(time(&t));
do
 fun();
} while(stop_w());
 return 0;
/* ------------------------------------ */
 asinh(sinh(A)) = A

Exemple de sortie écran :
 A :
 +0.3540 +0.1024 +0.0561 +0.0159 +0.1117 
 +0.1024 +0.3927 -0.1399 +0.1085 -0.0082 
 +0.0561 -0.1399 +0.7073 +0.2214 +0.0248 
 +0.0159 +0.1085 +0.2214 +0.2599 -0.0655 
 +0.1117 -0.0082 +0.0248 -0.0655 +0.3025 
 sinh(A) :
 +0.3662 +0.1088 +0.0635 +0.0199 +0.1181 
 +0.1088 +0.4107 -0.1575 +0.1094 -0.0084 
 +0.0635 -0.1575 +0.7883 +0.2498 +0.0271 
 +0.0199 +0.1094 +0.2498 +0.2745 -0.0673 
 +0.1181 -0.0084 +0.0271 -0.0673 +0.3098 
 asinh(sinh(A)) = A :
 +0.3540 +0.1024 +0.0561 +0.0159 +0.1117 
 +0.1024 +0.3927 -0.1399 +0.1085 -0.0082 
 +0.0561 -0.1399 +0.7073 +0.2214 +0.0248 
 +0.0159 +0.1085 +0.2214 +0.2599 -0.0655 
 +0.1117 -0.0082 +0.0248 -0.0655 +0.3025 
 Press return to continue
 Press X return to stop

Mathc complexes/a153
Application
Installer et compiler ces fichiers dans votre répertoire de travail.
/* ------------------------------------ */
/* Save as : c00a.c */
/* ------------------------------------ */
void fun(void)
double **A = rEcsymmetric_mZ(i_mZ(RCA,RCA),555.,1E-3);
double **cos_A = i_mZ(RCA,RCA);
double **EigsVector = i_mZ(RCA,RCA);
double **T_EigsVector = i_mZ(RCA,RCA);
double **EigsValue = i_mZ(RCA,RCA);
double **cos_EigsValue = i_mZ(RCA,RCA);
double **T1 = i_mZ(RCA,RCA);
 clrscrn();
 printf(" A :");
 p_mZ(A,S10,P4,S10,P4,C6); 
 eigs_V_uv_mZ(A,EigsVector,FACTOR_E);
 ctranspose_mZ(EigsVector,T_EigsVector);
/* EigsValue : T_EigsVector * A * EigsVector */
 mul_mZ(T_EigsVector,A,T1);
 mul_mZ(T1,EigsVector,EigsValue); 
 f_eigs_uv_mZ(cos,EigsValue,cos_EigsValue);
//A == EigsVector * EigsValue * T_EigsVector 
 mul_mZ(EigsVector,cos_EigsValue,T1);
 mul_mZ(T1,T_EigsVector,cos_A); 
 printf(" cos(A) :");
 p_mZ(cos_A,S10,P4,S10,P4,C6); 
 eigs_V_uv_mZ(cos_A,EigsVector,FACTOR_E);
 ctranspose_mZ(EigsVector,T_EigsVector); 
/* EigsValue : T_EigsVector * A * EigsVector */
 mul_mZ(T_EigsVector,cos_A,T1);
 mul_mZ(T1,EigsVector,EigsValue); 
 f_eigs_uv_mZ(acos,EigsValue,cos_EigsValue);
//A == EigsVector * EigsValue * T_EigsVector 
 mul_mZ(EigsVector,cos_EigsValue,T1);
 mul_mZ(T1,T_EigsVector,A); 
 printf(" acos(cos(A)) = A :");
 p_mZ(A,S10,P4,S10,P4,C6);
 f_mZ(A);
 f_mZ(cos_A);
 f_mZ(EigsVector);
 f_mZ(T_EigsVector);
 f_mZ(EigsValue); 
 f_mZ(cos_EigsValue); 
 f_mZ(T1);
/* ------------------------------------ */
int main(void)
time_t t;
 srand(time(&t));
do
 fun();
} while(stop_w());
 return 0;
/* ------------------------------------ */
 acos(cos(A)) = A
 Exemple de sortie écran :
 A :
 +0.5399 +0.0000i +0.2802 -0.2164i -0.2789 -0.1380i 
 +0.2802 +0.2164i +0.5184 +0.0000i -0.0210 -0.4348i 
 -0.2789 +0.1380i -0.0210 +0.4348i +0.5777 +0.0000i 
 cos(A) :
 +0.7732 -0.0000i -0.1582 +0.1501i +0.1785 +0.1164i 
 -0.1582 -0.1501i +0.7449 +0.0000i +0.0301 +0.2509i 
 +0.1785 -0.1164i +0.0301 -0.2509i +0.7280 +0.0000i 
 acos(cos(A)) = A :
 +0.5399 -0.0000i +0.2802 -0.2164i -0.2789 -0.1380i 
 +0.2802 +0.2164i +0.5184 -0.0000i -0.0210 -0.4348i 
 -0.2789 +0.1380i -0.0210 +0.4348i +0.5777 +0.0000i 
 Press return to continue
 Press X return to stop