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/a0le

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: c00e1.c */ /* ------------------------------------ */ #include "v_a.h" /* ------------------------------------ */ /* ------------------------------------ */ #define RC RC3 /* ------------------------------------ */ /* ------------------------------------ */ void fun() { double **Q = r_Q_mR( i_mR(RC,RC),9); double **u = r_mR( i_mR(RC,C1),9); double **v = r_mR( i_mR(RC,C1),9); double **Qu = mul_mR(Q,u, i_mR(RC,C1)); double **Qv = mul_mR(Q,v, i_mR(RC,C1)); clrscrn(); printf(" Q: an orthonormal matrix "); p_mR(Q, S3,P4,C6); printf(" u:"); p_mR(u, S3,P1,C6); printf(" v:"); p_mR(v, S3,P1,C6); printf(" Orthonormal matrices preserve the dot product\n\n" " Q u . Q v\t = u . v \n\n" " %.4f\t = %.4f \n\n", dot_R(Qu, Qv), dot_R(u,v)); f_mR(u); f_mR(v); f_mR(Qu); f_mR(Qv); f_mR(Q); } /* ------------------------------------ */ int main(void) { time_t t; srand(time(&t)); do { fun(); } while(stop_w()); return 0; } /* ------------------------------------ */ /* ------------------------------------ */ Screen output example: Q: an orthonormal matrix +0.1961 -0.7319 -0.6526 -0.7845 +0.2822 -0.5522 -0.5883 -0.6203 +0.5188 u: -8.0 +6.0 +5.0 v: -6.0 +8.0 -4.0 Orthonormal matrices preserve the dot product Q u . Q v = u . v 76.0000 = 76.0000 Press return to continue Press X return to stop