// dgtsv.cc // 実3重対角行列の線形方程式を解く #include extern "C" { void dgtsv_ ( const int& N, const int& NRHS, double* DL, double* D, double* DU, double** B, const int& LDB, int& INFO ); }; // 実 3重対角行列 A の線形方程式 A x = b を解く簡易関数 // Input: A[3][N], b[N] Output: x[N] // A[1][N] に対角成分、A[0][N] に上副対角成分、A[2][N] に下副対角成分 // template int dgtsv( double A[3][N], double x[N], double b[N] ) { int j, info; static double DL[N], D[N], DU[N]; for( j=0; j