Search Results


Documentation
template<typename Derived>
class TiledArray::expressions::LeafEngine< Derived >
Leaf expression engine.
Definition at line 39 of file leaf_engine.h.
Public Types | |
typedef LeafEngine< Derived > LeafEngine_ | |
This class type. More... | |
typedef ExprEngine< Derived > ExprEngine_ | |
Base class type. More... | |
typedef EngineTrait< Derived >::array_type array_type | |
The left-hand expression type. More... | |
typedef EngineTrait< Derived >::value_type value_type | |
Tensor value type. More... | |
typedef EngineTrait< Derived >::op_type op_type | |
Tile operation type. More... | |
typedef EngineTrait< Derived >::policy policy | |
The result policy type. More... | |
typedef EngineTrait< Derived >::dist_eval_type dist_eval_type | |
This expression's distributed evaluator type. More... | |
typedef EngineTrait< Derived >::size_type size_type | |
Size type. More... | |
typedef EngineTrait< Derived >::trange_type trange_type | |
Tiled range type type. More... | |
typedef EngineTrait< Derived >::shape_type shape_type | |
Tensor shape type. More... | |
typedef EngineTrait< Derived >::pmap_interface pmap_interface | |
Process map interface type. More... | |
![]() | |
typedef ExprEngine< Derived > ExprEngine_ | |
typedef Derived derived_type | |
The derived object type. More... | |
typedef EngineTrait< Derived >::value_type value_type | |
Tensor value type. More... | |
typedef EngineTrait< Derived >::op_type op_type | |
Tile operation type. More... | |
typedef EngineTrait< Derived >::policy policy | |
The result policy type. More... | |
typedef EngineTrait< Derived >::dist_eval_type dist_eval_type | |
This expression's distributed evaluator type. More... | |
typedef EngineTrait< Derived >::size_type size_type | |
Size type. More... | |
typedef EngineTrait< Derived >::trange_type trange_type | |
Tiled range type type. More... | |
typedef EngineTrait< Derived >::shape_type shape_type | |
Tensor shape type. More... | |
typedef EngineTrait< Derived >::pmap_interface pmap_interface | |
Process map interface type. More... | |
Public Member Functions | |
template<typename D > | |
LeafEngine (const Expr< D > &expr) | |
Engine constructor. More... | |
void perm_indices (const BipartiteIndexList &) | |
Set the index list for this expression. More... | |
void init_indices (const BipartiteIndexList &target_indices) | |
Initialize the index list of this expression. More... | |
void init_indices () | |
Initialize the index list of this expression. More... | |
void init_distribution (World *world, const std::shared_ptr< pmap_interface > &pmap) | |
trange_type make_trange () const | |
Non-permuting tiled range factory function. More... | |
trange_type make_trange (const Permutation &perm) const | |
Permuting tiled range factory function. More... | |
shape_type make_shape () | |
Non-permuting shape factory function. More... | |
shape_type make_shape (const Permutation &perm) | |
Permuting shape factory function. More... | |
dist_eval_type make_dist_eval () const | |
Construct the distributed evaluator for array. More... | |
derived_type & derived () | |
Cast this object to its derived type. More... | |
const derived_type & derived () const | |
Cast this object to its derived type. More... | |
![]() | |
template<typename D > | |
ExprEngine (const Expr< D > &expr) | |
Default constructor. More... | |
void init (World &world, std::shared_ptr< pmap_interface > pmap, const BipartiteIndexList &target_indices) | |
Construct and initialize the expression engine. More... | |
void init_struct (const BipartiteIndexList &target_indices) | |
Initialize result tensor structure. More... | |
void init_distribution (World *world, const std::shared_ptr< pmap_interface > &pmap) | |
Initialize result tensor distribution. More... | |
BipartitePermutation make_perm (const BipartiteIndexList &target_indices) const | |
Permutation factory function. More... | |
op_type make_op () const | |
Tile operation factory function. More... | |
derived_type & derived () | |
Cast this object to its derived type. More... | |
const derived_type & derived () const | |
Cast this object to its derived type. More... | |
World * world () const | |
World accessor. More... | |
const BipartiteIndexList & indices () const | |
Index list accessor. More... | |
const BipartitePermutation & perm () const | |
Permutation accessor. More... | |
const trange_type & trange () const | |
Tiled range accessor. More... | |
const shape_type & shape () const | |
Shape accessor. More... | |
const std::shared_ptr< pmap_interface > & pmap () const | |
Process map accessor. More... | |
void permute_tiles (const bool status) | |
Set the permute tiles flag. More... | |
void print (ExprOStream &os, const BipartiteIndexList &target_indices) const | |
Expression print. More... | |
const char * make_tag () const | |
Expression identification tag. More... | |
Static Public Attributes | |
static constexpr bool consumable = EngineTrait<Derived>::consumable | |
static constexpr unsigned int leaves = EngineTrait<Derived>::leaves | |
Protected Attributes | |
array_type array_ | |
The array object. More... | |
BipartiteIndexList indices_ | |
BipartitePermutation perm_ | |
The permutation that will be applied to the outer tensor of tensors. More... | |
bool permute_tiles_ | |
std::shared_ptr< pmap_interface > pmap_ | |
The process map for the result tensor. More... | |
shape_type shape_ | |
The shape of the result tensor. More... | |
trange_type trange_ | |
The tiled range of the result tensor. More... | |
World * world_ | |
The world where this expression will be evaluated. More... | |
![]() | |
World * world_ | |
The world where this expression will be evaluated. More... | |
BipartiteIndexList indices_ | |
bool permute_tiles_ | |
BipartitePermutation perm_ | |
The permutation that will be applied to the outer tensor of tensors. More... | |
trange_type trange_ | |
The tiled range of the result tensor. More... | |
shape_type shape_ | |
The shape of the result tensor. More... | |
std::shared_ptr< pmap_interface > pmap_ | |
The process map for the result tensor. More... | |
std::shared_ptr< EngineParamOverride< Derived > > override_ptr_ | |
The engine params overriding the default. More... | |
Member Typedef Documentation
◆ array_type
typedef EngineTrait<Derived>::array_type TiledArray::expressions::LeafEngine< Derived >::array_type |
The left-hand expression type.
Definition at line 47 of file leaf_engine.h.
◆ dist_eval_type
typedef EngineTrait<Derived>::dist_eval_type TiledArray::expressions::LeafEngine< Derived >::dist_eval_type |
This expression's distributed evaluator type.
Definition at line 57 of file leaf_engine.h.
◆ ExprEngine_
typedef ExprEngine<Derived> TiledArray::expressions::LeafEngine< Derived >::ExprEngine_ |
Base class type.
Definition at line 43 of file leaf_engine.h.
◆ LeafEngine_
typedef LeafEngine<Derived> TiledArray::expressions::LeafEngine< Derived >::LeafEngine_ |
This class type.
Definition at line 42 of file leaf_engine.h.
◆ op_type
typedef EngineTrait<Derived>::op_type TiledArray::expressions::LeafEngine< Derived >::op_type |
Tile operation type.
Definition at line 53 of file leaf_engine.h.
◆ pmap_interface
typedef EngineTrait<Derived>::pmap_interface TiledArray::expressions::LeafEngine< Derived >::pmap_interface |
Process map interface type.
Definition at line 66 of file leaf_engine.h.
◆ policy
typedef EngineTrait<Derived>::policy TiledArray::expressions::LeafEngine< Derived >::policy |
The result policy type.
Definition at line 55 of file leaf_engine.h.
◆ shape_type
typedef EngineTrait<Derived>::shape_type TiledArray::expressions::LeafEngine< Derived >::shape_type |
Tensor shape type.
Definition at line 64 of file leaf_engine.h.
◆ size_type
typedef EngineTrait<Derived>::size_type TiledArray::expressions::LeafEngine< Derived >::size_type |
Size type.
Definition at line 60 of file leaf_engine.h.
◆ trange_type
typedef EngineTrait<Derived>::trange_type TiledArray::expressions::LeafEngine< Derived >::trange_type |
Tiled range type type.
Definition at line 62 of file leaf_engine.h.
◆ value_type
typedef EngineTrait<Derived>::value_type TiledArray::expressions::LeafEngine< Derived >::value_type |
Tensor value type.
Definition at line 51 of file leaf_engine.h.
Constructor & Destructor Documentation
◆ LeafEngine()
|
inline |
Engine constructor.
- Parameters
-
expr The argument expression
Definition at line 88 of file leaf_engine.h.

Member Function Documentation
◆ derived() [1/2]
|
inline |
Cast this object to its derived type.
Definition at line 209 of file expr_engine.h.
◆ derived() [2/2]
|
inline |
Cast this object to its derived type.
Definition at line 212 of file expr_engine.h.
◆ init_distribution()
|
inline |
◆ init_indices() [1/2]
|
inline |
Initialize the index list of this expression.
This function is a noop since the index list is fixed.
Definition at line 127 of file leaf_engine.h.
◆ init_indices() [2/2]
|
inline |
Initialize the index list of this expression.
This function only checks for valid index lists.
- Parameters
-
target_indices The target index list for this expression
Definition at line 105 of file leaf_engine.h.

◆ make_dist_eval()
|
inline |
Construct the distributed evaluator for array.
Create the pimpl for the distributed evaluator
Definition at line 161 of file leaf_engine.h.

◆ make_shape() [1/2]
|
inline |
Non-permuting shape factory function.
- Returns
- The result shape
Definition at line 150 of file leaf_engine.h.
◆ make_shape() [2/2]
|
inline |
Permuting shape factory function.
- Parameters
-
perm The permutation to be applied to the array
- Returns
- The result shape
Definition at line 156 of file leaf_engine.h.

◆ make_trange() [1/2]
|
inline |
Non-permuting tiled range factory function.
- Returns
- The result tiled range
Definition at line 137 of file leaf_engine.h.
◆ make_trange() [2/2]
|
inline |
Permuting tiled range factory function.
- Parameters
-
perm The permutation to be applied to the array
- Returns
- The result shape
Definition at line 143 of file leaf_engine.h.

◆ perm_indices()
|
inline |
Set the index list for this expression.
This function is a noop since the index list is fixed.
Definition at line 99 of file leaf_engine.h.
Member Data Documentation
◆ array_
|
protected |
The array object.
Definition at line 81 of file leaf_engine.h.
◆ consumable
|
staticconstexpr |
Definition at line 68 of file leaf_engine.h.
◆ indices_
|
protected |
The index list of this expression; bipartite due to need to support recursive tensors (i.e. Tensor-of-Tensor)
Definition at line 75 of file expr_engine.h.
◆ leaves
|
staticconstexpr |
Definition at line 69 of file leaf_engine.h.
◆ perm_
|
protected |
The permutation that will be applied to the outer tensor of tensors.
Definition at line 80 of file expr_engine.h.
◆ permute_tiles_
|
protected |
Result tile permutation flag (true
== permute tile)
Definition at line 77 of file expr_engine.h.
◆ pmap_
|
protected |
The process map for the result tensor.
Definition at line 84 of file expr_engine.h.
◆ shape_
|
protected |
The shape of the result tensor.
Definition at line 82 of file expr_engine.h.
◆ trange_
|
protected |
The tiled range of the result tensor.
Definition at line 81 of file expr_engine.h.
◆ world_
|
protected |
The world where this expression will be evaluated.
Definition at line 73 of file expr_engine.h.
The documentation for this class was generated from the following file:
- TiledArray/expressions/leaf_engine.h