Eigen::SparseSolverBase< Derived > Class Template Reference

A base class for sparse solvers. More...

+ Inheritance diagram for Eigen::SparseSolverBase< Derived >:

Public Member Functions

Derived & derived ()
 
const Derived & derived () const
 
template<typename Rhs >
const Solve< Derived, Rhs > solve (const MatrixBase< Rhs > &b) const
 
template<typename Rhs >
const Solve< Derived, Rhs > solve (const SparseMatrixBase< Rhs > &b) const
 
 SparseSolverBase ()
 
 SparseSolverBase (SparseSolverBase &&other)
 
 ~SparseSolverBase ()
 

Protected Attributes

bool m_isInitialized
 

Detailed Description

template<typename Derived>
class Eigen::SparseSolverBase< Derived >

A base class for sparse solvers.

Template Parameters
Derivedthe actual type of the solver.

Definition at line 69 of file SparseSolverBase.h.

Constructor & Destructor Documentation

◆ SparseSolverBase() [1/2]

template<typename Derived >
Eigen::SparseSolverBase< Derived >::SparseSolverBase ( )
inline

Default constructor

Definition at line 74 of file SparseSolverBase.h.

75  : m_isInitialized(false)
76  {}

◆ SparseSolverBase() [2/2]

template<typename Derived >
Eigen::SparseSolverBase< Derived >::SparseSolverBase ( SparseSolverBase< Derived > &&  other)
inline

Definition at line 78 of file SparseSolverBase.h.

78 : internal::noncopyable{}, m_isInitialized{other.m_isInitialized} {}

◆ ~SparseSolverBase()

template<typename Derived >
Eigen::SparseSolverBase< Derived >::~SparseSolverBase ( )
inline

Definition at line 80 of file SparseSolverBase.h.

81  {}

Member Function Documentation

◆ derived() [1/2]

template<typename Derived >
Derived& Eigen::SparseSolverBase< Derived >::derived ( )
inline

Definition at line 83 of file SparseSolverBase.h.

83 { return *static_cast<Derived*>(this); }

◆ derived() [2/2]

template<typename Derived >
const Derived& Eigen::SparseSolverBase< Derived >::derived ( ) const
inline

Definition at line 84 of file SparseSolverBase.h.

84 { return *static_cast<const Derived*>(this); }

◆ solve() [1/2]

template<typename Derived >
template<typename Rhs >
const Solve<Derived, Rhs> Eigen::SparseSolverBase< Derived >::solve ( const MatrixBase< Rhs > &  b) const
inline
Returns
an expression of the solution x of \( A x = b \) using the current decomposition of A.
See also
compute()

Definition at line 92 of file SparseSolverBase.h.

93  {
94  eigen_assert(m_isInitialized && "Solver is not initialized.");
95  eigen_assert(derived().rows()==b.rows() && "solve(): invalid number of rows of the right hand side matrix b");
96  return Solve<Derived, Rhs>(derived(), b.derived());
97  }
Array< int, 3, 1 > b
#define eigen_assert(x)
Definition: Macros.h:902

◆ solve() [2/2]

template<typename Derived >
template<typename Rhs >
const Solve<Derived, Rhs> Eigen::SparseSolverBase< Derived >::solve ( const SparseMatrixBase< Rhs > &  b) const
inline
Returns
an expression of the solution x of \( A x = b \) using the current decomposition of A.
See also
compute()

Definition at line 105 of file SparseSolverBase.h.

106  {
107  eigen_assert(m_isInitialized && "Solver is not initialized.");
108  eigen_assert(derived().rows()==b.rows() && "solve(): invalid number of rows of the right hand side matrix b");
109  return Solve<Derived, Rhs>(derived(), b.derived());
110  }

Member Data Documentation

◆ m_isInitialized

template<typename Derived >
bool Eigen::SparseSolverBase< Derived >::m_isInitialized
mutableprotected

Definition at line 123 of file SparseSolverBase.h.


The documentation for this class was generated from the following file: