6 #ifndef _LA_TRIDIAG_FACT_DOUBLE_H_ 7 #define _LA_TRIDIAG_FACT_DOUBLE_H_ 9 #include LA_VECTOR_LONG_INT_H 10 #include LA_TRIDIAG_MAT_DOUBLE_H 17 LaTridiagMatDouble
T_;
29 LaTridiagMatDouble&
T() {
return T_; }
32 LaVectorDouble
diag(
int);
110 integer N = A.size(), info = 0;
112 double *DL = &AF.
diag(-1)(0), *D = &AF.
diag(0)(0),
113 *DU = &AF.
diag(1)(0), *DU2 = &AF.
diag(2)(0);
127 integer N = AF.
size(), nrhs = X.size(1), ldb = B.size(0), info = 0;
128 double *DL = &AF.
diag(-1)(0), *D = &AF.
diag(0)(0),
129 *DU = &AF.
diag(1)(0), *DU2 = &AF.
diag(2)(0);
133 &X(0,0), &ldb, &info);
void F77NAME() dgttrs(char *trans, integer *N, integer *nrhs, doublereal *DL, doublereal *D, doublereal *DU, doublereal *DU2, integer *ipiv, doublereal *b, integer *ldb, integer *info)
void LaTridiagMatFactorize(LaTridiagMatDouble &A, LaTridiagFactDouble &AF)
LaVectorLongInt & pivot()
void LaLinearSolve(LaTridiagFactDouble &AF, LaGenMatDouble &X, LaGenMatDouble &B)
LaTridiagFactDouble & ref(LaTridiagMatDouble &)
void F77NAME() dgttrf(integer *N, doublereal *DL, doublereal *D, doublereal *DU, doublereal *DU2, integer *ipiv, integer *info)
LaTridiagFactDouble & copy(const LaTridiagMatDouble &)