Mathc complexes/04x
Apparence
Installer et compiler ces fichiers dans votre répertoire de travail.
c00a.c |
|---|
/* ------------------------------------ */
/* Save as : c00a.c */
/* ------------------------------------ */
#include "w_a.h"
/* ------------------------------------ */
/* ------------------------------------ */
#define RA R4
#define CA C5
#define Cb C1
/* ------------------------------------ */
#define CbFree Cb+C3
/* ------------------------------------ */
#define Cx C3
#define Cy C4
/* ------------------------------------ */
void fun(void)
{
double ab[RA*((CA+Cb)*C2)] ={
+2*2,-9*2, -5*2,-3*2, -3*2,-8*2, +2*2,-4*2, -8*2,-9*2, 0,0,
-3, -3, +4, +3, +1, -9, -9, +2, +1, -7, 0,0,
+2*3,-9*3, -5*3,-3*3, -3*3,-8*3, +2*3,-4*3, -8*3,-9*3, 0,0,
+2*7,-9*7, -5*7,-3*7, -3*7,-8*7, +2*7,-4*7, -8*7,-9*7, 0,0
};
double **Ab = ca_A_mZ(ab, i_Abr_Ac_bc_mZ(RA,CA,Cb));
double **A = c_Ab_A_mZ(Ab, i_mZ(RA,CA));
double **b = c_Ab_b_mZ(Ab, i_mZ(RA,Cb));
double **Ab_New = i_Abr_Ac_bc_mZ(CA,CA,CbFree) ;
double **b_Free = i_mZ(CA,CbFree);
double **cx = i_mZ(CA,C1);
double **cy = i_mZ(CA,C1);
double **cxplscy = i_mZ(CA,C1);
double **A_cxplscy = i_mZ(RA,C1);
clrscrn();
printf(" Verify if the sum of two columns of b_free\n"
" is orthogonal to A :\n\n");
printf(" A :");
p_mZ(A, S3,P0, S3,P0, C8);
printf(" b :");
p_mZ(b, S3,P0, S3,P0, C8);
printf(" Ab :");
p_mZ(Ab, S3,P0, S3,P0, C8);
stop();
gj_PP_mZ(Ab);
put_zeroR_mZ(Ab,Ab_New);
put_freeV_mZ(Ab_New);
gj_mZ(Ab_New);
c_Ab_b_mZ(Ab_New,b_Free);
c_c_mZ(b_Free,Cx,cx,C1);
c_c_mZ(b_Free,Cy,cy,C1);
add_mZ(cx,cy,cxplscy);
mul_mZ(A,cxplscy,A_cxplscy);
clrscrn();
printf(" b_Free :");
p_mZ(b_Free, S8,P4, S8,P4, C4);
printf(" C%d + C%d :",Cx,Cy);
p_mZ(cxplscy, S8,P4, S8,P4, C4);
printf(" A * (C%d+C%d) :",Cx,Cy);
p_mZ(A_cxplscy, S8,P4, S8,P4, C4);
stop();
f_mZ(Ab);
f_mZ(A);
f_mZ(b);
f_mZ(Ab_New);
f_mZ(b_Free);
}
/* ------------------------------------ */
int main(void)
{
fun();
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
On peut sélectionner les colonnes de travail dans le code ci-dessous.
#define Cx C3
#define Cy C4
Exemple de sortie écran :
Verify if the sum of two columns of b_free
A :
+4-18i -10 -6i -6-16i +4 -8i -16-18i
-3 -3i +4 +3i +1 -9i -9 +2i +1 -7i
+6-27i -15 -9i -9-24i +6-12i -24-27i
+14-63i -35-21i -21-56i +14-28i -56-63i
b :
+0 +0i
+0 +0i
+0 +0i
+0 +0i
Ab :
+4-18i -10 -6i -6-16i +4 -8i -16-18i +0 +0i
-3 -3i +4 +3i +1 -9i -9 +2i +1 -7i +0 +0i
+6-27i -15 -9i -9-24i +6-12i -24-27i +0 +0i
+14-63i -35-21i -21-56i +14-28i -56-63i +0 +0i
Press return to continue.
b_Free :
-0.0000 +0.0000i -1.5326 +0.0083i -0.1488 +0.6540i -1.4844 +0.4083i
+0.0000 +0.0000i -0.3684 +1.3830i +0.9965 -0.8685i -0.6159 +1.4048i
+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
C3 + C4 :
-1.6332 +1.0623i
+0.3806 +0.5363i
+0.0000 +0.0000i
+1.0000 +0.0000i
+1.0000 -0.0000i
A * (C3+C4) :
-0.0000 -0.0000i
+0.0000 -0.0000i
-0.0000 -0.0000i
-0.0000 -0.0000i
Press return to continue.