Prusa Slicer 2.6.0
Loading...
Searching...
No Matches
Eigen::SparseSymmetricPermutationProduct< MatrixType, Mode > Class Template Reference

#include <src/eigen/Eigen/src/SparseCore/SparseSelfAdjointView.h>

+ Inheritance diagram for Eigen::SparseSymmetricPermutationProduct< MatrixType, Mode >:
+ Collaboration diagram for Eigen::SparseSymmetricPermutationProduct< MatrixType, Mode >:

Public Types

enum  { RowsAtCompileTime = internal::traits<SparseSymmetricPermutationProduct>::RowsAtCompileTime , ColsAtCompileTime = internal::traits<SparseSymmetricPermutationProduct>::ColsAtCompileTime }
 
typedef MatrixType::Scalar Scalar
 
typedef MatrixType::StorageIndex StorageIndex
 
typedef Matrix< StorageIndex, Dynamic, 1 > VectorI
 
typedef MatrixType::Nested MatrixTypeNested
 
typedef internal::remove_all< MatrixTypeNested >::type NestedExpression
 
typedef Eigen::Index Index
 The interface type of indices.
 
typedef internal::traits< SparseSymmetricPermutationProduct< MatrixType, Mode > >::StorageKind StorageKind
 

Public Member Functions

 SparseSymmetricPermutationProduct (const MatrixType &mat, const Perm &perm)
 
Index rows () const
 
Index cols () const
 
const NestedExpressionmatrix () const
 
const Permperm () const
 
EIGEN_DEVICE_FUNC SparseSymmetricPermutationProduct< MatrixType, Mode > & derived ()
 
EIGEN_DEVICE_FUNC const SparseSymmetricPermutationProduct< MatrixType, Mode > & derived () const
 
EIGEN_DEVICE_FUNC SparseSymmetricPermutationProduct< MatrixType, Mode > & const_cast_derived () const
 
EIGEN_DEVICE_FUNC const SparseSymmetricPermutationProduct< MatrixType, Mode > & const_derived () const
 
EIGEN_DEVICE_FUNC Index size () const
 
EIGEN_DEVICE_FUNC void evalTo (Dest &dst) const
 
EIGEN_DEVICE_FUNC void addTo (Dest &dst) const
 
EIGEN_DEVICE_FUNC void subTo (Dest &dst) const
 
EIGEN_DEVICE_FUNC void applyThisOnTheRight (Dest &dst) const
 
EIGEN_DEVICE_FUNC void applyThisOnTheLeft (Dest &dst) const
 

Protected Types

typedef PermutationMatrix< Dynamic, Dynamic, StorageIndexPerm
 

Protected Attributes

MatrixTypeNested m_matrix
 
const Permm_perm
 

Detailed Description

template<typename MatrixType, int Mode>
class Eigen::SparseSymmetricPermutationProduct< MatrixType, Mode >

Member Typedef Documentation

◆ Index

typedef Eigen::Index Eigen::EigenBase< SparseSymmetricPermutationProduct< MatrixType, Mode > >::Index
inherited

The interface type of indices.

To change this, #define the preprocessor symbol EIGEN_DEFAULT_DENSE_INDEX_TYPE.

See also
StorageIndex, TopicPreprocessorDirectives.

◆ MatrixTypeNested

template<typename MatrixType , int Mode>
typedef MatrixType::Nested Eigen::SparseSymmetricPermutationProduct< MatrixType, Mode >::MatrixTypeNested

◆ NestedExpression

template<typename MatrixType , int Mode>
typedef internal::remove_all<MatrixTypeNested>::type Eigen::SparseSymmetricPermutationProduct< MatrixType, Mode >::NestedExpression

◆ Perm

template<typename MatrixType , int Mode>
typedef PermutationMatrix<Dynamic,Dynamic,StorageIndex> Eigen::SparseSymmetricPermutationProduct< MatrixType, Mode >::Perm
protected

◆ Scalar

template<typename MatrixType , int Mode>
typedef MatrixType::Scalar Eigen::SparseSymmetricPermutationProduct< MatrixType, Mode >::Scalar

◆ StorageIndex

template<typename MatrixType , int Mode>
typedef MatrixType::StorageIndex Eigen::SparseSymmetricPermutationProduct< MatrixType, Mode >::StorageIndex

◆ StorageKind

typedef internal::traits<SparseSymmetricPermutationProduct< MatrixType, Mode > >::StorageKind Eigen::EigenBase< SparseSymmetricPermutationProduct< MatrixType, Mode > >::StorageKind
inherited

◆ VectorI

template<typename MatrixType , int Mode>
typedef Matrix<StorageIndex,Dynamic,1> Eigen::SparseSymmetricPermutationProduct< MatrixType, Mode >::VectorI

Member Enumeration Documentation

◆ anonymous enum

template<typename MatrixType , int Mode>
anonymous enum
Enumerator
RowsAtCompileTime 
ColsAtCompileTime 
602 {
603 RowsAtCompileTime = internal::traits<SparseSymmetricPermutationProduct>::RowsAtCompileTime,
604 ColsAtCompileTime = internal::traits<SparseSymmetricPermutationProduct>::ColsAtCompileTime
605 };
@ RowsAtCompileTime
Definition SparseSelfAdjointView.h:603
@ ColsAtCompileTime
Definition SparseSelfAdjointView.h:604

Constructor & Destructor Documentation

◆ SparseSymmetricPermutationProduct()

template<typename MatrixType , int Mode>
Eigen::SparseSymmetricPermutationProduct< MatrixType, Mode >::SparseSymmetricPermutationProduct ( const MatrixType &  mat,
const Perm perm 
)
inline
614 : m_matrix(mat), m_perm(perm)
615 {}
const Perm & perm() const
Definition SparseSelfAdjointView.h:621
MatrixTypeNested m_matrix
Definition SparseSelfAdjointView.h:624
const Perm & m_perm
Definition SparseSelfAdjointView.h:625

Member Function Documentation

◆ addTo()

EIGEN_DEVICE_FUNC void Eigen::EigenBase< SparseSymmetricPermutationProduct< MatrixType, Mode > >::addTo ( Dest &  dst) const
inlineinherited
78 {
79 // This is the default implementation,
80 // derived class can reimplement it in a more optimized way.
81 typename Dest::PlainObject res(rows(),cols());
82 evalTo(res);
83 dst += res;
84 }
EIGEN_DEVICE_FUNC Index cols() const
Definition EigenBase.h:62
EIGEN_DEVICE_FUNC Index rows() const
Definition EigenBase.h:59
EIGEN_DEVICE_FUNC void evalTo(Dest &dst) const
Definition EigenBase.h:71

◆ applyThisOnTheLeft()

EIGEN_DEVICE_FUNC void Eigen::EigenBase< SparseSymmetricPermutationProduct< MatrixType, Mode > >::applyThisOnTheLeft ( Dest &  dst) const
inlineinherited
110 {
111 // This is the default implementation,
112 // derived class can reimplement it in a more optimized way.
113 dst = this->derived() * dst;
114 }
EIGEN_DEVICE_FUNC SparseSymmetricPermutationProduct< MatrixType, Mode > & derived()
Definition EigenBase.h:45

◆ applyThisOnTheRight()

EIGEN_DEVICE_FUNC void Eigen::EigenBase< SparseSymmetricPermutationProduct< MatrixType, Mode > >::applyThisOnTheRight ( Dest &  dst) const
inlineinherited
101 {
102 // This is the default implementation,
103 // derived class can reimplement it in a more optimized way.
104 dst = dst * this->derived();
105 }

◆ cols()

template<typename MatrixType , int Mode>
Index Eigen::SparseSymmetricPermutationProduct< MatrixType, Mode >::cols ( ) const
inline
618{ return m_matrix.cols(); }

◆ const_cast_derived()

EIGEN_DEVICE_FUNC SparseSymmetricPermutationProduct< MatrixType, Mode > & Eigen::EigenBase< SparseSymmetricPermutationProduct< MatrixType, Mode > >::const_cast_derived ( ) const
inlineinherited
52 { return *static_cast<Derived*>(const_cast<EigenBase*>(this)); }

◆ const_derived()

EIGEN_DEVICE_FUNC const SparseSymmetricPermutationProduct< MatrixType, Mode > & Eigen::EigenBase< SparseSymmetricPermutationProduct< MatrixType, Mode > >::const_derived ( ) const
inlineinherited
55 { return *static_cast<const Derived*>(this); }

◆ derived() [1/2]

EIGEN_DEVICE_FUNC SparseSymmetricPermutationProduct< MatrixType, Mode > & Eigen::EigenBase< SparseSymmetricPermutationProduct< MatrixType, Mode > >::derived ( )
inlineinherited
Returns
a reference to the derived object
45{ return *static_cast<Derived*>(this); }

◆ derived() [2/2]

EIGEN_DEVICE_FUNC const SparseSymmetricPermutationProduct< MatrixType, Mode > & Eigen::EigenBase< SparseSymmetricPermutationProduct< MatrixType, Mode > >::derived ( ) const
inlineinherited
Returns
a const reference to the derived object
48{ return *static_cast<const Derived*>(this); }

◆ evalTo()

EIGEN_DEVICE_FUNC void Eigen::EigenBase< SparseSymmetricPermutationProduct< MatrixType, Mode > >::evalTo ( Dest &  dst) const
inlineinherited
72 { derived().evalTo(dst); }

◆ matrix()

◆ perm()

◆ rows()

template<typename MatrixType , int Mode>
Index Eigen::SparseSymmetricPermutationProduct< MatrixType, Mode >::rows ( ) const
inline
617{ return m_matrix.rows(); }

◆ size()

EIGEN_DEVICE_FUNC Index Eigen::EigenBase< SparseSymmetricPermutationProduct< MatrixType, Mode > >::size ( ) const
inlineinherited
Returns
the number of coefficients, which is rows()*cols().
See also
rows(), cols(), SizeAtCompileTime.
66{ return rows() * cols(); }

◆ subTo()

EIGEN_DEVICE_FUNC void Eigen::EigenBase< SparseSymmetricPermutationProduct< MatrixType, Mode > >::subTo ( Dest &  dst) const
inlineinherited
90 {
91 // This is the default implementation,
92 // derived class can reimplement it in a more optimized way.
93 typename Dest::PlainObject res(rows(),cols());
94 evalTo(res);
95 dst -= res;
96 }

Member Data Documentation

◆ m_matrix

template<typename MatrixType , int Mode>
MatrixTypeNested Eigen::SparseSymmetricPermutationProduct< MatrixType, Mode >::m_matrix
protected

◆ m_perm

template<typename MatrixType , int Mode>
const Perm& Eigen::SparseSymmetricPermutationProduct< MatrixType, Mode >::m_perm
protected

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