|
QDP++
|
General permutation map class for communications. More...
#include <qdp_parscalar_specific.h>
Public Member Functions | |
| Map () | |
| Constructor - does nothing really. | |
| ~Map () | |
| Destructor. | |
| Map (const MapFunc &fn) | |
| Constructor from a function object. | |
| void | make (const MapFunc &func) |
| Actual constructor from a function object. | |
| template<class T1> | |
| OLattice< T1 > | operator() (const OLattice< T1 > &l) |
| Function call operator for a shift. | |
| template<class T1> | |
| OScalar< T1 > | operator() (const OScalar< T1 > &l) |
| template<class RHS, class T1> | |
| OScalar< T1 > | operator() (const QDPExpr< RHS, OScalar< T1 > > &l) |
| template<class RHS, class T1> | |
| OLattice< T1 > | operator() (const QDPExpr< RHS, OLattice< T1 > > &l) |
| const multi1d< int > & | goffset () const |
| Accessor to offsets. | |
| const multi1d< int > & | soffset () const |
| Map () | |
| Constructor - does nothing really. | |
| ~Map () | |
| Destructor. | |
| Map (const MapFunc &fn) | |
| Constructor from a function object. | |
| void | make (const MapFunc &func) |
| Actual constructor from a function object. | |
| template<class T1> | |
| OLattice< T1 > | operator() (const OLattice< T1 > &l) |
| Function call operator for a shift. | |
| template<class T1> | |
| OScalar< T1 > | operator() (const OScalar< T1 > &l) |
| template<class RHS, class T1> | |
| OScalar< T1 > | operator() (const QDPExpr< RHS, OScalar< T1 > > &l) |
| template<class RHS, class T1> | |
| OLattice< T1 > | operator() (const QDPExpr< RHS, OLattice< T1 > > &l) |
| const multi1d< int > & | goffset () const |
| Accessor to offsets. | |
| const multi1d< int > & | soffset () const |
| Map () | |
| Constructor - does nothing really. | |
| ~Map () | |
| Destructor. | |
| Map (const MapFunc &fn) | |
| Constructor from a function object. | |
| void | make (const MapFunc &func) |
| Actual constructor from a function object. | |
| template<class T1, class C1> | |
| MakeReturn< UnaryNode< FnMap, typenameCreateLeaf< QDPType< T1, C1 > >::Leaf_t >, C1 >::Expression_t | operator() (const QDPType< T1, C1 > &l) |
| Function call operator for a shift. | |
| template<class T1, class C1> | |
| MakeReturn< UnaryNode< FnMap, typenameCreateLeaf< QDPExpr< T1, C1 > >::Leaf_t >, C1 >::Expression_t | operator() (const QDPExpr< T1, C1 > &l) |
| const multi1d< int > & | Offsets () const |
| Accessor to offsets. | |
| Map () | |
| Constructor - does nothing really. | |
| ~Map () | |
| Destructor. | |
| Map (const MapFunc &fn) | |
| Constructor from a function object. | |
| void | make (const MapFunc &func) |
| Actual constructor from a function object. | |
| template<class T1> | |
| OLattice< T1 > | operator() (const OLattice< T1 > &l) |
| Function call operator for a shift. | |
| template<class T1> | |
| OScalar< T1 > | operator() (const OScalar< T1 > &l) |
| template<class RHS, class T1> | |
| OScalar< T1 > | operator() (const QDPExpr< RHS, OScalar< T1 > > &l) |
| template<class RHS, class T1> | |
| OLattice< T1 > | operator() (const QDPExpr< RHS, OLattice< T1 > > &l) |
| const multi1d< int > & | goffset () const |
| Accessor to offsets. | |
General permutation map class for communications.
Definition at line 1879 of file qdp_parscalar_specific.h.
|
inline |
Constructor - does nothing really.
Definition at line 1883 of file qdp_parscalar_specific.h.
|
inline |
Destructor.
Definition at line 1886 of file qdp_parscalar_specific.h.
|
inline |
Constructor from a function object.
Definition at line 1889 of file qdp_parscalar_specific.h.
References make().
|
inline |
Constructor - does nothing really.
Definition at line 971 of file qdp_parscalarvec_specific.h.
|
inline |
Destructor.
Definition at line 974 of file qdp_parscalarvec_specific.h.
|
inline |
Constructor from a function object.
Definition at line 977 of file qdp_parscalarvec_specific.h.
References make().
|
inline |
Constructor - does nothing really.
Definition at line 1789 of file qdp_scalar_specific.h.
|
inline |
Destructor.
Definition at line 1792 of file qdp_scalar_specific.h.
|
inline |
Constructor from a function object.
Definition at line 1795 of file qdp_scalar_specific.h.
References make().
|
inline |
Constructor - does nothing really.
Definition at line 883 of file qdp_scalarvec_specific.h.
|
inline |
Destructor.
Definition at line 886 of file qdp_scalarvec_specific.h.
|
inline |
Constructor from a function object.
Definition at line 889 of file qdp_scalarvec_specific.h.
References make().
|
inline |
Accessor to offsets.
Definition at line 2164 of file qdp_parscalar_specific.h.
|
inline |
Accessor to offsets.
Definition at line 1275 of file qdp_parscalarvec_specific.h.
|
inline |
Accessor to offsets.
Definition at line 995 of file qdp_scalarvec_specific.h.
| void QDP::Map::make | ( | const MapFunc & | func | ) |
Actual constructor from a function object.
Initializer for generic map constructor.
The semantics are source_site = func(dest_site,isign)
Definition at line 29 of file qdp_parscalar_specific.cc.
References QDP::Layout::linearSiteIndex(), QDP::Layout::nodeNumber(), QDP::QDP_error_exit(), QDP::QDP_info(), QDP::multi1d< T >::resize(), QDP::Layout::siteCoords(), QDP::Layout::sitesOnNode(), QDP::multi1d< T >::size(), and QDP::uniquify_list().
Referenced by Map(), operator()(), and operator()().
| void QDP::Map::make | ( | const MapFunc & | func | ) |
Actual constructor from a function object.
The semantics are source_site = func(dest_site,isign)
| void QDP::Map::make | ( | const MapFunc & | func | ) |
Actual constructor from a function object.
The semantics are source_site = func(dest_site)
| void QDP::Map::make | ( | const MapFunc & | func | ) |
Actual constructor from a function object.
The semantics are source_site = func(dest_site,isign)
|
inline |
Accessor to offsets.
Definition at line 1837 of file qdp_scalar_specific.h.
Function call operator for a shift.
map(source)
Implements: dest(x) = s1(x+offsets)
Shifts on a OLattice are non-trivial.
Notice, this implementation does not allow an Inner grid
Definition at line 1907 of file qdp_parscalar_specific.h.
References QDP::OLattice< T >::elem(), QDP::Layout::getLogicalCoordFrom(), QDP::Layout::nodeCoord(), QDP::Layout::nodeNumber(), QDP_ALIGNMENT_SIZE, QDP::QDP_error_exit(), QDP::QDP_info(), and QDP::Layout::sitesOnNode().
Referenced by operator()(), and operator()().
Function call operator for a shift.
map(source)
Implements: dest(x) = s1(x+offsets)
Shifts on a OLattice are non-trivial.
Notice, this implementation does not allow an Inner grid
Definition at line 995 of file qdp_parscalarvec_specific.h.
References QDP::copy_site(), QDP::OLattice< T >::elem(), QDP::gather_sites(), QDP::getSite(), INNER_LEN, INNER_LOG, QDP::Layout::nodeNumber(), QDP_ALIGNMENT_SIZE, QDP::QDP_error_exit(), QDP::QDP_info(), and QDP::Layout::sitesOnNode().
Function call operator for a shift.
map(source)
Implements: dest(x) = s1(x+offsets)
Shifts on a OLattice are non-trivial.
Notice, this implementation supports an Inner grid
Definition at line 907 of file qdp_scalarvec_specific.h.
References QDP::OLattice< T >::elem(), QDP::gather_sites(), INNER_LEN, INNER_LOG, QDP::QDP_info(), and QDP::Layout::sitesOnNode().
Definition at line 2130 of file qdp_parscalar_specific.h.
Definition at line 1241 of file qdp_parscalarvec_specific.h.
Definition at line 961 of file qdp_scalarvec_specific.h.
|
inline |
Definition at line 2150 of file qdp_parscalar_specific.h.
References operator()().
|
inline |
Definition at line 1261 of file qdp_parscalarvec_specific.h.
References operator()().
|
inline |
Definition at line 981 of file qdp_scalarvec_specific.h.
References operator()().
|
inline |
Definition at line 2137 of file qdp_parscalar_specific.h.
References operator()().
|
inline |
Definition at line 1248 of file qdp_parscalarvec_specific.h.
References operator()().
|
inline |
Definition at line 968 of file qdp_scalarvec_specific.h.
References operator()().
|
inline |
Definition at line 1826 of file qdp_scalar_specific.h.
References QDP::MakeReturn< T, C >::make(), and make().
|
inline |
Function call operator for a shift.
map(source)
Implements: dest(x) = s1(x+offsets)
Shifts on a OLattice are non-trivial. Notice, there may be an ILattice underneath which requires shift args. This routine is very architecture dependent.
Definition at line 1814 of file qdp_scalar_specific.h.
References QDP::MakeReturn< T, C >::make(), and make().
|
inline |
Definition at line 2165 of file qdp_parscalar_specific.h.
|
inline |
Definition at line 1276 of file qdp_parscalarvec_specific.h.