Bridge++  Ver. 1.3.x
commonParameters.h
Go to the documentation of this file.
1 
14 #ifndef COMMONPARAMETERS_INCLUDED
15 #define COMMONPARAMETERS_INCLUDED
16 
17 #include <string>
18 using std::string;
19 
20 #include <cmath>
21 
22 //#include <valarray>
23 #include <vector>
24 
25 #include "bridgeIO.h"
26 
28 
41  private:
42 
43  //- color, spinor and space-time dimension
44  static int m_Nc;
45  static const int m_Nd;
46  static const int m_Ndim;
47 
48  static const double m_epsilon_criterion;
49 
50  //- global lattice size
51  static int m_Lx, m_Ly, m_Lz, m_Lt;
52  static int m_Lvol;
53 
54  //- Number of processors assigined in each direction
55  static int m_NPEx, m_NPEy, m_NPEz, m_NPEt, m_NPE;
56  static char m_map_grid[16];
57 
58  //- local lattice size
59  static int m_Nx, m_Ny, m_Nz, m_Nt, m_Nvol;
60 
61  static bool m_initialized;
62 
66 
67  // static void setup(const string&);
68  static bool check_parameters();
69 
71 
72  public:
74  static void init(const std::vector<int>& lattice_size,
75  const std::vector<int>& grid_size);
76 
78  static void init(const std::vector<int>& lattice_size,
79  const std::vector<int>& grid_size,
80  const int Nc);
81 
83  static void init_Vlevel(Bridge::VerboseLevel vlevel);
84 
85  static void print_parameters();
86 
87  static int Lx() { return m_Lx; }
88  static int Ly() { return m_Ly; }
89  static int Lz() { return m_Lz; }
90  static int Lt() { return m_Lt; }
91  static int Lvol() { return m_Lvol; }
92 
93  static int NPEx() { return m_NPEx; }
94  static int NPEy() { return m_NPEy; }
95  static int NPEz() { return m_NPEz; }
96  static int NPEt() { return m_NPEt; }
97  static int NPE() { return m_NPE; }
98 
99  static char *Grid_map() { return m_map_grid; }
100 
101  static int Nx() { return m_Nx; }
102  static int Ny() { return m_Ny; }
103  static int Nz() { return m_Nz; }
104  static int Nt() { return m_Nt; }
105  static int Nvol() { return m_Nvol; }
106 
107  static int Nc() { return m_Nc; }
108  static int Nd() { return m_Nd; }
109  static int Ndim() { return m_Ndim; }
110 
111  static double epsilon_criterion() { return m_epsilon_criterion; }
112  static double epsilon_criterion2() { return pow(m_epsilon_criterion, 2); }
113 
114  static Bridge::VerboseLevel Vlevel() { return m_vlevel; }
115 };
116 #endif
static int NPEy()
static double epsilon_criterion()
static int NPEt()
CommonParameters(const CommonParameters &)
static const int m_Nd
static Bridge::VerboseLevel Vlevel()
static char m_map_grid[16]
static void print_parameters()
static void init_Vlevel(Bridge::VerboseLevel vlevel)
initialization for default verbose level.
static int Lvol()
static Bridge::VerboseLevel m_vlevel
static const int m_Ndim
static double epsilon_criterion2()
static char * Grid_map()
Common parameter class: provides parameters as singleton.
static int NPEx()
static bool check_parameters()
static int NPEz()
VerboseLevel
Definition: bridgeIO.h:39
static bool m_initialized
static const double m_epsilon_criterion
static void init(const std::vector< int > &lattice_size, const std::vector< int > &grid_size)
initialization (Nc=3 is assumed).
CommonParameters & operator=(const CommonParameters &)
static int NPE()