Mathc matrices/c22o
Installer et compiler ces fichiers dans votre répertoire de travail.
c00h.c |
---|
/* ------------------------------------ */
/* Save as : c00h.c */
/* ------------------------------------ */
#include "v_a.h"
#include "dot_au.h"
/* ------------------------------------ */
void fun(int r)
{
double **A = r_mR(i_mR(r,r),9.);
double **U = r_mR(i_mR(r,r),9.);
double **Orth = i_mR(r,r);
double **D = i_mR(r,r);
clrscrn();
printf(" A :");
p_mR(A,S3,P0,C6);
printf(" u :");
p_mR(U,S3,P0,C6);
stop();
clrscrn();
orth_Au_mR(A,U,Orth);
printf(" Orth :");
p_mR(Orth,S8,P4,C6);
Normalize_Au_mR(A,Orth);
printf(" N_Orth : Normalise");
p_mR(Orth,S8,P4,C6);
mul_Au_mR(A,Orth,Orth,D);
printf(" D : <N_Orth,N_Orth> ");
p_mR(D,S8,P4,C6);
f_mR(A);
f_mR(U);
f_mR(Orth);
f_mR(D);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(rp_I(R3)+R2);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
Nous orthnormalisons le vecteur u.
Exemple de sortie écran :
------------------------------------
A :
+2 -3 +4
+8 -9 +2
-5 +4 -5
u :
-3 +8 +2
+6 -9 +4
+6 +6 -5
Press return to continue.
Orth :
-3.000 +0.349 +3.652
+6.000 +6.302 +3.195
+6.000 +21.302 -0.449
N_Orth : Normalise
-0.045 +0.003 +0.699
+0.090 +0.059 +0.612
+0.090 +0.199 -0.086
D : <N_Orth,N_Orth>
+1.000 +0.000 +0.000
-0.000 +1.000 -0.000
+0.000 -0.000 +1.000
Press return to continue
Press X to stop