5 #ifndef __eigenpy_decomposition_sparse_cholmod_cholmod_base_hpp__
6 #define __eigenpy_decomposition_sparse_cholmod_cholmod_base_hpp__
12 #include <Eigen/CholmodSupport>
16 template <
typename CholdmodDerived>
18 :
public boost::python::def_visitor<CholmodBaseVisitor<CholdmodDerived> > {
22 typedef typename MatrixType::Scalar
Scalar;
27 template <
class PyClass>
29 cl.def(
"analyzePattern", &Solver::analyzePattern,
30 bp::args(
"self",
"matrix"),
31 "Performs a symbolic decomposition on the sparcity of matrix.\n"
32 "This function is particularly useful when solving for several "
33 "problems having the same structure.")
40 bp::args(
"self",
"matrix"),
41 "Computes the sparse Cholesky decomposition of a given matrix.",
44 .def(
"determinant", &Solver::determinant, bp::arg(
"self"),
45 "Returns the determinant of the underlying matrix from the "
46 "current factorization.")
48 .def(
"factorize", &Solver::factorize, bp::args(
"self",
"matrix"),
49 "Performs a numeric decomposition of a given matrix.\n"
50 "The given matrix must has the same sparcity than the matrix on "
51 "which the symbolic decomposition has been performed.\n"
52 "See also analyzePattern().")
54 .def(
"info", &Solver::info, bp::arg(
"self"),
55 "NumericalIssue if the input contains INF or NaN values or "
56 "overflow occured. Returns Success otherwise.")
58 .def(
"logDeterminant", &Solver::logDeterminant, bp::arg(
"self"),
59 "Returns the log determinant of the underlying matrix from the "
60 "current factorization.")
62 .def(
"setShift", &Solver::setShift, (bp::args(
"self",
"offset")),
63 "Sets the shift parameters that will be used to adjust the "
64 "diagonal coefficients during the numerical factorization.\n"
65 "During the numerical factorization, the diagonal coefficients "
66 "are transformed by the following linear model: d_ii = offset + "
68 "The default is the identity transformation with offset=0.",
75 #endif // ifndef __eigenpy_decomposition_sparse_cholmod_cholmod_base_hpp__