16 :
public boost::python::def_visitor<
17 CholmodSimplicialLDLTVisitor<MatrixType_, UpLo_>> {
18 typedef MatrixType_ MatrixType;
19 typedef typename MatrixType::Scalar Scalar;
20 typedef typename MatrixType::RealScalar RealScalar;
22 typedef Eigen::CholmodSimplicialLDLT<MatrixType_, UpLo_> Solver;
24 template <
class PyClass>
25 void visit(PyClass &cl)
const {
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 =
39 "CholmodSimplicialLDLT_" + scalar_name<Scalar>::shortname();
43 static void expose(
const std::string &name) {
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.",