Cholmod.cpp
1 #include "SeldonFlag.hxx"
2 
3 #include "SeldonSolverHeader.hxx"
4 #include "SeldonSolverInline.hxx"
5 
6 #ifndef SELDON_WITH_COMPILED_LIBRARY
7 #include "computation/interfaces/direct/Cholmod.cxx"
8 #endif
9 
10 namespace Seldon
11 {
12  SELDON_EXTERN template void GetCholesky(Matrix<Real_wp, Symmetric, ArrayRowSymSparse>&, MatrixCholmod&, bool);
13  SELDON_EXTERN template void GetCholesky(Matrix<Real_wp, Symmetric, RowSymSparse>&, MatrixCholmod&, bool);
14 
15  SELDON_EXTERN template void SolveCholesky(const SeldonTranspose&, MatrixCholmod&, Vector<Real_wp>&);
16  SELDON_EXTERN template void MltCholesky(const SeldonTranspose&, MatrixCholmod&, Vector<Real_wp>&);
17 
18  SELDON_EXTERN template void MatrixCholmod::Solve(const SeldonTranspose&, Vector<Real_wp>&);
19  SELDON_EXTERN template void MatrixCholmod::Mlt(const SeldonTranspose&, Vector<Real_wp>&);
20 
21  SELDON_EXTERN template void MatrixCholmod::FactorizeMatrix(Matrix<Real_wp, Symmetric, ArrayRowSymSparse>&, bool);
22 
23 }
24 
25 
26 
Seldon::MatrixCholmod::Solve
void Solve(const SeldonTranspose &TransA, Vector< double, VectFull, Allocator > &x)
Solves L x = b or L^T x = b.
Definition: Cholmod.cxx:147
Seldon::MatrixCholmod::Mlt
void Mlt(const SeldonTranspose &TransA, Vector< double, VectFull, Allocator > &x)
Performs the matrix vector product y = L X or y = L^T X.
Definition: Cholmod.cxx:190
Seldon
Seldon namespace.
Definition: Array.cxx:24