Eigen::KroneckerProductBase< Derived > Class Template Reference

The base class of dense and sparse Kronecker product. More...

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

Public Member Functions

Scalar coeff (Index i) const
 
Scalar coeff (Index row, Index col) const
 
Index cols () const
 
 KroneckerProductBase (const Lhs &A, const Rhs &B)
 Constructor. More...
 
Index rows () const
 
- Public Member Functions inherited from Eigen::ReturnByValue< Derived >
EIGEN_CONSTEXPR Index cols () const EIGEN_NOEXCEPT
 
void evalTo (Dest &dst) const
 
EIGEN_CONSTEXPR Index rows () const EIGEN_NOEXCEPT
 

Protected Types

typedef Traits::Lhs Lhs
 
typedef Traits::Rhs Rhs
 

Protected Attributes

Lhs::Nested m_A
 
Rhs::Nested m_B
 

Private Types

typedef Traits::Scalar Scalar
 
typedef internal::traits< Derived > Traits
 

Additional Inherited Members

- Public Types inherited from Eigen::ReturnByValue< Derived >
typedef internal::dense_xpr_base< ReturnByValue >::type Base
 
typedef internal::traits< Derived >::ReturnType ReturnType
 

Detailed Description

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

The base class of dense and sparse Kronecker product.

Template Parameters
Derivedis the derived type.

Definition at line 27 of file KroneckerTensorProduct.h.

Member Typedef Documentation

◆ Lhs

template<typename Derived >
typedef Traits::Lhs Eigen::KroneckerProductBase< Derived >::Lhs
protected

Definition at line 34 of file KroneckerTensorProduct.h.

◆ Rhs

template<typename Derived >
typedef Traits::Rhs Eigen::KroneckerProductBase< Derived >::Rhs
protected

Definition at line 35 of file KroneckerTensorProduct.h.

◆ Scalar

template<typename Derived >
typedef Traits::Scalar Eigen::KroneckerProductBase< Derived >::Scalar
private

Definition at line 31 of file KroneckerTensorProduct.h.

◆ Traits

template<typename Derived >
typedef internal::traits<Derived> Eigen::KroneckerProductBase< Derived >::Traits
private

Definition at line 30 of file KroneckerTensorProduct.h.

Constructor & Destructor Documentation

◆ KroneckerProductBase()

template<typename Derived >
Eigen::KroneckerProductBase< Derived >::KroneckerProductBase ( const Lhs A,
const Rhs B 
)
inline

Constructor.

Definition at line 39 of file KroneckerTensorProduct.h.

Member Function Documentation

◆ coeff() [1/2]

template<typename Derived >
Scalar Eigen::KroneckerProductBase< Derived >::coeff ( Index  i) const
inline

This overrides ReturnByValue::coeff because this function is efficient enough.

Definition at line 60 of file KroneckerTensorProduct.h.

61  {
63  return m_A.coeff(i / m_A.size()) * m_B.coeff(i % m_A.size());
64  }
#define EIGEN_STATIC_ASSERT_VECTOR_ONLY(TYPE)

◆ coeff() [2/2]

template<typename Derived >
Scalar Eigen::KroneckerProductBase< Derived >::coeff ( Index  row,
Index  col 
) const
inline

This overrides ReturnByValue::coeff because this function is efficient enough.

Definition at line 50 of file KroneckerTensorProduct.h.

51  {
52  return m_A.coeff(row / m_B.rows(), col / m_B.cols()) *
53  m_B.coeff(row % m_B.rows(), col % m_B.cols());
54  }

◆ cols()

template<typename Derived >
Index Eigen::KroneckerProductBase< Derived >::cols ( void  ) const
inline

Definition at line 44 of file KroneckerTensorProduct.h.

44 { return m_A.cols() * m_B.cols(); }

◆ rows()

template<typename Derived >
Index Eigen::KroneckerProductBase< Derived >::rows ( void  ) const
inline

Definition at line 43 of file KroneckerTensorProduct.h.

43 { return m_A.rows() * m_B.rows(); }

Member Data Documentation

◆ m_A

template<typename Derived >
Lhs::Nested Eigen::KroneckerProductBase< Derived >::m_A
protected

Definition at line 67 of file KroneckerTensorProduct.h.

◆ m_B

template<typename Derived >
Rhs::Nested Eigen::KroneckerProductBase< Derived >::m_B
protected

Definition at line 68 of file KroneckerTensorProduct.h.


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