QDP++
qdp_scalar_specific.h File Reference
#include "qdp_dispatch.h"

Go to the source code of this file.

Classes

struct  QDP::u_arg< T, T1, Op, RHS >
 user argument for the evaluate function: More...
struct  QDP::user_arg< T, T1, Op, RHS >
 user argument for the evaluate function: More...
struct  QDP::SumMultiOLatticeThreadArgs< RHS, T >
 multi1d<OScalar> dest = sumMulti(OLattice,Set) More...
struct  QDP::FnMap
struct  QDP::ForEach< UnaryNode< FnMap, A >, EvalLeaf1, CTag >
class  QDP::Map
 General permutation map class for communications. More...
class  QDP::ArrayMap
 Array of general permutation map class for communications. More...
class  QDP::BiDirectionalMap
 BiDirectional of general permutation map class for communications. More...
class  QDP::ArrayBiDirectionalMap
 ArrayBiDirectional of general permutation map class for communications. More...

Namespaces

namespace  QDP
 Yet another random number generator.
namespace  QDP::Layout
 Layout namespace holding info on problem size and machine info.
namespace  QDP::QDPInternal
namespace  QDP::QDP
namespace  QDP::RNG
 Random number generator namespace.
namespace  QDP::LatticeTimeSliceIO

Macros

#define QDP_DISPATCH_H
#define QDPXX_MESSAGE(s)
#define QDP_CONFIG_H

Functions

LatticeInteger QDP::Layout::latticeCoordinate (int mu)
 coord[mu] <- mu : fill with lattice coord in mu direction
template<class T>
void QDP::QDPInternal::globalSumArray (T *dest, int n)
 Dummy array sum accross all nodes.
template<class T>
void QDP::QDPInternal::globalSumArray (multi1d< T > &dest)
 Global sum on a multi1d.
template<class T>
void QDP::QDPInternal::globalSumArray (multi2d< T > &dest)
 Global sum on a multi2d.
template<class T>
void QDP::QDPInternal::globalSum (T &dest)
 Sum across all nodes.
void QDP::QDPInternal::globalAnd (bool &dest)
 Wrapper to get a functional global And.
void QDP::QDPInternal::globalOr (bool &dest)
 Wrapper to get a functional global Or.
template<class T>
void QDP::QDPInternal::broadcast (T &dest)
 Broadcast from primary node to all other nodes.
template<>
void QDP::QDPInternal::broadcast (std::string &dest)
 Dummy broadcast from primary node to all other nodes.
void QDP::QDPInternal::broadcast_str (std::string &result)
 Broadcast a string from primary node to all other nodes.
void QDP::QDPInternal::broadcast (void *dest, size_t nbytes)
 Broadcast from primary node to all other nodes.
template<class T, class T1, class Op, class RHS>
void QDP::ev_userfunc (int lo, int hi, int myId, u_arg< T, T1, Op, RHS > *a)
 user function for the evaluate function:
template<class T, class T1, class Op, class RHS>
void QDP::evaluate_userfunc (int lo, int hi, int myId, user_arg< T, T1, Op, RHS > *a)
 user function for the evaluate function:
static const char *const QDP::QDP_PACKAGE (PACKAGE)
static const char *const QDP::QDP_PACKAGE_BUGREPORT (PACKAGE_BUGREPORT)
static const char *const QDP::QDP_PACKAGE_NAME (PACKAGE_NAME)
static const char *const QDP::QDP_PACKAGE_STRING (PACKAGE_STRING)
static const char *const QDP::QDP_PACKAGE_TARNAME (PACKAGE_TARNAME)
static const char *const QDP::QDP_PACKAGE_VERSION (PACKAGE_VERSION)
static const char *const QDP::QDP_VERSION (VERSION)
int QDP::QDP::qdpNumThreads ()
int QDP::QDP::qdpThreadNum ()
template<class Arg>
void QDP::QDP::dispatch_to_threads (int numSiteTable, Arg a, void(*func)(int, int, int, Arg *))
template<class T, class T1, class Op, class RHS>
void QDP::evaluate (OLattice< T > &dest, const Op &op, const QDPExpr< RHS, OScalar< T1 > > &rhs, const Subset &s)
 OLattice Op Scalar(Expression(source)) under an Subset.
template<class T, class T1, class Op, class RHS>
void QDP::evaluate (OLattice< T > &dest, const Op &op, const QDPExpr< RHS, OLattice< T1 > > &rhs, const Subset &s)
 OLattice Op OLattice(Expression(source)) under an Subset.
template<class T, class T1, class Op, class RHS>
void QDP::evaluate_F (T *dest, const Op &op, const QDPExpr< RHS, OLattice< T1 > > &rhs, const Subset &s)
template<class T1, class T2>
void QDP::copymask (OSubLattice< T2 > d, const OLattice< T1 > &mask, const OLattice< T2 > &s1)
 dest = (mask) ? s1 : dest
template<class T1, class T2>
void QDP::copymask (OLattice< T2 > &dest, const OLattice< T1 > &mask, const OLattice< T2 > &s1)
 dest = (mask) ? s1 : dest
template<class T>
void QDP::random (OScalar< T > &d)
 dest = random
template<class T>
void QDP::random (OLattice< T > &d, const Subset &s)
 dest = random under a subset
template<class T>
void QDP::random (OSubLattice< T > dd)
 dest = random under a subset
template<class T>
void QDP::random (OLattice< T > &d)
 dest = random
template<class T>
void QDP::gaussian (OLattice< T > &d, const Subset &s)
 dest = gaussian under a subset
template<class T>
void QDP::gaussian (OSubLattice< T > dd)
 dest = gaussian under a subset
template<class T>
void QDP::gaussian (OLattice< T > &d)
 dest = gaussian
template<class T>
void QDP::zero_rep (OLattice< T > &dest, const Subset &s)
 dest = 0
template<class T>
void QDP::zero_rep (OLattice< T > &dest)
 dest = 0
template<class RHS, class T>
UnaryReturn< OScalar< T >, FnSum >::Type_t QDP::sum (const QDPExpr< RHS, OScalar< T > > &s1, const Subset &s)
 OScalar = sum(OScalar) under an explicit subset.
template<class RHS, class T>
UnaryReturn< OScalar< T >, FnSum >::Type_t QDP::sum (const QDPExpr< RHS, OScalar< T > > &s1)
 OScalar = sum(OScalar).
template<class RHS, class T>
UnaryReturn< OLattice< T >, FnSum >::Type_t QDP::sum (const QDPExpr< RHS, OLattice< T > > &s1, const Subset &s)
 OScalar = sum(OLattice) under an explicit subset.
template<class RHS, class T>
UnaryReturn< OLattice< T >, FnSum >::Type_t QDP::sum (const QDPExpr< RHS, OLattice< T > > &s1)
 OScalar = sum(OLattice).
template<class RHS, class T>
UnaryReturn< OScalar< T >, FnSumMulti >::Type_t QDP::sumMulti (const QDPExpr< RHS, OScalar< T > > &s1, const Set &ss)
 multi1d<OScalar> dest = sumMulti(OScalar,Set)
template<class RHS, class T>
void QDP::sumMultiKernel (int lo, int hi, int my_id, SumMultiOLatticeThreadArgs< RHS, T > *a)
template<class RHS, class T>
UnaryReturn< OLattice< T >, FnSumMulti >::Type_t QDP::sumMulti (const QDPExpr< RHS, OLattice< T > > &s1, const Set &ss)
 multi1d<OScalar> dest = sumMulti(OLattice,Set)
template<class T>
multi2d< typename UnaryReturn< OScalar< T >, FnSumMulti >::Type_tQDP::sumMulti (const multi1d< OScalar< T > > &s1, const Set &ss)
 multi2d<OScalar> dest = sumMulti(multi1d<OScalar>,Set)
template<class T>
multi2d< typename UnaryReturn< OLattice< T >, FnSumMulti >::Type_tQDP::sumMulti (const multi1d< OLattice< T > > &s1, const Set &ss)
 multi2d<OScalar> dest = sumMulti(multi1d<OLattice>,Set)
template<class T>
UnaryReturn< OScalar< T >, FnNorm2 >::Type_t QDP::norm2 (const multi1d< OScalar< T > > &s1)
 OScalar = norm2(trace(adj(multi1d<source>)*multi1d<source>)).
template<class T>
UnaryReturn< OScalar< T >, FnNorm2 >::Type_t QDP::norm2 (const multi1d< OScalar< T > > &s1, const Subset &s)
 OScalar = sum(OScalar) under an explicit subset.
template<class T>
UnaryReturn< OLattice< T >, FnNorm2 >::Type_t QDP::norm2 (const multi1d< OLattice< T > > &s1, const Subset &s)
 OScalar = norm2(multi1d<OLattice>) under an explicit subset.
template<class T>
UnaryReturn< OLattice< T >, FnNorm2 >::Type_t QDP::norm2 (const multi1d< OLattice< T > > &s1)
 OScalar = norm2(multi1d<OLattice>).
template<class T1, class T2>
BinaryReturn< OScalar< T1 >, OScalar< T2 >, FnInnerProduct >::Type_t QDP::innerProduct (const multi1d< OScalar< T1 > > &s1, const multi1d< OScalar< T2 > > &s2)
 OScalar = innerProduct(multi1d<source1>,multi1d<source2>)).
template<class T1, class T2>
BinaryReturn< OScalar< T1 >, OScalar< T2 >, FnInnerProduct >::Type_t QDP::innerProduct (const multi1d< OScalar< T1 > > &s1, const multi1d< OScalar< T2 > > &s2, const Subset &s)
 OScalar = sum(OScalar) under an explicit subset.
template<class T1, class T2>
BinaryReturn< OLattice< T1 >, OLattice< T2 >, FnInnerProduct >::Type_t QDP::innerProduct (const multi1d< OLattice< T1 > > &s1, const multi1d< OLattice< T2 > > &s2, const Subset &s)
 OScalar = innerProduct(multi1d<OLattice>,multi1d<OLattice>) under an explicit subset.
template<class T1, class T2>
BinaryReturn< OLattice< T1 >, OLattice< T2 >, FnInnerProduct >::Type_t QDP::innerProduct (const multi1d< OLattice< T1 > > &s1, const multi1d< OLattice< T2 > > &s2)
 OScalar = innerProduct(multi1d<OLattice>,multi1d<OLattice>).
template<class T1, class T2>
BinaryReturn< OScalar< T1 >, OScalar< T2 >, FnInnerProductReal >::Type_t QDP::innerProductReal (const multi1d< OScalar< T1 > > &s1, const multi1d< OScalar< T2 > > &s2)
 OScalar = innerProductReal(multi1d<source1>,multi1d<source2>)).
template<class T1, class T2>
BinaryReturn< OScalar< T1 >, OScalar< T2 >, FnInnerProductReal >::Type_t QDP::innerProductReal (const multi1d< OScalar< T1 > > &s1, const multi1d< OScalar< T2 > > &s2, const Subset &s)
 OScalar = sum(OScalar) under an explicit subset.
template<class T1, class T2>
BinaryReturn< OLattice< T1 >, OLattice< T2 >, FnInnerProductReal >::Type_t QDP::innerProductReal (const multi1d< OLattice< T1 > > &s1, const multi1d< OLattice< T2 > > &s2, const Subset &s)
 OScalar = innerProductReal(multi1d<OLattice>,multi1d<OLattice>) under an explicit subset.
template<class T1, class T2>
BinaryReturn< OLattice< T1 >, OLattice< T2 >, FnInnerProductReal >::Type_t QDP::innerProductReal (const multi1d< OLattice< T1 > > &s1, const multi1d< OLattice< T2 > > &s2)
 OScalar = innerProductReal(multi1d<OLattice>,multi1d<OLattice>).
template<class RHS, class T>
UnaryReturn< OScalar< T >, FnGlobalMax >::Type_t QDP::globalMax (const QDPExpr< RHS, OScalar< T > > &s1)
 OScalar = globalMax(OScalar).
template<class RHS, class T>
UnaryReturn< OLattice< T >, FnGlobalMax >::Type_t QDP::globalMax (const QDPExpr< RHS, OLattice< T > > &s1)
 OScalar = globalMax(OLattice).
template<class RHS, class T>
UnaryReturn< OScalar< T >, FnGlobalMin >::Type_t QDP::globalMin (const QDPExpr< RHS, OScalar< T > > &s1)
 OScalar = globalMin(OScalar).
template<class RHS, class T>
UnaryReturn< OLattice< T >, FnGlobalMin >::Type_t QDP::globalMin (const QDPExpr< RHS, OLattice< T > > &s1)
 OScalar = globalMin(OLattice).
template<class T>
bool QDP::isnan (const QDPType< T, OScalar< T > > &s1)
 bool = isnan(OScalar)
template<class T>
bool QDP::isnan (const OLattice< T > &s1)
 bool = isnan(OLattice)
template<class T>
bool QDP::isinf (const QDPType< T, OScalar< T > > &s1)
 bool = isinf(OScalar)
template<class T>
bool QDP::isinf (const OLattice< T > &s1)
 bool = isinf(OLattice)
template<class T>
bool QDP::isfinite (const QDPType< T, OScalar< T > > &s1)
 bool = isfinite(OScalar)
template<class T>
bool QDP::isfinite (const OLattice< T > &s1)
 bool = isfinite(OLattice)
template<class T>
bool QDP::isnormal (const QDPType< T, OScalar< T > > &s1)
 bool = isnormal(OScalar)
template<class T>
bool QDP::isnormal (const OLattice< T > &s1)
 bool = isnormal(OLattice)
multi1d< int > QDP::crtesn (int ipos, const multi1d< int > &latt_size)
 Decompose a lexicographic site into coordinates.
template<class T>
void QDP::write (BinaryWriter &bin, const OScalar< T > &d)
 Binary output.
template<class T>
void QDP::write (BinaryWriter &bin, const OLattice< T > &d)
 Binary output.
template<class T>
void QDP::write (BinaryWriter &bin, OSubLattice< T > dd)
 Write a single site of a lattice quantity.
template<class T>
void QDP::write (BinaryWriter &bin, const OLattice< T > &d, const multi1d< int > &coord)
 Write a single site of a lattice quantity.
template<class T>
void QDP::read (BinaryReader &bin, OScalar< T > &d)
 Binary input.
template<class T>
void QDP::read (BinaryReader &bin, OLattice< T > &d)
 Binary input.
template<class T>
void QDP::read (BinaryReader &bin, OLattice< T > &d, const multi1d< int > &coord)
 Read a single site of a lattice quantity.
template<class T>
void QDP::read (BinaryReader &bin, OSubLattice< T > d)
 Read a single site of a lattice quantity.
template<class T>
void QDP::LatticeTimeSliceIO::readSlice (BinaryReader &bin, OLattice< T > &data, int start_lexico, int stop_lexico)
template<class T>
void QDP::LatticeTimeSliceIO::writeSlice (BinaryWriter &bin, OLattice< T > &data, int start_lexico, int stop_lexico)

Macro Definition Documentation

◆ QDP_CONFIG_H

#define QDP_CONFIG_H

◆ QDP_DISPATCH_H

#define QDP_DISPATCH_H

◆ QDPXX_MESSAGE

#define QDPXX_MESSAGE ( s)