Tenncor
Classes | Namespaces | Typedefs | Functions
eigen.hpp File Reference
#include "Eigen/Core"
#include "unsupported/Eigen/CXX11/Tensor"
#include "teq/shape.hpp"
#include "eteq/generated/dtype.hpp"
Include dependency graph for eigen.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  eteq::iEigen< T >
 Interface of generic Eigen data wrapper. More...
 
struct  eteq::EigenTensOp< T, EigenSource, EigenArgs >
 Implementation of iEigen that assigns Tensor operator to Tensor object. More...
 
struct  eteq::EigenMatOp< T, EigenSource, EigenArgs >
 Implementation of iEigen that assigns Matrix operator to Matrix object. More...
 

Namespaces

 eteq
 

Typedefs

using eteq::DimensionsT = std::array< Eigen::Index, 8 >
 Eigen shape. More...
 
template<typename T >
using eteq::MatrixT = Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor >
 Eigen Matrix. More...
 
template<typename T >
using eteq::MatMapT = Eigen::Map< MatrixT< T > >
 Eigen Matrix Map (reference) More...
 
template<typename T >
using eteq::TensorT = Eigen::Tensor< T, 8 >
 Eigen Tensor. More...
 
template<typename T >
using eteq::TensMapT = Eigen::TensorMap< TensorT< T > >
 Eigen Tensor Map (reference) More...
 
template<typename T >
using eteq::EigenptrT = std::shared_ptr< iEigen< T > >
 Smart point of generic Eigen data object. More...
 

Functions

template<typename T >
MatMapT< T > eteq::tens_to_matmap (TensorT< T > &tens)
 Return Matrix Map given Tensor. More...
 
template<typename T >
MatMapT< T > eteq::mat_to_matmap (MatrixT< T > &mat)
 Return Map of Matrix. More...
 
template<typename T >
MatMapT< T > eteq::tensmap_to_matmap (TensMapT< T > &tens)
 Return Matrix Map of Tensor Map. More...
 
template<typename T >
TensMapT< T > eteq::mat_to_tensmap (MatrixT< T > &mat)
 Return Tensor Map of Matrix. More...
 
template<typename T >
TensMapT< T > eteq::tens_to_tensmap (TensorT< T > &tens)
 Return Tensor Map of Tensor. More...
 
template<typename T , typename EigenSource , typename EigenArgs >
EigenptrT< T > eteq::make_eigentensor (DimensionsT dims, std::function< EigenSource(EigenArgs &)> make_base, EigenArgs args)
 
template<typename T , typename EigenSource , typename EigenArgs >
EigenptrT< T > eteq::make_eigenmatrix (DimensionsT dims, std::function< EigenSource(EigenArgs &)> make_base, EigenArgs args)
 
template<typename T >
TensorT< T > eteq::make_tensor (const teq::Shape &shape)
 Return Eigen Tensor filled with 0s given teq Shape. More...
 
template<typename T >
MatMapT< T > eteq::make_matmap (T *data, const teq::Shape &shape)
 Return Eigen Matrix given raw data and teq Shape. More...
 
template<typename T >
TensMapT< T > eteq::make_tensmap (T *data, const teq::Shape &shape)
 Return Eigen Tensor given raw data and teq Shape. More...
 
template<typename T >
teq::Shape eteq::get_shape (const TensorT< T > &tens)
 Return the teq Shape representation of Eigen Tensor. More...
 
template<typename T >
teq::Shape eteq::get_shape (const TensMapT< T > &tens)
 Return the teq Shape representation of Eigen Tensor Map. More...
 
DimensionsT eteq::shape_convert (teq::Shape shape)
 Return Eigen shape of teq Shape. More...