5 #ifndef __eigenpy_decomposition_sparse_cholmod_cholmod_simplicial_ldlt_hpp__
6 #define __eigenpy_decomposition_sparse_cholmod_cholmod_simplicial_ldlt_hpp__
14 template <
typename MatrixType_,
int UpLo_ = Eigen::Lower>
16 :
public boost::python::def_visitor<
17 CholmodSimplicialLDLTVisitor<MatrixType_, UpLo_> > {
19 typedef typename MatrixType::Scalar
Scalar;
22 typedef Eigen::CholmodSimplicialLDLT<MatrixType_, UpLo_>
Solver;
24 template <
class PyClass>
29 .def(bp::init<>(bp::arg(
"self"),
"Default constructor"))
30 .def(bp::init<MatrixType>(bp::args(
"self",
"matrix"),
31 "Constructs and performs the LDLT "
32 "factorization from a given matrix."))
38 static const std::string classname =
44 bp::class_<Solver, boost::noncopyable>(
46 "A simplicial direct Cholesky (LDLT) factorization and solver based on "
48 "This class allows to solve for A.X = B sparse linear problems via a "
49 "simplicial LL^T Cholesky factorization using the Cholmod library."
50 "This simplicial variant is equivalent to Eigen's built-in "
51 "SimplicialLDLT class."
52 "Therefore, it has little practical interest. The sparse matrix A must "
53 "be selfadjoint and positive definite."
54 "The vectors or matrices X and B can be either dense or sparse.",