|
template<typename ProductType > |
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TriangularViewType & | _assignProduct (const ProductType &prod, const Scalar &alpha, bool beta) |
|
template<typename RhsType , typename DstType > |
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void | _solve_impl (const RhsType &rhs, DstType &dst) const |
|
EIGEN_DEVICE_FUNC Scalar | coeff (Index row, Index col) const |
|
EIGEN_DEVICE_FUNC Scalar & | coeffRef (Index row, Index col) |
|
EIGEN_DEVICE_FUNC void | fill (const Scalar &value) |
|
EIGEN_DEVICE_FUNC Index | innerStride () const |
|
template<typename OtherDerived > |
EIGEN_DEVICE_FUNC void | lazyAssign (const TriangularBase< OtherDerived > &other) |
|
template<typename OtherDerived > |
EIGEN_DEVICE_FUNC void | lazyAssign (const MatrixBase< OtherDerived > &other) |
|
template<typename OtherDerived > |
EIGEN_DEVICE_FUNC const Product< TriangularViewType, OtherDerived > | operator* (const MatrixBase< OtherDerived > &rhs) const |
|
EIGEN_DEVICE_FUNC TriangularViewType & | operator*= (const typename internal::traits< MatrixType >::Scalar &other) |
|
template<typename Other > |
EIGEN_DEVICE_FUNC TriangularViewType & | operator+= (const DenseBase< Other > &other) |
|
template<typename Other > |
EIGEN_DEVICE_FUNC TriangularViewType & | operator-= (const DenseBase< Other > &other) |
|
EIGEN_DEVICE_FUNC TriangularViewType & | operator/= (const typename internal::traits< MatrixType >::Scalar &other) |
|
template<typename OtherDerived > |
EIGEN_DEVICE_FUNC TriangularViewType & | operator= (const TriangularBase< OtherDerived > &other) |
|
template<typename OtherDerived > |
EIGEN_DEVICE_FUNC TriangularViewType & | operator= (const MatrixBase< OtherDerived > &other) |
|
EIGEN_DEVICE_FUNC TriangularViewType & | operator= (const TriangularViewImpl &other) |
|
EIGEN_DEVICE_FUNC Index | outerStride () const |
|
EIGEN_DEVICE_FUNC TriangularViewType & | setConstant (const Scalar &value) |
|
EIGEN_DEVICE_FUNC TriangularViewType & | setOnes () |
|
EIGEN_DEVICE_FUNC TriangularViewType & | setZero () |
|
template<int Side, typename Other > |
EIGEN_DEVICE_FUNC const internal::triangular_solve_retval< Side, TriangularViewType, Other > | solve (const MatrixBase< Other > &other) const |
|
template<int Side, typename OtherDerived > |
EIGEN_DEVICE_FUNC void | solveInPlace (const MatrixBase< OtherDerived > &other) const |
|
template<typename OtherDerived > |
EIGEN_DEVICE_FUNC void | solveInPlace (const MatrixBase< OtherDerived > &other) const |
|
template<typename OtherDerived > |
EIGEN_DEVICE_FUNC void | swap (TriangularBase< OtherDerived > const &other) |
|
template<typename OtherDerived > |
EIGEN_DEVICE_FUNC void | swap (MatrixBase< OtherDerived > const &other) |
|
EIGEN_DEVICE_FUNC Scalar | coeff (Index row, Index col) const |
|
EIGEN_DEVICE_FUNC Scalar & | coeffRef (Index row, Index col) |
|
EIGEN_DEVICE_FUNC Index | cols () const |
|
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void | copyCoeff (Index row, Index col, Other &other) |
|
EIGEN_DEVICE_FUNC const TriangularView< _MatrixType, _Mode > & | derived () const |
|
EIGEN_DEVICE_FUNC TriangularView< _MatrixType, _Mode > & | derived () |
|
EIGEN_DEVICE_FUNC void | evalTo (MatrixBase< DenseDerived > &other) const |
|
EIGEN_DEVICE_FUNC void | evalToLazy (MatrixBase< DenseDerived > &other) const |
|
EIGEN_DEVICE_FUNC Index | innerStride () const |
|
EIGEN_DEVICE_FUNC Scalar | operator() (Index row, Index col) const |
|
EIGEN_DEVICE_FUNC Scalar & | operator() (Index row, Index col) |
|
EIGEN_DEVICE_FUNC Index | outerStride () const |
|
void | resize (Index rows, Index cols) |
|
EIGEN_DEVICE_FUNC Index | rows () const |
|
EIGEN_DEVICE_FUNC DenseMatrixType | toDenseMatrix () const |
|
EIGEN_DEVICE_FUNC | TriangularBase () |
|
template<typename Dest > |
EIGEN_DEVICE_FUNC void | addTo (Dest &dst) const |
|
template<typename Dest > |
EIGEN_DEVICE_FUNC void | applyThisOnTheLeft (Dest &dst) const |
|
template<typename Dest > |
EIGEN_DEVICE_FUNC void | applyThisOnTheRight (Dest &dst) const |
|
EIGEN_DEVICE_FUNC Index | cols () const |
|
EIGEN_DEVICE_FUNC Derived & | const_cast_derived () const |
|
EIGEN_DEVICE_FUNC const Derived & | const_derived () const |
|
EIGEN_DEVICE_FUNC Derived & | derived () |
|
EIGEN_DEVICE_FUNC const Derived & | derived () const |
|
template<typename Dest > |
EIGEN_DEVICE_FUNC void | evalTo (Dest &dst) const |
|
EIGEN_DEVICE_FUNC Index | rows () const |
|
EIGEN_DEVICE_FUNC Index | size () const |
|
template<typename Dest > |
EIGEN_DEVICE_FUNC void | subTo (Dest &dst) const |
|
template<typename _MatrixType, unsigned int _Mode>
class Eigen::TriangularViewImpl< _MatrixType, _Mode, Dense >
Base class for a triangular part in a dense matrix.
This class is an abstract base class of class TriangularView, and objects of type TriangularViewImpl cannot be instantiated. It extends class TriangularView with additional methods which available for dense expressions only.
- See also
- class TriangularView, MatrixBase::triangularView()
Definition at line 333 of file TriangularMatrix.h.
template<typename _MatrixType , unsigned int _Mode>
template<int Side, typename Other >
- Returns
- the product of the inverse of
*this
with other, *this being triangular.
This function computes the inverse-matrix matrix product inverse(*this
) * other if Side==OnTheLeft (the default), or the right-inverse-multiply other * inverse(*this
) if Side==OnTheRight.
Note that the template parameter Side
can be ommitted, in which case Side==OnTheLeft
The matrix *this
must be triangular and invertible (i.e., all the coefficients of the diagonal must be non zero). It works as a forward (resp. backward) substitution if *this
is an upper (resp. lower) triangular matrix.
Example:
Output:
This function returns an expression of the inverse-multiply and can works in-place if it is assigned to the same matrix or vector other.
For users coming from BLAS, this function (and more specifically solveInPlace()) offer all the operations supported by the *TRSV
and *TRSM
BLAS routines.
- See also
- TriangularView::solveInPlace()