Bridge++  Ver. 2.0.3
field_G_imp_SU_N-inc.h
Go to the documentation of this file.
1 
14 #define NC m_Nc
15 #define NCOL m_Nc
16 
17 //====================================================================
18 namespace {
19  void check_Nc()
20  {
22  "Field_G: implementation for general SU(N).\n");
23  }
24 
25 
26  double mult_Gnn_r(const double *g1, const double *g2, const int Nc)
27  {
28  double a = 0.0;
29 
30  for (int i = 0; i < Nc; ++i) {
31  a += g1[2 * i] * g2[2 * i * Nc] - g1[2 * i + 1] * g2[2 * i * Nc + 1];
32  }
33  return a;
34  }
35 
36 
37  double mult_Gnn_i(const double *g1, const double *g2, const int Nc)
38  {
39  double a = 0.0;
40 
41  for (int i = 0; i < Nc; ++i) {
42  a += g1[2 * i] * g2[2 * i * Nc + 1] + g1[2 * i + 1] * g2[2 * i * Nc];
43  }
44  return a;
45  }
46 
47 
48  double mult_Gdn_r(const double *g1, const double *g2, const int Nc)
49  {
50  double a = 0.0;
51 
52  for (int i = 0; i < Nc; ++i) {
53  a += g1[2 * i * Nc] * g2[2 * i * Nc] + g1[2 * i * Nc + 1] * g2[2 * i * Nc + 1];
54  }
55  return a;
56  }
57 
58 
59  double mult_Gdn_i(const double *g1, const double *g2, const int Nc)
60  {
61  double a = 0.0;
62 
63  for (int i = 0; i < Nc; ++i) {
64  a += g1[2 * i * Nc] * g2[2 * i * Nc + 1] - g1[2 * i * Nc + 1] * g2[2 * i * Nc];
65  }
66  return a;
67  }
68 
69 
70  double mult_Gnd_r(const double *g1, const double *g2, const int Nc)
71  {
72  double a = 0.0;
73 
74  for (int i = 0; i < Nc; ++i) {
75  a += g1[2 * i] * g2[2 * i] + g1[2 * i + 1] * g2[2 * i + 1];
76  }
77  return a;
78  }
79 
80 
81  double mult_Gnd_i(const double *g1, const double *g2, const int Nc)
82  {
83  double a = 0.0;
84 
85  for (int i = 0; i < Nc; ++i) {
86  a += -g1[2 * i] * g2[2 * i + 1] + g1[2 * i + 1] * g2[2 * i];
87  }
88  return a;
89  }
90 
91 
92  double mult_Gdd_r(const double *g1, const double *g2, const int Nc)
93  {
94  double a = 0.0;
95 
96  for (int i = 0; i < Nc; ++i) {
97  a += g1[2 * i * Nc] * g2[2 * i] - g1[2 * i * Nc + 1] * g2[2 * i + 1];
98  }
99  return a;
100  }
101 
102 
103  double mult_Gdd_i(const double *g1, const double *g2, const int Nc)
104  {
105  double a = 0.0;
106 
107  for (int i = 0; i < Nc; ++i) {
108  a += -g1[2 * i * Nc] * g2[2 * i + 1] - g1[2 * i * Nc + 1] * g2[2 * i];
109  }
110  return a;
111  }
112 } // end of nameless namespace
113 //====================================================================
114 //============================================================END=====
Bridge::BridgeIO::paranoiac
void paranoiac(const char *format,...)
Definition: bridgeIO.cpp:238
CommonParameters::Vlevel
static Bridge::VerboseLevel Vlevel()
Definition: commonParameters.h:122
Bridge::vout
BridgeIO vout
Definition: bridgeIO.cpp:512