Skip to main content

  | मौसम…

411 समाचार
Public archive edition · Attributed source reporting with original dates · AI drafts are excluded

411 REFERENCE · Wikibooks

Linear Algebra and the C Language/a0mq

Reference material by Wikibooks contributors. This retains its source identity and is not 411 news reporting.

__NOTOC__ Install and compile this file in your working directory. /* ------------------------------------ */ /* Save as : c00c.c */ /* ------------------------------------ */ #include "v_a.h" /* ------------------------------------ */ /* ------------------------------------ */ #define RA R4 #define CA C4 #define RX R4 #define CX C1 /* ------------------------------------ */ /* ------------------------------------ */ int main(void) { double a[RA*CA]={ +3, -4, -2, -1, +5, -3, -0, -2, +6, -0, -3, -2, +3, -3, -1, -3 }; double x_B[RX*CX]={ +1, +2, +3, +4 }; double b[RA*CA]={ +1, +2, +6, +6, +3, +2, +1, +6, +5, +5, +3, +6, +5, +5, +2, +4, }; double **A = ca_A_mR(a, i_mR(RA,CA)); double **B = ca_A_mR(b, i_mR(RA,CA)); double **x_b = ca_A_mR(x_B, i_mR(RX,CX)); double **invB = inv_mR(B, i_mR(RA,CA)); double **invBA = mul_mR(invB,A, i_mR(RA,CA)); double **D = mul_mR(invBA,B, i_mR(RA,CA)); double **Dx_b = mul_mR(D,x_b, i_mR(RA,CX)); clrscrn(); printf(" In the \"B\" basis\n\n" " Calculate the linear application [T(x_b)]_b = D x_b \n\n" " With D: (InvB A B)"); p_mR(D,S7,P2,C7); printf(" And x_b:"); p_mR(x_b,S7,P2,C7); printf(" [T(x_b)]_b = D x_b"); p_mR(mul_mR(D,x_b,Dx_b),S8,P2,C7); stop(); f_mR(A); f_mR(x_b); f_mR(B); f_mR(invB); f_mR(invBA); f_mR(D); f_mR(Dx_b); return 0; } /* ------------------------------------ */ /* ------------------------------------ */ Screen output example: In the "B" basis Calculate the linear application [T(x_b)]_b = D x_b With D: (InvB A B) -115.00 -89.00 -118.00 -304.00 +107.00 +82.20 +112.40 +289.20 -48.00 -37.80 -50.60 -126.80 +27.50 +22.40 +33.80 +77.40 And x_b: +1.00 +2.00 +3.00 +4.00 [T(x_b)]_b = D x_b -1863.00 +1765.40 -782.60 +483.30 Press return to continue.