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

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 : c00a.c */ /* ------------------------------------ */ #include "v_a.h" /* ------------------------------------ */ /* ------------------------------------ */ double **X_rdefinite_negative_mR( double **A, int n ) { int r = rsize_R(A); double **Q = r_Q_mR( i_mR(r,r),n); double **QT = transpose_mR(Q, i_mR(r,r)); double **D = rpdiag_mR( i_mR(r,r),n); double **sD = smul_mR(-1,D, i_mR(r,r)); double **QsD = mul_mR(Q,sD, i_mR(r,r)); mul_mR(QsD,QT,A); f_mR(Q); f_mR(QT); f_mR(D); f_mR(sD); f_mR(QsD); return(A); } /* ------------------------------------ */ /* ------------------------------------ */ void fun(int r) { double **A = rdefinite_negative_mR( i_mR(r,r), 99); double **EValue = eigs_mR(A, i_mR(r,C1)); clrscrn(); printf(" A: Definite negative"); p_mR(A,S12,P6,C6); printf(" Eigenvalues: eigs_mR(A,EValue);"); p_mR(EValue,S9,P3,C1); f_mR(A); f_mR(EValue); } /* ------------------------------------ */ int main(void) { time_t t; srand(time(&t)); do { fun(RC4); } while(stop_w()); return 0; } /* ------------------------------------ */ /* ------------------------------------ */ Screen output example: A: Definite negative -78.330108 -4.507399 +1.932481 -6.255194 -4.507399 -96.187775 -6.213357 +3.707445 +1.932481 -6.213357 -72.667087 +3.618887 -6.255194 +3.707445 +3.618887 -76.815030 Eigenvalues: eigs_mR(A,EValue); -99.000 -85.000 -70.000 -70.000 Press return to continue Press X return to stop