Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

mdp_macros.h

Go to the documentation of this file.
00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 #define CHECK_ALL
00014 #define MDP_MPI
00015 #define INCLUDE_DEPRECATED_IO 
00016 
00018 #define forallsites(x)                                     \
00019         for(x.start(); x.is_in(); x.next())
00020 
00023 #define forallsitesofparity(x,pofx)                        \
00024   for(x.start(), x.idx=x.lattice().start[ME][pofx % 2];               \
00025       x.idx<x.lattice().stop[ME][(pofx+(pofx % 2))/2];     \
00026       x.idx++)
00027 
00029 #define forallsitesandcopies(x)                            \
00030      for(x.start(), x.idx=0; x.idx<x.lattice().nvol; x.idx++)
00031 
00033 
00034 // if pofx is EVENODD=2 then loops on even and odd sites
00035 #define forallsitesandcopiesofparity(x,pofx)                     \
00036      for(int __process=0; __process<Nproc; __process++)          \
00037      for(x.start(), x.idx=x.lattice().start[__process][pofx % 2];           \
00038          x.idx<x.lattice().stop[__process][(pofx+(pofx % 2))/2]; \
00039          x.idx++)
00040 
00042 #define ME     mpi.me()
00043 
00044 #define Nproc  mpi.nproc()
00045 
00047 #define error(a) _mpi_error_message(a,__FILE__, __LINE__);
00048 
00049 
00050 
00051 

Generated on Sun Feb 27 15:12:21 2005 by  doxygen 1.4.1