Documentation
template<typename Derived>
class TiledArray::expressions::BlkTsrEngineBase< Derived >
Tensor expression engine.
- Template Parameters
-
Derived The derived class type
Definition at line 126 of file blk_tsr_engine.h.
Public Types | |
typedef BlkTsrEngineBase< Derived > | BlkTsrEngineBase_ |
This class type. More... | |
typedef LeafEngine< Derived > | LeafEngine_ |
Leaf base class type. More... | |
typedef LeafEngine_::ExprEngine_ | ExprEngine_ |
Expression engine base class. More... | |
typedef EngineTrait< Derived >::array_type | array_type |
The input array 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 Types inherited from TiledArray::expressions::LeafEngine< Derived > | |
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... | |
Public Types inherited from TiledArray::expressions::ExprEngine< Derived > | |
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 Array , bool Alias> | |
BlkTsrEngineBase (const BlkTsrExpr< Array, Alias > &expr) | |
template<typename Array , typename Scalar > | |
BlkTsrEngineBase (const ScalBlkTsrExpr< Array, Scalar > &expr) | |
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... | |
void | init_distribution (World *world, const std::shared_ptr< pmap_interface > &pmap) |
dist_eval_type | make_dist_eval () const |
Construct the distributed evaluator for array. More... | |
std::string | make_tag () const |
Expression identification tag. More... | |
Public Member Functions inherited from TiledArray::expressions::LeafEngine< Derived > | |
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... | |
Public Member Functions inherited from TiledArray::expressions::ExprEngine< Derived > | |
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... | |
Protected Attributes | |
container::svector< std::size_t > | lower_bound_ |
Lower bound of the tile block. More... | |
container::svector< std::size_t > | upper_bound_ |
Upper bound of the tile block. 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... | |
array_type | array_ |
The array object. More... | |
Protected Attributes inherited from TiledArray::expressions::LeafEngine< Derived > | |
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... | |
Protected Attributes inherited from TiledArray::expressions::ExprEngine< Derived > | |
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... | |
Additional Inherited Members | |
Static Public Attributes inherited from TiledArray::expressions::LeafEngine< Derived > | |
static constexpr bool | consumable = EngineTrait<Derived>::consumable |
static constexpr unsigned int | leaves = EngineTrait<Derived>::leaves |
Member Typedef Documentation
◆ array_type
typedef EngineTrait<Derived>::array_type TiledArray::expressions::BlkTsrEngineBase< Derived >::array_type |
The input array type.
Definition at line 136 of file blk_tsr_engine.h.
◆ BlkTsrEngineBase_
typedef BlkTsrEngineBase<Derived> TiledArray::expressions::BlkTsrEngineBase< Derived >::BlkTsrEngineBase_ |
This class type.
Definition at line 129 of file blk_tsr_engine.h.
◆ dist_eval_type
typedef EngineTrait<Derived>::dist_eval_type TiledArray::expressions::BlkTsrEngineBase< Derived >::dist_eval_type |
This expression's distributed evaluator type.
Definition at line 146 of file blk_tsr_engine.h.
◆ ExprEngine_
typedef LeafEngine_::ExprEngine_ TiledArray::expressions::BlkTsrEngineBase< Derived >::ExprEngine_ |
Expression engine base class.
Definition at line 132 of file blk_tsr_engine.h.
◆ LeafEngine_
typedef LeafEngine<Derived> TiledArray::expressions::BlkTsrEngineBase< Derived >::LeafEngine_ |
Leaf base class type.
Definition at line 130 of file blk_tsr_engine.h.
◆ op_type
typedef EngineTrait<Derived>::op_type TiledArray::expressions::BlkTsrEngineBase< Derived >::op_type |
Tile operation type.
Definition at line 142 of file blk_tsr_engine.h.
◆ pmap_interface
typedef EngineTrait<Derived>::pmap_interface TiledArray::expressions::BlkTsrEngineBase< Derived >::pmap_interface |
Process map interface type.
Definition at line 155 of file blk_tsr_engine.h.
◆ policy
typedef EngineTrait<Derived>::policy TiledArray::expressions::BlkTsrEngineBase< Derived >::policy |
The result policy type.
Definition at line 144 of file blk_tsr_engine.h.
◆ shape_type
typedef EngineTrait<Derived>::shape_type TiledArray::expressions::BlkTsrEngineBase< Derived >::shape_type |
Tensor shape type.
Definition at line 153 of file blk_tsr_engine.h.
◆ size_type
typedef EngineTrait<Derived>::size_type TiledArray::expressions::BlkTsrEngineBase< Derived >::size_type |
Size type.
Definition at line 149 of file blk_tsr_engine.h.
◆ trange_type
typedef EngineTrait<Derived>::trange_type TiledArray::expressions::BlkTsrEngineBase< Derived >::trange_type |
Tiled range type type.
Definition at line 151 of file blk_tsr_engine.h.
◆ value_type
typedef EngineTrait<Derived>::value_type TiledArray::expressions::BlkTsrEngineBase< Derived >::value_type |
Tensor value type.
Definition at line 140 of file blk_tsr_engine.h.
Constructor & Destructor Documentation
◆ BlkTsrEngineBase() [1/2]
|
inline |
Definition at line 175 of file blk_tsr_engine.h.
◆ BlkTsrEngineBase() [2/2]
|
inline |
Definition at line 181 of file blk_tsr_engine.h.
Member Function Documentation
◆ init_distribution()
|
inline |
◆ make_dist_eval()
|
inline |
Construct the distributed evaluator for array.
Create the pimpl for the distributed evaluator
Definition at line 269 of file blk_tsr_engine.h.
◆ make_tag()
|
inline |
Expression identification tag.
- Returns
- An expression tag used to identify this expression
Definition at line 285 of file blk_tsr_engine.h.
◆ make_trange() [1/2]
|
inline |
Non-permuting tiled range factory function.
- Returns
- The result tiled range
Definition at line 189 of file blk_tsr_engine.h.
◆ make_trange() [2/2]
|
inline |
Permuting tiled range factory function.
- Returns
- The result tiled range
Definition at line 224 of file blk_tsr_engine.h.
Member Data Documentation
◆ array_
|
protected |
The array object.
Definition at line 81 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.
◆ lower_bound_
|
protected |
Lower bound of the tile block.
Definition at line 169 of file blk_tsr_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.
◆ upper_bound_
|
protected |
Upper bound of the tile block.
Definition at line 171 of file blk_tsr_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/blk_tsr_engine.h