diagonal_array.h File Reference
#include <TiledArray/dist_array.h>
#include <TiledArray/range.h>
#include <TiledArray/tensor.h>
#include <TiledArray/tiled_range.h>
#include <vector>
Include dependency graph for diagonal_array.h:
This graph shows which files directly or indirectly include this file:

Namespaces

 TiledArray
 
 TiledArray::detail
 

Functions

Range TiledArray::detail::diagonal_range (Range const &rng)
 Computes a range of the diagonal elements (if any) in a rank-d Range. More...
 
template<typename T >
Tensor< float > TiledArray::detail::diagonal_shape (TiledRange const &trange, T val)
 computes shape data (i.e. Frobenius norms of the tiles) for a constant diagonal tensor More...
 
template<typename RandomAccessIterator >
std::enable_if_t< is_iterator< RandomAccessIterator >::value, Tensor< float > > TiledArray::detail::diagonal_shape (TiledRange const &trange, RandomAccessIterator diagonals_begin, RandomAccessIterator diagonals_end={})
 computes shape data (i.e. Frobenius norms of the tiles) for a non-constant diagonal tensor More...
 
template<typename Array , typename T >
void TiledArray::detail::write_diag_tiles_to_array_val (Array &A, T val)
 Writes tiles of a constant diagonal array. More...
 
template<typename Array , typename RandomAccessIterator >
std::enable_if_t< is_iterator< RandomAccessIterator >::value, void > TiledArray::detail::write_diag_tiles_to_array_rng (Array &A, RandomAccessIterator diagonals_begin)
 Writes tiles of a nonconstant diagonal array. More...
 
template<typename Array , typename T = double>
Array TiledArray::diagonal_array (World &world, TiledRange const &trange, T val=1)
 Creates a constant diagonal DistArray. More...
 
template<typename Array , typename RandomAccessIterator >
std::enable_if_t< detail::is_iterator< RandomAccessIterator >::value, Array > TiledArray::diagonal_array (World &world, TiledRange const &trange, RandomAccessIterator diagonals_begin, RandomAccessIterator diagonals_end={})
 Creates a non-constant diagonal DistArray. More...