Public Types | Public Member Functions | Protected Attributes | Friends | List of all members
Eigen::SelfAdjointView< _MatrixType, UpLo > Class Template Reference

Expression of a selfadjoint matrix from a triangular part of a dense matrix. More...

#include <SelfAdjointView.h>

Inheritance diagram for Eigen::SelfAdjointView< _MatrixType, UpLo >:
Inheritance graph
[legend]

Public Types

enum  { Mode = internal::traits<SelfAdjointView>::Mode, Flags = internal::traits<SelfAdjointView>::Flags, TransposeMode = ((int(Mode) & int(Upper)) ? Lower : 0) | ((int(Mode) & int(Lower)) ? Upper : 0) }
 
typedef SelfAdjointView< const typename MatrixType::AdjointReturnType, TransposeModeAdjointReturnType
 
typedef TriangularBase< SelfAdjointViewBase
 
typedef SelfAdjointView< const MatrixConjugateReturnType, UpLo > ConjugateReturnType
 
typedef SelfAdjointView< typename internal::add_const< MatrixType >::type, UpLo > ConstSelfAdjointView
 
typedef SelfAdjointView< const typename MatrixType::ConstTransposeReturnType, TransposeModeConstTransposeReturnType
 
typedef Matrix< RealScalar, internal::traits< MatrixType >::ColsAtCompileTime, 1 > EigenvaluesReturnType
 
typedef internal::remove_all< typename MatrixType::ConjugateReturnType >::type MatrixConjugateReturnType
 
typedef _MatrixType MatrixType
 
typedef internal::traits< SelfAdjointView >::MatrixTypeNested MatrixTypeNested
 
typedef internal::traits< SelfAdjointView >::MatrixTypeNestedCleaned MatrixTypeNestedCleaned
 
typedef MatrixTypeNestedCleaned NestedExpression
 
typedef MatrixType::PlainObject PlainObject
 
typedef NumTraits< Scalar >::Real RealScalar
 
typedef internal::traits< SelfAdjointView >::Scalar Scalar
 The type of coefficients in this matrix. More...
 
typedef MatrixType::StorageIndex StorageIndex
 
typedef SelfAdjointView< typename MatrixType::TransposeReturnType, TransposeModeTransposeReturnType
 
- Public Types inherited from Eigen::TriangularBase< SelfAdjointView< _MatrixType, UpLo > >
enum  
 
typedef internal::traits< SelfAdjointView< _MatrixType, UpLo > >::FullMatrixType DenseMatrixType
 
typedef DenseMatrixType DenseType
 
typedef SelfAdjointView< _MatrixType, UpLo > const & Nested
 
typedef internal::traits< SelfAdjointView< _MatrixType, UpLo > >::Scalar Scalar
 
typedef internal::traits< SelfAdjointView< _MatrixType, UpLo > >::StorageIndex StorageIndex
 
typedef internal::traits< SelfAdjointView< _MatrixType, UpLo > >::StorageKind StorageKind
 
- Public Types inherited from Eigen::EigenBase< Derived >
typedef Eigen::Index Index
 The interface type of indices. More...
 
typedef internal::traits< Derived >::StorageKind StorageKind
 

Public Member Functions

EIGEN_DEVICE_FUNC const MatrixTypeNestedCleaned_expression () const
 
EIGEN_DEVICE_FUNC const AdjointReturnType adjoint () const
 
EIGEN_DEVICE_FUNC Scalar coeff (Index row, Index col) const
 
EIGEN_DEVICE_FUNC ScalarcoeffRef (Index row, Index col)
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index cols () const EIGEN_NOEXCEPT
 
EIGEN_DEVICE_FUNC const ConjugateReturnType conjugate () const
 
template<bool Cond>
EIGEN_DEVICE_FUNC internal::conditional< Cond, ConjugateReturnType, ConstSelfAdjointView >::type conjugateIf () const
 
EIGEN_DEVICE_FUNC MatrixType::ConstDiagonalReturnType diagonal () const
 
EIGEN_DEVICE_FUNC EigenvaluesReturnType eigenvalues () const
 Computes the eigenvalues of a matrix. More...
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index innerStride () const EIGEN_NOEXCEPT
 
const LDLT< PlainObject, UpLo > ldlt () const
 
const LLT< PlainObject, UpLo > llt () const
 
EIGEN_DEVICE_FUNC const MatrixTypeNestedCleanednestedExpression () const
 
EIGEN_DEVICE_FUNC MatrixTypeNestedCleanednestedExpression ()
 
template<typename OtherDerived >
EIGEN_DEVICE_FUNC const Product< SelfAdjointView, OtherDerived > operator* (const MatrixBase< OtherDerived > &rhs) const
 
EIGEN_DEVICE_FUNC RealScalar operatorNorm () const
 Computes the L2 operator norm. More...
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index outerStride () const EIGEN_NOEXCEPT
 
template<typename DerivedU , typename DerivedV >
EIGEN_DEVICE_FUNC SelfAdjointView< MatrixType, UpLo > & rankUpdate (const MatrixBase< DerivedU > &u, const MatrixBase< DerivedV > &v, const Scalar &alpha)
 
template<typename DerivedU >
EIGEN_DEVICE_FUNC SelfAdjointView< MatrixType, UpLo > & rankUpdate (const MatrixBase< DerivedU > &u, const Scalar &alpha)
 
template<typename DerivedU , typename DerivedV >
EIGEN_DEVICE_FUNC SelfAdjointViewrankUpdate (const MatrixBase< DerivedU > &u, const MatrixBase< DerivedV > &v, const Scalar &alpha=Scalar(1))
 
template<typename DerivedU >
EIGEN_DEVICE_FUNC SelfAdjointViewrankUpdate (const MatrixBase< DerivedU > &u, const Scalar &alpha=Scalar(1))
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index rows () const EIGEN_NOEXCEPT
 
EIGEN_DEVICE_FUNC SelfAdjointView (MatrixType &matrix)
 
EIGEN_DEVICE_FUNC TransposeReturnType transpose ()
 
EIGEN_DEVICE_FUNC const ConstTransposeReturnType transpose () const
 
template<unsigned int TriMode>
EIGEN_DEVICE_FUNC internal::conditional<(TriMode &(Upper|Lower))==(UpLo &(Upper|Lower)), TriangularView< MatrixType, TriMode >, TriangularView< typename MatrixType::AdjointReturnType, TriMode > >::type triangularView () const
 
- Public Member Functions inherited from Eigen::TriangularBase< SelfAdjointView< _MatrixType, UpLo > >
EIGEN_DEVICE_FUNC Scalar coeff (Index row, Index col) const
 
EIGEN_DEVICE_FUNC ScalarcoeffRef (Index row, Index col)
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index cols () const EIGEN_NOEXCEPT
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void copyCoeff (Index row, Index col, Other &other)
 
EIGEN_DEVICE_FUNC const SelfAdjointView< _MatrixType, UpLo > & derived () const
 
EIGEN_DEVICE_FUNC SelfAdjointView< _MatrixType, UpLo > & derived ()
 
EIGEN_DEVICE_FUNC void evalTo (MatrixBase< DenseDerived > &other) const
 
EIGEN_DEVICE_FUNC void evalToLazy (MatrixBase< DenseDerived > &other) const
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index innerStride () const EIGEN_NOEXCEPT
 
EIGEN_DEVICE_FUNC Scalar operator() (Index row, Index col) const
 
EIGEN_DEVICE_FUNC Scalaroperator() (Index row, Index col)
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index outerStride () const EIGEN_NOEXCEPT
 
EIGEN_DEVICE_FUNC void resize (Index rows, Index cols)
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index rows () const EIGEN_NOEXCEPT
 
EIGEN_DEVICE_FUNC DenseMatrixType toDenseMatrix () const
 
EIGEN_DEVICE_FUNC TriangularBase ()
 
- Public Member Functions inherited from Eigen::EigenBase< Derived >
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 EIGEN_CONSTEXPR Index cols () const EIGEN_NOEXCEPT
 
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 EIGEN_CONSTEXPR Index rows () const EIGEN_NOEXCEPT
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index size () const EIGEN_NOEXCEPT
 
template<typename Dest >
EIGEN_DEVICE_FUNC void subTo (Dest &dst) const
 

Protected Attributes

MatrixTypeNested m_matrix
 

Friends

template<typename OtherDerived >
EIGEN_DEVICE_FUNC const Product< OtherDerived, SelfAdjointViewoperator* (const MatrixBase< OtherDerived > &lhs, const SelfAdjointView &rhs)
 
EIGEN_DEVICE_FUNC const SelfAdjointView< const EIGEN_SCALAR_BINARYOP_EXPR_RETURN_TYPE(Scalar, MatrixType, product), UpLo > operator* (const Scalar &s, const SelfAdjointView &mat)
 

Additional Inherited Members

- Protected Member Functions inherited from Eigen::TriangularBase< SelfAdjointView< _MatrixType, UpLo > >
void check_coordinates (Index row, Index col) const
 
void check_coordinates_internal (Index, Index) const
 

Detailed Description

template<typename _MatrixType, unsigned int UpLo>
class Eigen::SelfAdjointView< _MatrixType, UpLo >

Expression of a selfadjoint matrix from a triangular part of a dense matrix.

Parameters
MatrixTypethe type of the dense matrix storing the coefficients
TriangularPartcan be either Lower or Upper

This class is an expression of a sefladjoint matrix from a triangular part of a matrix with given dense storage of the coefficients. It is the return type of MatrixBase::selfadjointView() and most of the time this is the only way that it is used.

See also
class TriangularBase, MatrixBase::selfadjointView()

Definition at line 49 of file SelfAdjointView.h.

Member Typedef Documentation

◆ AdjointReturnType

template<typename _MatrixType, unsigned int UpLo>
typedef SelfAdjointView<const typename MatrixType::AdjointReturnType,TransposeMode> Eigen::SelfAdjointView< _MatrixType, UpLo >::AdjointReturnType

Definition at line 213 of file SelfAdjointView.h.

◆ Base

template<typename _MatrixType, unsigned int UpLo>
typedef TriangularBase<SelfAdjointView> Eigen::SelfAdjointView< _MatrixType, UpLo >::Base

Definition at line 55 of file SelfAdjointView.h.

◆ ConjugateReturnType

template<typename _MatrixType, unsigned int UpLo>
typedef SelfAdjointView<const MatrixConjugateReturnType,UpLo> Eigen::SelfAdjointView< _MatrixType, UpLo >::ConjugateReturnType

Definition at line 195 of file SelfAdjointView.h.

◆ ConstSelfAdjointView

template<typename _MatrixType, unsigned int UpLo>
typedef SelfAdjointView<typename internal::add_const<MatrixType>::type, UpLo> Eigen::SelfAdjointView< _MatrixType, UpLo >::ConstSelfAdjointView

Definition at line 64 of file SelfAdjointView.h.

◆ ConstTransposeReturnType

template<typename _MatrixType, unsigned int UpLo>
typedef SelfAdjointView<const typename MatrixType::ConstTransposeReturnType,TransposeMode> Eigen::SelfAdjointView< _MatrixType, UpLo >::ConstTransposeReturnType

Definition at line 229 of file SelfAdjointView.h.

◆ EigenvaluesReturnType

template<typename _MatrixType, unsigned int UpLo>
typedef Matrix<RealScalar, internal::traits<MatrixType>::ColsAtCompileTime, 1> Eigen::SelfAdjointView< _MatrixType, UpLo >::EigenvaluesReturnType

Return type of eigenvalues()

Definition at line 258 of file SelfAdjointView.h.

◆ MatrixConjugateReturnType

template<typename _MatrixType, unsigned int UpLo>
typedef internal::remove_all<typename MatrixType::ConjugateReturnType>::type Eigen::SelfAdjointView< _MatrixType, UpLo >::MatrixConjugateReturnType

Definition at line 63 of file SelfAdjointView.h.

◆ MatrixType

template<typename _MatrixType, unsigned int UpLo>
typedef _MatrixType Eigen::SelfAdjointView< _MatrixType, UpLo >::MatrixType

Definition at line 54 of file SelfAdjointView.h.

◆ MatrixTypeNested

template<typename _MatrixType, unsigned int UpLo>
typedef internal::traits<SelfAdjointView>::MatrixTypeNested Eigen::SelfAdjointView< _MatrixType, UpLo >::MatrixTypeNested

Definition at line 56 of file SelfAdjointView.h.

◆ MatrixTypeNestedCleaned

template<typename _MatrixType, unsigned int UpLo>
typedef internal::traits<SelfAdjointView>::MatrixTypeNestedCleaned Eigen::SelfAdjointView< _MatrixType, UpLo >::MatrixTypeNestedCleaned

Definition at line 57 of file SelfAdjointView.h.

◆ NestedExpression

template<typename _MatrixType, unsigned int UpLo>
typedef MatrixTypeNestedCleaned Eigen::SelfAdjointView< _MatrixType, UpLo >::NestedExpression

Definition at line 58 of file SelfAdjointView.h.

◆ PlainObject

template<typename _MatrixType, unsigned int UpLo>
typedef MatrixType::PlainObject Eigen::SelfAdjointView< _MatrixType, UpLo >::PlainObject

Definition at line 71 of file SelfAdjointView.h.

◆ RealScalar

template<typename _MatrixType, unsigned int UpLo>
typedef NumTraits<Scalar>::Real Eigen::SelfAdjointView< _MatrixType, UpLo >::RealScalar

Real part of Scalar

Definition at line 256 of file SelfAdjointView.h.

◆ Scalar

template<typename _MatrixType, unsigned int UpLo>
typedef internal::traits<SelfAdjointView>::Scalar Eigen::SelfAdjointView< _MatrixType, UpLo >::Scalar

The type of coefficients in this matrix.

Definition at line 61 of file SelfAdjointView.h.

◆ StorageIndex

template<typename _MatrixType, unsigned int UpLo>
typedef MatrixType::StorageIndex Eigen::SelfAdjointView< _MatrixType, UpLo >::StorageIndex

Definition at line 62 of file SelfAdjointView.h.

◆ TransposeReturnType

template<typename _MatrixType, unsigned int UpLo>
typedef SelfAdjointView<typename MatrixType::TransposeReturnType,TransposeMode> Eigen::SelfAdjointView< _MatrixType, UpLo >::TransposeReturnType

Definition at line 219 of file SelfAdjointView.h.

Member Enumeration Documentation

◆ anonymous enum

template<typename _MatrixType, unsigned int UpLo>
anonymous enum
Enumerator
Mode 
Flags 
TransposeMode 

Definition at line 66 of file SelfAdjointView.h.

Constructor & Destructor Documentation

◆ SelfAdjointView()

template<typename _MatrixType, unsigned int UpLo>
EIGEN_DEVICE_FUNC Eigen::SelfAdjointView< _MatrixType, UpLo >::SelfAdjointView ( MatrixType matrix)
inlineexplicit

Definition at line 74 of file SelfAdjointView.h.

Member Function Documentation

◆ _expression()

template<typename _MatrixType, unsigned int UpLo>
EIGEN_DEVICE_FUNC const MatrixTypeNestedCleaned& Eigen::SelfAdjointView< _MatrixType, UpLo >::_expression ( ) const
inline

Definition at line 111 of file SelfAdjointView.h.

◆ adjoint()

template<typename _MatrixType, unsigned int UpLo>
EIGEN_DEVICE_FUNC const AdjointReturnType Eigen::SelfAdjointView< _MatrixType, UpLo >::adjoint ( ) const
inline
See also
MatrixBase::adjoint() const

Definition at line 216 of file SelfAdjointView.h.

◆ coeff()

template<typename _MatrixType, unsigned int UpLo>
EIGEN_DEVICE_FUNC Scalar Eigen::SelfAdjointView< _MatrixType, UpLo >::coeff ( Index  row,
Index  col 
) const
inline
See also
MatrixBase::coeff()
Warning
the coordinates must fit into the referenced triangular part

Definition at line 92 of file SelfAdjointView.h.

◆ coeffRef()

template<typename _MatrixType, unsigned int UpLo>
EIGEN_DEVICE_FUNC Scalar& Eigen::SelfAdjointView< _MatrixType, UpLo >::coeffRef ( Index  row,
Index  col 
)
inline
See also
MatrixBase::coeffRef()
Warning
the coordinates must fit into the referenced triangular part

Definition at line 102 of file SelfAdjointView.h.

◆ cols()

template<typename _MatrixType, unsigned int UpLo>
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index Eigen::SelfAdjointView< _MatrixType, UpLo >::cols ( void  ) const
inline

Definition at line 82 of file SelfAdjointView.h.

◆ conjugate()

template<typename _MatrixType, unsigned int UpLo>
EIGEN_DEVICE_FUNC const ConjugateReturnType Eigen::SelfAdjointView< _MatrixType, UpLo >::conjugate ( void  ) const
inline
See also
MatrixBase::conjugate() const

Definition at line 198 of file SelfAdjointView.h.

◆ conjugateIf()

template<typename _MatrixType, unsigned int UpLo>
template<bool Cond>
EIGEN_DEVICE_FUNC internal::conditional<Cond,ConjugateReturnType,ConstSelfAdjointView>::type Eigen::SelfAdjointView< _MatrixType, UpLo >::conjugateIf ( ) const
inline
Returns
an expression of the complex conjugate of *this if Cond==true, returns *this otherwise.

Definition at line 207 of file SelfAdjointView.h.

◆ diagonal()

template<typename _MatrixType, unsigned int UpLo>
EIGEN_DEVICE_FUNC MatrixType::ConstDiagonalReturnType Eigen::SelfAdjointView< _MatrixType, UpLo >::diagonal ( ) const
inline
Returns
a const expression of the main diagonal of the matrix *this

This method simply returns the diagonal of the nested expression, thus by-passing the SelfAdjointView decorator.

See also
MatrixBase::diagonal(), class Diagonal

Definition at line 243 of file SelfAdjointView.h.

◆ eigenvalues()

template<typename MatrixType , unsigned int UpLo>
EIGEN_DEVICE_FUNC SelfAdjointView< MatrixType, UpLo >::EigenvaluesReturnType Eigen::SelfAdjointView< MatrixType, UpLo >::eigenvalues ( ) const
inline

Computes the eigenvalues of a matrix.

Returns
Column vector containing the eigenvalues.

This function computes the eigenvalues with the help of the SelfAdjointEigenSolver class. The eigenvalues are repeated according to their algebraic multiplicity, so there are as many eigenvalues as rows in the matrix.

Example:

MatrixXd ones = MatrixXd::Ones(3,3);
VectorXd eivals = ones.selfadjointView<Lower>().eigenvalues();
cout << "The eigenvalues of the 3x3 matrix of ones are:" << endl << eivals << endl;

Output:

See also
SelfAdjointEigenSolver::eigenvalues(), MatrixBase::eigenvalues()

Definition at line 88 of file MatrixBaseEigenvalues.h.

◆ innerStride()

template<typename _MatrixType, unsigned int UpLo>
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index Eigen::SelfAdjointView< _MatrixType, UpLo >::innerStride ( ) const
inline

Definition at line 86 of file SelfAdjointView.h.

◆ ldlt()

template<typename MatrixType , unsigned int UpLo>
const LDLT< typename SelfAdjointView< MatrixType, UpLo >::PlainObject, UpLo > Eigen::SelfAdjointView< MatrixType, UpLo >::ldlt ( ) const
inline
Returns
the Cholesky decomposition with full pivoting without square root of *this
See also
MatrixBase::ldlt()

Definition at line 670 of file LDLT.h.

◆ llt()

template<typename MatrixType , unsigned int UpLo>
const LLT< typename SelfAdjointView< MatrixType, UpLo >::PlainObject, UpLo > Eigen::SelfAdjointView< MatrixType, UpLo >::llt ( ) const
inline
Returns
the LLT decomposition of *this
See also
SelfAdjointView::llt()

Definition at line 551 of file LLT.h.

◆ nestedExpression() [1/2]

template<typename _MatrixType, unsigned int UpLo>
EIGEN_DEVICE_FUNC const MatrixTypeNestedCleaned& Eigen::SelfAdjointView< _MatrixType, UpLo >::nestedExpression ( ) const
inline

Definition at line 114 of file SelfAdjointView.h.

◆ nestedExpression() [2/2]

template<typename _MatrixType, unsigned int UpLo>
EIGEN_DEVICE_FUNC MatrixTypeNestedCleaned& Eigen::SelfAdjointView< _MatrixType, UpLo >::nestedExpression ( )
inline

Definition at line 116 of file SelfAdjointView.h.

◆ operator*()

template<typename _MatrixType, unsigned int UpLo>
template<typename OtherDerived >
EIGEN_DEVICE_FUNC const Product<SelfAdjointView,OtherDerived> Eigen::SelfAdjointView< _MatrixType, UpLo >::operator* ( const MatrixBase< OtherDerived > &  rhs) const
inline

Efficient triangular matrix times vector/matrix product

Definition at line 122 of file SelfAdjointView.h.

◆ operatorNorm()

template<typename MatrixType , unsigned int UpLo>
EIGEN_DEVICE_FUNC SelfAdjointView< MatrixType, UpLo >::RealScalar Eigen::SelfAdjointView< MatrixType, UpLo >::operatorNorm ( ) const
inline

Computes the L2 operator norm.

Returns
Operator norm of the matrix.

This function computes the L2 operator norm of a self-adjoint matrix. For a self-adjoint matrix, the operator norm is the largest eigenvalue.

The current implementation uses the eigenvalues of the matrix, as computed by eigenvalues(), to compute the operator norm of the matrix.

Example:

MatrixXd ones = MatrixXd::Ones(3,3);
cout << "The operator norm of the 3x3 matrix of ones is "
<< ones.selfadjointView<Lower>().operatorNorm() << endl;

Output:

See also
eigenvalues(), MatrixBase::operatorNorm()

Definition at line 151 of file MatrixBaseEigenvalues.h.

◆ outerStride()

template<typename _MatrixType, unsigned int UpLo>
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index Eigen::SelfAdjointView< _MatrixType, UpLo >::outerStride ( ) const
inline

Definition at line 84 of file SelfAdjointView.h.

◆ rankUpdate() [1/4]

template<typename _MatrixType, unsigned int UpLo>
template<typename DerivedU , typename DerivedV >
EIGEN_DEVICE_FUNC SelfAdjointView<MatrixType,UpLo>& Eigen::SelfAdjointView< _MatrixType, UpLo >::rankUpdate ( const MatrixBase< DerivedU > &  u,
const MatrixBase< DerivedV > &  v,
const Scalar alpha 
)

Definition at line 62 of file SelfadjointRank2Update.h.

◆ rankUpdate() [2/4]

template<typename _MatrixType, unsigned int UpLo>
template<typename DerivedU >
EIGEN_DEVICE_FUNC SelfAdjointView<MatrixType,UpLo>& Eigen::SelfAdjointView< _MatrixType, UpLo >::rankUpdate ( const MatrixBase< DerivedU > &  u,
const Scalar alpha 
)

Definition at line 124 of file SelfadjointProduct.h.

◆ rankUpdate() [3/4]

template<typename _MatrixType, unsigned int UpLo>
template<typename DerivedU , typename DerivedV >
EIGEN_DEVICE_FUNC SelfAdjointView& Eigen::SelfAdjointView< _MatrixType, UpLo >::rankUpdate ( const MatrixBase< DerivedU > &  u,
const MatrixBase< DerivedV > &  v,
const Scalar alpha = Scalar(1) 
)

Perform a symmetric rank 2 update of the selfadjoint matrix *this: $ this = this + \alpha u v^* + conj(\alpha) v u^* $

Returns
a reference to *this

The vectors u and v must be column vectors, however they can be a adjoint expression without any overhead. Only the meaningful triangular part of the matrix is updated, the rest is left unchanged.

See also
rankUpdate(const MatrixBase<DerivedU>&, Scalar)

◆ rankUpdate() [4/4]

template<typename _MatrixType, unsigned int UpLo>
template<typename DerivedU >
EIGEN_DEVICE_FUNC SelfAdjointView& Eigen::SelfAdjointView< _MatrixType, UpLo >::rankUpdate ( const MatrixBase< DerivedU > &  u,
const Scalar alpha = Scalar(1) 
)

Perform a symmetric rank K update of the selfadjoint matrix *this: $ this = this + \alpha ( u u^* ) $ where u is a vector or matrix.

Returns
a reference to *this

Note that to perform $ this = this + \alpha ( u^* u ) $ you can simply call this function with u.adjoint().

See also
rankUpdate(const MatrixBase<DerivedU>&, const MatrixBase<DerivedV>&, Scalar)

◆ rows()

template<typename _MatrixType, unsigned int UpLo>
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index Eigen::SelfAdjointView< _MatrixType, UpLo >::rows ( void  ) const
inline

Definition at line 80 of file SelfAdjointView.h.

◆ transpose() [1/2]

template<typename _MatrixType, unsigned int UpLo>
EIGEN_DEVICE_FUNC TransposeReturnType Eigen::SelfAdjointView< _MatrixType, UpLo >::transpose ( )
inline
See also
MatrixBase::transpose()

Definition at line 222 of file SelfAdjointView.h.

◆ transpose() [2/2]

template<typename _MatrixType, unsigned int UpLo>
EIGEN_DEVICE_FUNC const ConstTransposeReturnType Eigen::SelfAdjointView< _MatrixType, UpLo >::transpose ( ) const
inline
See also
MatrixBase::transpose() const

Definition at line 232 of file SelfAdjointView.h.

◆ triangularView()

template<typename _MatrixType, unsigned int UpLo>
template<unsigned int TriMode>
EIGEN_DEVICE_FUNC internal::conditional<(TriMode&(Upper|Lower))==(UpLo&(Upper|Lower)), TriangularView<MatrixType,TriMode>, TriangularView<typename MatrixType::AdjointReturnType,TriMode> >::type Eigen::SelfAdjointView< _MatrixType, UpLo >::triangularView ( ) const
inline
Returns
an expression of a triangular view extracted from the current selfadjoint view of a given triangular part

The parameter TriMode can have the following values: Upper, StrictlyUpper, UnitUpper, Lower, StrictlyLower, UnitLower.

If TriMode references the same triangular part than *this, then this method simply return a TriangularView of the nested expression, otherwise, the nested expression is first transposed, thus returning a TriangularView<Transpose<MatrixType>> object.

See also
MatrixBase::triangularView(), class TriangularView

Definition at line 186 of file SelfAdjointView.h.

Friends And Related Function Documentation

◆ operator* [1/2]

template<typename _MatrixType, unsigned int UpLo>
template<typename OtherDerived >
EIGEN_DEVICE_FUNC const Product<OtherDerived,SelfAdjointView> operator* ( const MatrixBase< OtherDerived > &  lhs,
const SelfAdjointView< _MatrixType, UpLo > &  rhs 
)
friend

Efficient vector/matrix times triangular matrix product

Definition at line 131 of file SelfAdjointView.h.

◆ operator* [2/2]

template<typename _MatrixType, unsigned int UpLo>
EIGEN_DEVICE_FUNC const SelfAdjointView<const EIGEN_SCALAR_BINARYOP_EXPR_RETURN_TYPE(Scalar,MatrixType,product),UpLo> operator* ( const Scalar s,
const SelfAdjointView< _MatrixType, UpLo > &  mat 
)
friend

Definition at line 138 of file SelfAdjointView.h.

Member Data Documentation

◆ m_matrix

template<typename _MatrixType, unsigned int UpLo>
MatrixTypeNested Eigen::SelfAdjointView< _MatrixType, UpLo >::m_matrix
protected

Definition at line 266 of file SelfAdjointView.h.


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


gtsam
Author(s):
autogenerated on Tue Jul 4 2023 02:43:06