26 #ifndef CASADI_LINSOL_HPP
27 #define CASADI_LINSOL_HPP
29 #include "function.hpp"
30 #include "printable.hpp"
55 public SWIG_IF_ELSE(PrintableCommon, Printable<Linsol>) {
66 explicit Linsol(
const std::string& name,
const std::string& solver,
75 static bool test_cast(
const SharedObjectInternal* ptr);
83 static Linsol create(LinsolInternal* node);
94 static std::string
doc(
const std::string& name);
134 int sfact(
const double* A,
int mem=0)
const;
135 int nfact(
const double* A,
int mem=0)
const;
136 int solve(
const double* A,
double* x, casadi_int nrhs=1,
bool tr=
false,
int mem=0)
const;
137 casadi_int neig(
const double* A,
int mem=0)
const;
138 casadi_int rank(
const double* A,
int mem=0)
const;
142 casadi_int checkout()
const;
145 void release(
int mem)
const;
167 CASADI_EXPORT std::string
doc_linsol(
const std::string& name);
Helper class for Serialization.
Linsol(const std::string &name, const std::string &solver, const Sparsity &sp, const Dict &opts=Dict())
Constructor.
casadi_int rank(const DM &A) const
Matrix rank.
static bool has_plugin(const std::string &name)
Check if a plugin is available.
static void load_plugin(const std::string &name)
Explicitly load a plugin dynamically.
void nfact(const DM &A) const
Numeric factorization of the linear system.
Linsol()
Default constructor.
MX solve(const MX &A, const MX &B, bool tr=false) const
LinsolInternal * operator->()
Access functions of the node.
Dict stats(int mem=1) const
Get all statistics obtained at the end of the last evaluate call.
const LinsolInternal * operator->() const
static std::string doc(const std::string &name)
Get solver specific documentation.
std::string plugin_name() const
Query plugin name.
const Sparsity & sparsity() const
Get linear system sparsity.
DM solve(const DM &A, const DM &B, bool tr=false) const
static std::string type_name()
Get type name.
void sfact(const DM &A) const
Symbolic factorization of the linear system, e.g. selecting pivots.
casadi_int neig(const DM &A) const
Number of negative eigenvalues.
Sparse matrix class. SX and DM are specializations.
Helper class for Serialization.
SharedObject implements a reference counting framework similar for efficient and.
CASADI_EXPORT std::string doc_linsol(const std::string &name)
Get the documentation string for a plugin.
CASADI_EXPORT bool has_linsol(const std::string &name)
Check if a particular plugin is available.
GenericType::Dict Dict
C++ equivalent of Python's dict or MATLAB's struct.
CASADI_EXPORT void load_linsol(const std::string &name)
Explicitly load a plugin dynamically.