Bridge++  Version 1.5.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
field_F_imp_SU_N-inc.h
Go to the documentation of this file.
1 // This implementation only applies to SU(3) group and Nd=4 case.
2 #define NC m_Nc
3 #define NC2 (2 * m_Nc)
4 #define NDF (2 * m_Nc * m_Nc)
5 #define ND 4
6 #define NCD (4 * m_Nc)
7 #define NCD2 (8 * m_Nc)
8 
9 //====================================================================
10 namespace {
11  void check_Nc()
12  {
14  "Field_F: implementation for general SU(N).\n");
15  }
16 
17 
18  double mult_Gn_r(const double *g, const double *w, int Nc)
19  {
20  double a = 0.0;
21 
22  for (int i = 0; i < Nc; ++i) {
23  a += g[2 * i] * w[2 * i] - g[2 * i + 1] * w[2 * i + 1];
24  }
25  return a;
26  }
27 
28 
29  double mult_Gn_i(const double *g, const double *w, int Nc)
30  {
31  double a = 0.0;
32 
33  for (int i = 0; i < Nc; ++i) {
34  a += g[2 * i] * w[2 * i + 1] + g[2 * i + 1] * w[2 * i];
35  }
36  return a;
37  }
38 
39 
40  double mult_Gd_r(const double *g, const double *w, int Nc)
41  {
42  double a = 0.0;
43 
44  for (int i = 0; i < Nc; ++i) {
45  a += g[2 * i * Nc] * w[2 * i] + g[2 * i * Nc + 1] * w[2 * i + 1];
46  }
47  return a;
48  }
49 
50 
51  double mult_Gd_i(const double *g, const double *w, int Nc)
52  {
53  double a = 0.0;
54 
55  for (int i = 0; i < Nc; ++i) {
56  a += g[2 * i * Nc] * w[2 * i + 1] - g[2 * i * Nc + 1] * w[2 * i];
57  }
58  return a;
59  }
60 } // end of nameless namespace
61 //====================================================================
62 //============================================================END=====
BridgeIO vout
Definition: bridgeIO.cpp:503
static Bridge::VerboseLevel Vlevel()
void paranoiac(const char *format,...)
Definition: bridgeIO.cpp:235