Classes | Namespaces | Macros
TensorContraction.h File Reference

Go to the source code of this file.

Classes

struct  Eigen::internal::TensorContractionBlockMemAllocator< LhsScalar, RhsScalar >::BlockSizes
 
struct  Eigen::internal::eval< TensorContractionOp< Dimensions, LhsXprType, RhsXprType, OutputKernelType >, Eigen::Dense >
 
struct  Eigen::internal::nested< TensorContractionOp< Dimensions, LhsXprType, RhsXprType, OutputKernelType >, 1, typename eval< TensorContractionOp< Dimensions, LhsXprType, RhsXprType, OutputKernelType > >::type >
 
struct  Eigen::NoOpOutputKernel
 
struct  Eigen::internal::TensorContractionBlockMemAllocator< LhsScalar, RhsScalar >
 
struct  Eigen::TensorContractionEvaluatorBase< Derived >
 
struct  Eigen::internal::TensorContractionKernel< ResScalar, LhsScalar, RhsScalar, StorageIndex, OutputMapper, LhsMapper, RhsMapper >
 
class  Eigen::TensorContractionOp< Indices, LhsXprType, RhsXprType, OutputKernelType >
 
struct  Eigen::TensorContractionParams
 
struct  Eigen::TensorEvaluator< const TensorContractionOp< Indices, LeftArgType, RightArgType, OutputKernelType >, Device >
 
struct  Eigen::internal::traits< TensorContractionOp< Dimensions, LhsXprType, RhsXprType, OutputKernelType > >
 
struct  Eigen::internal::traits< TensorEvaluator< const TensorContractionOp< Indices_, LeftArgType_, RightArgType_, OutputKernelType_ >, Device_ > >
 

Namespaces

 Eigen
 Namespace containing all symbols from the Eigen library.
 
 Eigen::internal
 

Macros

#define TENSOR_CONTRACTION_ASYNC_DISPATCH(METHOD, DONE, ALIGNMENT, ARGS, FN)
 
#define TENSOR_CONTRACTION_DISPATCH(METHOD, ALIGNMENT, ARGS)
 

Macro Definition Documentation

◆ TENSOR_CONTRACTION_ASYNC_DISPATCH

#define TENSOR_CONTRACTION_ASYNC_DISPATCH (   METHOD,
  DONE,
  ALIGNMENT,
  ARGS,
  FN 
)
Value:
if (this->m_lhs_inner_dim_contiguous) { \
if (this->m_rhs_inner_dim_contiguous) { \
if (this->m_rhs_inner_dim_reordered) { \
(new METHOD<DONE, true, true, true, ALIGNMENT> ARGS)->FN; \
} else { \
(new METHOD<DONE, true, true, false, ALIGNMENT> ARGS)->FN; \
} \
} else { \
if (this->m_rhs_inner_dim_reordered) { \
(new METHOD<DONE, true, false, true, ALIGNMENT> ARGS)->FN; \
} else { \
(new METHOD<DONE, true, false, false, ALIGNMENT> ARGS)->FN; \
} \
} \
} else { \
if (this->m_rhs_inner_dim_contiguous) { \
if (this->m_rhs_inner_dim_reordered) { \
(new METHOD<DONE, false, true, true, ALIGNMENT> ARGS)->FN; \
} else { \
(new METHOD<DONE, false, true, false, ALIGNMENT> ARGS)->FN; \
} \
} else { \
if (this->m_rhs_inner_dim_reordered) { \
(new METHOD<DONE, false, false, true, ALIGNMENT> ARGS)->FN; \
} else { \
(new METHOD<DONE, false, false, false, ALIGNMENT> ARGS)->FN; \
} \
} \
}

Definition at line 670 of file TensorContraction.h.

◆ TENSOR_CONTRACTION_DISPATCH

#define TENSOR_CONTRACTION_DISPATCH (   METHOD,
  ALIGNMENT,
  ARGS 
)
Value:
if (this->m_lhs_inner_dim_contiguous) { \
if (this->m_rhs_inner_dim_contiguous) { \
if (this->m_rhs_inner_dim_reordered) { \
METHOD<true, true, true, ALIGNMENT> ARGS; \
} else { \
METHOD<true, true, false, ALIGNMENT> ARGS; \
} \
} else { \
if (this->m_rhs_inner_dim_reordered) { \
METHOD<true, false, true, ALIGNMENT> ARGS; \
} else { \
METHOD<true, false, false, ALIGNMENT> ARGS; \
} \
} \
} else { \
if (this->m_rhs_inner_dim_contiguous) { \
if (this->m_rhs_inner_dim_reordered) { \
METHOD<false, true, true, ALIGNMENT> ARGS; \
} else { \
METHOD<false, true, false, ALIGNMENT> ARGS; \
} \
} else { \
if (this->m_rhs_inner_dim_reordered) { \
METHOD<false, false, true, ALIGNMENT> ARGS; \
} else { \
METHOD<false, false, false, ALIGNMENT> ARGS; \
} \
} \
}

Definition at line 637 of file TensorContraction.h.



gtsam
Author(s):
autogenerated on Tue Jul 4 2023 02:40:54