![]() |
|
A base class for matrix decomposition and solvers. More...
#include <SolverBase.h>
Public Types | |
enum | { RowsAtCompileTime = internal::traits<Derived>::RowsAtCompileTime , ColsAtCompileTime = internal::traits<Derived>::ColsAtCompileTime , SizeAtCompileTime = (internal::size_of_xpr_at_compile_time<Derived>::ret) , MaxRowsAtCompileTime = internal::traits<Derived>::MaxRowsAtCompileTime , MaxColsAtCompileTime = internal::traits<Derived>::MaxColsAtCompileTime , MaxSizeAtCompileTime , IsVectorAtCompileTime , NumDimensions } |
typedef EigenBase< Derived > | Base |
typedef internal::traits< Derived >::Scalar | Scalar |
typedef Scalar | CoeffReturnType |
typedef Transpose< const Derived > | ConstTransposeReturnType |
typedef std::conditional_t< NumTraits< Scalar >::IsComplex, CwiseUnaryOp< internal::scalar_conjugate_op< Scalar >, const ConstTransposeReturnType >, const ConstTransposeReturnType > | AdjointReturnType |
![]() | |
typedef Eigen::Index | Index |
The interface type of indices. More... | |
typedef internal::traits< Derived >::StorageKind | StorageKind |
Public Member Functions | |
SolverBase () | |
~SolverBase () | |
template<typename Rhs > | |
const Solve< Derived, Rhs > | solve (const MatrixBase< Rhs > &b) const |
const ConstTransposeReturnType | transpose () const |
const AdjointReturnType | adjoint () const |
constexpr EIGEN_DEVICE_FUNC Derived & | derived () |
constexpr EIGEN_DEVICE_FUNC const Derived & | derived () const |
![]() | |
constexpr EIGEN_DEVICE_FUNC Derived & | derived () |
constexpr EIGEN_DEVICE_FUNC const Derived & | derived () const |
EIGEN_DEVICE_FUNC Derived & | const_cast_derived () const |
EIGEN_DEVICE_FUNC const Derived & | const_derived () const |
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index | rows () const EIGEN_NOEXCEPT |
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index | cols () const EIGEN_NOEXCEPT |
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index | size () const EIGEN_NOEXCEPT |
template<typename Dest > | |
EIGEN_DEVICE_FUNC void | evalTo (Dest &dst) const |
template<typename Dest > | |
EIGEN_DEVICE_FUNC void | addTo (Dest &dst) const |
template<typename Dest > | |
EIGEN_DEVICE_FUNC void | subTo (Dest &dst) const |
template<typename Dest > | |
EIGEN_DEVICE_FUNC void | applyThisOnTheRight (Dest &dst) const |
template<typename Dest > | |
EIGEN_DEVICE_FUNC void | applyThisOnTheLeft (Dest &dst) const |
template<typename Device > | |
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE DeviceWrapper< Derived, Device > | device (Device &device) |
template<typename Device > | |
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE DeviceWrapper< const Derived, Device > | device (Device &device) const |
Protected Member Functions | |
template<bool Transpose_, typename Rhs > | |
void | _check_solve_assertion (const Rhs &b) const |
Friends | |
template<typename Derived_ > | |
struct | internal::solve_assertion |
A base class for matrix decomposition and solvers.
Derived | the actual type of the decomposition/solver. |
Any matrix decomposition inheriting this base class provide the following API:
typedef std::conditional_t<NumTraits<Scalar>::IsComplex, CwiseUnaryOp<internal::scalar_conjugate_op<Scalar>, const ConstTransposeReturnType>, const ConstTransposeReturnType> Eigen::SolverBase< Derived >::AdjointReturnType |
the return type of adjoint()
typedef EigenBase<Derived> Eigen::SolverBase< Derived >::Base |
typedef Scalar Eigen::SolverBase< Derived >::CoeffReturnType |
typedef Transpose<const Derived> Eigen::SolverBase< Derived >::ConstTransposeReturnType |
the return type of transpose()
typedef internal::traits<Derived>::Scalar Eigen::SolverBase< Derived >::Scalar |
anonymous enum |
Enumerator | |
---|---|
RowsAtCompileTime | |
ColsAtCompileTime | |
SizeAtCompileTime | |
MaxRowsAtCompileTime | |
MaxColsAtCompileTime | |
MaxSizeAtCompileTime | |
IsVectorAtCompileTime | |
NumDimensions |
|
inline |
|
inline |
|
inlineprotected |
References b, Eigen::EigenBase< Derived >::cols(), Eigen::SolverBase< Derived >::derived(), eigen_assert, EIGEN_ONLY_USED_FOR_DEBUG, and Eigen::EigenBase< Derived >::rows().
|
inline |
A typical usage is to solve for the adjoint problem A' x = b:
For real scalar types, this function is equivalent to transpose().
References Eigen::SolverBase< Derived >::derived(), and Eigen::SolverBase< Derived >::transpose().
Referenced by lu_verify_assert().
|
inlineconstexpr |
Referenced by Eigen::SolverBase< Derived >::_check_solve_assertion(), Eigen::SolverBase< Derived >::adjoint(), Eigen::SolverBase< Derived >::solve(), and Eigen::SolverBase< Derived >::transpose().
|
inlineconstexpr |
|
inline |
References b, and Eigen::SolverBase< Derived >::derived().
Referenced by cholesky(), cholesky_verify_assert(), ctms_decompositions(), Eigen::internal::idrs(), Eigen::internal::idrstabl(), lu_partial_piv(), lu_verify_assert(), and test_sparseqr_scalar().
|
inline |
A typical usage is to solve for the transposed problem A^T x = b:
References Eigen::SolverBase< Derived >::derived().
Referenced by Eigen::SolverBase< Derived >::adjoint(), cholesky_verify_assert(), and lu_verify_assert().
|
friend |