eigen.h File Reference
Include dependency graph for eigen.h:
This graph shows which files directly or indirectly include this file:

Namespaces

 TiledArray
 
 TiledArray::detail
 

Typedefs

typedef Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor > TiledArray::EigenMatrixXd
 
typedef Eigen::Matrix< float, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor > TiledArray::EigenMatrixXf
 
typedef Eigen::Matrix< std::complex< double >, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor > TiledArray::EigenMatrixXcd
 
typedef Eigen::Matrix< std::complex< float >, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor > TiledArray::EigenMatrixXcf
 
typedef Eigen::Matrix< int, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor > TiledArray::EigenMatrixXi
 
typedef Eigen::Matrix< long, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor > TiledArray::EigenMatrixXl
 
typedef Eigen::Matrix< double, Eigen::Dynamic, 1 > TiledArray::EigenVectorXd
 
typedef Eigen::Matrix< float, Eigen::Dynamic, 1 > TiledArray::EigenVectorXf
 
typedef Eigen::Matrix< std::complex< double >, 1, Eigen::Dynamic > TiledArray::EigenVectorXcd
 
typedef Eigen::Matrix< std::complex< float >, 1, Eigen::Dynamic > TiledArray::EigenVectorXcf
 
typedef Eigen::Matrix< int, Eigen::Dynamic, 1 > TiledArray::EigenVectorXi
 
typedef Eigen::Matrix< long, Eigen::Dynamic, 1 > TiledArray::EigenVectorXl
 

Functions

template<typename T , Eigen::StorageOptions Storage = Eigen::RowMajor, std::enable_if_t< detail::is_contiguous_tensor_v< T >> * = nullptr>
Eigen::Map< const Eigen::Matrix< typename T::value_type, Eigen::Dynamic, Eigen::Dynamic, Storage >, Eigen::AutoAlign > TiledArray::eigen_map (const T &tensor, const std::size_t m, const std::size_t n)
 Construct a const Eigen::Map object for a given Tensor object. More...
 
template<typename T , Eigen::StorageOptions Storage = Eigen::RowMajor, std::enable_if_t< detail::is_contiguous_tensor_v< T >> * = nullptr>
Eigen::Map< Eigen::Matrix< typename T::value_type, Eigen::Dynamic, Eigen::Dynamic, Storage >, Eigen::AutoAlign > TiledArray::eigen_map (T &tensor, const std::size_t m, const std::size_t n)
 Construct an Eigen::Map object for a given Tensor object. More...
 
template<typename T , std::enable_if_t< detail::is_contiguous_tensor_v< T >> * = nullptr>
Eigen::Map< const Eigen::Matrix< typename T::value_type, Eigen::Dynamic, 1 >, Eigen::AutoAlign > TiledArray::eigen_map (const T &tensor, const std::size_t n)
 Construct a const Eigen::Map object for a given Tensor object. More...
 
template<typename T , std::enable_if_t< detail::is_contiguous_tensor_v< T >> * = nullptr>
Eigen::Map< Eigen::Matrix< typename T::value_type, Eigen::Dynamic, 1 >, Eigen::AutoAlign > TiledArray::eigen_map (T &tensor, const std::size_t n)
 Construct an Eigen::Map object for a given Tensor object. More...
 
template<typename T , Eigen::StorageOptions Storage = Eigen::RowMajor, std::enable_if_t< detail::is_contiguous_tensor_v< T >> * = nullptr>
Eigen::Map< const Eigen::Matrix< typename T::value_type, Eigen::Dynamic, Eigen::Dynamic, Storage >, Eigen::AutoAlign > TiledArray::eigen_map (const T &tensor)
 Construct a const Eigen::Map object for a given Tensor object. More...
 
template<typename T , Eigen::StorageOptions Storage = Eigen::RowMajor, std::enable_if_t< detail::is_contiguous_tensor_v< T >> * = nullptr>
Eigen::Map< Eigen::Matrix< typename T::value_type, Eigen::Dynamic, Eigen::Dynamic, Storage >, Eigen::AutoAlign > TiledArray::eigen_map (T &tensor)
 Construct an Eigen::Map object for a given Tensor object. More...
 
template<typename T , typename Derived , std::enable_if_t< detail::is_contiguous_tensor_v< T >> * = nullptr>
void TiledArray::eigen_submatrix_to_tensor (const Eigen::MatrixBase< Derived > &matrix, T &tensor)
 Copy a block of an Eigen matrix into a tensor. More...
 
template<typename T , typename Derived , std::enable_if_t< detail::is_contiguous_tensor_v< T >> * = nullptr>
void TiledArray::tensor_to_eigen_submatrix (const T &tensor, Eigen::MatrixBase< Derived > &matrix)
 Copy the content of a tensor into an Eigen matrix block. More...
 
template<typename A , typename Derived >
void TiledArray::detail::counted_eigen_submatrix_to_tensor (const Eigen::MatrixBase< Derived > *matrix, A *array, const typename A::ordinal_type i, madness::AtomicInt *counter)
 Task function for converting Eigen submatrix to a tensor. More...
 
template<typename Derived , typename T >
void TiledArray::detail::counted_tensor_to_eigen_submatrix (const T &tensor, Eigen::MatrixBase< Derived > *matrix, madness::AtomicInt *counter)
 Task function for assigning a tensor to an Eigen submatrix. More...
 
template<typename A , typename Derived >
TiledArray::eigen_to_array (World &world, const typename A::trange_type &trange, const Eigen::MatrixBase< Derived > &matrix, bool replicated=false, std::shared_ptr< typename A::pmap_interface > pmap={})
 Convert an Eigen matrix into an Array object. More...
 
template<typename Tile , typename Policy , unsigned int EigenStorageOrder = Eigen::ColMajor>
Eigen::Matrix< typename Tile::value_type, Eigen::Dynamic, Eigen::Dynamic, EigenStorageOrder > TiledArray::array_to_eigen (const DistArray< Tile, Policy > &array)
 Convert an Array object into an Eigen matrix object. More...
 
template<typename A >
TiledArray::row_major_buffer_to_array (World &world, const typename A::trange_type &trange, const typename A::value_type::value_type *buffer, const std::size_t m, const std::size_t n, const bool replicated=false, std::shared_ptr< typename A::pmap_interface > pmap={})
 Convert a row-major matrix buffer into an Array object. More...
 
template<typename A >
TiledArray::column_major_buffer_to_array (World &world, const typename A::trange_type &trange, const typename A::value_type::value_type *buffer, const std::size_t m, const std::size_t n, const bool replicated=false, std::shared_ptr< typename A::pmap_interface > pmap={})
 Convert a column-major matrix buffer into an Array object. More...