|
TiledArray
0.7.0
|
Tensor implementation and base for other tensor implementation objects. More...
#include <array_impl.h>


Public Types | |
| typedef ArrayImpl< Tile, Policy > | ArrayImpl_ |
| This object type. More... | |
| typedef TensorImpl< Policy > | TensorImpl_ |
| The base class of this object. More... | |
| typedef TensorImpl_::size_type | size_type |
| Size type. More... | |
| typedef TensorImpl_::policy_type | policy_type |
| Policy type for this object. More... | |
| typedef TensorImpl_::trange_type | trange_type |
| Tiled range type for this object. More... | |
| typedef TensorImpl_::range_type | range_type |
| Elements/tiles range type. More... | |
| typedef TensorImpl_::shape_type | shape_type |
| Shape type. More... | |
| typedef TensorImpl_::pmap_interface | pmap_interface |
| process map interface type More... | |
| typedef Tile | value_type |
| Tile or data type. More... | |
| typedef eval_trait< Tile >::type | eval_type |
| The tile evaluation type. More... | |
| typedef numeric_type< value_type >::type | numeric_type |
| the numeric type that supports Tile More... | |
| typedef DistributedStorage< value_type > | storage_type |
| The data container type. More... | |
| typedef storage_type::future | future |
| Future tile type. More... | |
| typedef TileReference< ArrayImpl_ > | reference |
| Tile reference type. More... | |
| typedef TileConstReference< ArrayImpl_ > | const_reference |
| Tile constant reference type. More... | |
| typedef ArrayIterator< ArrayImpl_, reference > | iterator |
| Iterator type. More... | |
| typedef ArrayIterator< const ArrayImpl_, const_reference > | const_iterator |
| Constant iterator type. More... | |
Public Types inherited from TiledArray::detail::TensorImpl< Policy > | |
| typedef TensorImpl< Policy > | TensorImpl_ |
| typedef Policy | policy_type |
| Policy type. More... | |
| typedef Policy::trange_type | trange_type |
| Tiled range type. More... | |
| typedef Policy::range_type | range_type |
| Element/tile range type. More... | |
| typedef Policy::size_type | size_type |
| Size type. More... | |
| typedef Policy::shape_type | shape_type |
| Tensor shape type. More... | |
| typedef Policy::pmap_interface | pmap_interface |
| Process map interface type. More... | |
Public Member Functions | |
| ArrayImpl (World &world, const trange_type &trange, const shape_type &shape, const std::shared_ptr< pmap_interface > &pmap) | |
| Constructor. More... | |
| virtual | ~ArrayImpl () |
| Virtual destructor. More... | |
| template<typename Index > | |
| future | get (const Index &i) const |
| Tile future accessor. More... | |
| template<typename Integer > | |
| future | get (const std::initializer_list< Integer > &i) const |
| Tile future accessor. More... | |
| template<typename Index , typename Value > | |
| void | set (const Index &i, const Value &value) |
| Set tile. More... | |
| iterator | begin () |
| Array begin iterator. More... | |
| const_iterator | cbegin () const |
| Array begin iterator. More... | |
| iterator | end () |
| Array end iterator. More... | |
| const_iterator | cend () const |
| Array end iterator. More... | |
| const madness::uniqueidT & | id () const |
| Unique object id accessor. More... | |
Public Member Functions inherited from TiledArray::detail::TensorImpl< Policy > | |
| TensorImpl (World &world, const trange_type &trange, const shape_type &shape, const std::shared_ptr< pmap_interface > &pmap) | |
| Constructor. More... | |
| virtual | ~TensorImpl () |
| Virtual destructor. More... | |
| const std::shared_ptr< pmap_interface > & | pmap () const |
| Tensor process map accessor. More... | |
| const range_type & | tiles_range () const |
| Tiles range accessor. More... | |
| size_type | size () const |
| Tensor tile volume accessor. More... | |
| size_type | local_size () const |
| Local element count. More... | |
| template<typename Index > | |
| ProcessID | owner (const Index &i) const |
| Query a tile owner. More... | |
| template<typename Index > | |
| bool | is_local (const Index &i) const |
| Query for a locally owned tile. More... | |
| template<typename Index > | |
| bool | is_zero (const Index &i) const |
| Query for a zero tile. More... | |
| bool | is_dense () const |
| Query the density of the tensor. More... | |
| const shape_type & | shape () const |
| Tensor shape accessor. More... | |
| const trange_type & | trange () const |
| Tiled range accessor. More... | |
| DEPRECATED World & | get_world () const |
| World & | world () const |
| World accessor. More... | |
Tensor implementation and base for other tensor implementation objects.
This implementation object holds the data for tensor object, which includes tiled range, shape, and tiles. The tiles are held in a distributed container, stored according to a given process map.
| Tile | The tile or value_type of this tensor |
Definition at line 423 of file array_impl.h.
| typedef ArrayImpl<Tile, Policy> TiledArray::detail::ArrayImpl< Tile, Policy >::ArrayImpl_ |
This object type.
Definition at line 425 of file array_impl.h.
| typedef ArrayIterator<const ArrayImpl_, const_reference> TiledArray::detail::ArrayImpl< Tile, Policy >::const_iterator |
Constant iterator type.
Definition at line 442 of file array_impl.h.
| typedef TileConstReference<ArrayImpl_> TiledArray::detail::ArrayImpl< Tile, Policy >::const_reference |
Tile constant reference type.
Definition at line 440 of file array_impl.h.
| typedef eval_trait<Tile>::type TiledArray::detail::ArrayImpl< Tile, Policy >::eval_type |
The tile evaluation type.
Definition at line 434 of file array_impl.h.
| typedef storage_type::future TiledArray::detail::ArrayImpl< Tile, Policy >::future |
Future tile type.
Definition at line 438 of file array_impl.h.
| typedef ArrayIterator<ArrayImpl_, reference> TiledArray::detail::ArrayImpl< Tile, Policy >::iterator |
Iterator type.
Definition at line 441 of file array_impl.h.
| typedef numeric_type<value_type>::type TiledArray::detail::ArrayImpl< Tile, Policy >::numeric_type |
the numeric type that supports Tile
Definition at line 436 of file array_impl.h.
| typedef TensorImpl_::pmap_interface TiledArray::detail::ArrayImpl< Tile, Policy >::pmap_interface |
process map interface type
Definition at line 432 of file array_impl.h.
| typedef TensorImpl_::policy_type TiledArray::detail::ArrayImpl< Tile, Policy >::policy_type |
Policy type for this object.
Definition at line 428 of file array_impl.h.
| typedef TensorImpl_::range_type TiledArray::detail::ArrayImpl< Tile, Policy >::range_type |
Elements/tiles range type.
Definition at line 430 of file array_impl.h.
| typedef TileReference<ArrayImpl_> TiledArray::detail::ArrayImpl< Tile, Policy >::reference |
Tile reference type.
Definition at line 439 of file array_impl.h.
| typedef TensorImpl_::shape_type TiledArray::detail::ArrayImpl< Tile, Policy >::shape_type |
Shape type.
Definition at line 431 of file array_impl.h.
| typedef TensorImpl_::size_type TiledArray::detail::ArrayImpl< Tile, Policy >::size_type |
Size type.
Definition at line 427 of file array_impl.h.
| typedef DistributedStorage<value_type> TiledArray::detail::ArrayImpl< Tile, Policy >::storage_type |
The data container type.
Definition at line 437 of file array_impl.h.
| typedef TensorImpl<Policy> TiledArray::detail::ArrayImpl< Tile, Policy >::TensorImpl_ |
The base class of this object.
Definition at line 426 of file array_impl.h.
| typedef TensorImpl_::trange_type TiledArray::detail::ArrayImpl< Tile, Policy >::trange_type |
Tiled range type for this object.
Definition at line 429 of file array_impl.h.
| typedef Tile TiledArray::detail::ArrayImpl< Tile, Policy >::value_type |
Tile or data type.
Definition at line 433 of file array_impl.h.
|
inline |
Constructor.
The size of shape must be equal to the volume of the tiled range tiles.
| world | The world where this tensor will live |
| trange | The tiled range for this tensor |
| shape | The shape of this tensor |
| pmap | The tile-process map |
| TiledArray::Exception | When the size of shape is not equal to zero |
Definition at line 459 of file array_impl.h.
|
inlinevirtual |
Virtual destructor.
Definition at line 466 of file array_impl.h.
|
inline |
Array begin iterator.
Definition at line 509 of file array_impl.h.

|
inline |
Array begin iterator.
Definition at line 524 of file array_impl.h.

|
inline |
Array end iterator.
Definition at line 546 of file array_impl.h.

|
inline |
Array end iterator.
Definition at line 539 of file array_impl.h.


|
inline |
Tile future accessor.
| Index | The index type |
| i | The tile index |
future to tile i | TiledArray::Exception | When tile i is zero |
Definition at line 475 of file array_impl.h.

|
inline |
Tile future accessor.
| Integer | An integer type |
| i | The tile index, as an std::initializer_list<Integer> |
future to tile i | TiledArray::Exception | When tile i is zero |
Definition at line 487 of file array_impl.h.
|
inline |
Unique object id accessor.
Definition at line 553 of file array_impl.h.
|
inline |
Set tile.
Set the tile at i with value . Value type may be value_type , Future<value_type> , or madness::detail::MoveWrapper<value_type> .
| Index | The index type |
| Value | The value type |
| i | The index of the tile to be set |
| value | The object tat contains the tile value |
Definition at line 501 of file array_impl.h.
