Bridge++  Version 1.4.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
gammaMatrixSet_Chiral.cpp
Go to the documentation of this file.
1 
14 #include "gammaMatrixSet_Chiral.h"
15 
16 #include <cassert>
17 
20 
21 #include "IO/bridgeIO.h"
22 using Bridge::vout;
23 
24 #ifdef USE_FACTORY
25 namespace {
26  GammaMatrixSet *create_object()
27  {
28  return new GammaMatrixSet_Chiral();
29  }
30 
31 
32  bool init = GammaMatrixSet::Factory::Register("Chiral", create_object);
33 }
34 #endif
35 
36 const std::string GammaMatrixSet_Chiral::class_name = "GammaMatrixSet_Chiral";
37 
38 //====================================================================
40 {
41  vout.general(m_vl, "Gamma matrix: chiral representation.\n");
42 
43  m_gm[UNITY].set(0, 0, icomplex(1, 0));
44  m_gm[UNITY].set(1, 1, icomplex(1, 0));
45  m_gm[UNITY].set(2, 2, icomplex(1, 0));
46  m_gm[UNITY].set(3, 3, icomplex(1, 0));
47 
48  m_gm[GAMMA1].set(0, 3, icomplex(0, -1));
49  m_gm[GAMMA1].set(1, 2, icomplex(0, -1));
50  m_gm[GAMMA1].set(2, 1, icomplex(0, 1));
51  m_gm[GAMMA1].set(3, 0, icomplex(0, 1));
52 
53  m_gm[GAMMA2].set(0, 3, icomplex(-1, 0));
54  m_gm[GAMMA2].set(1, 2, icomplex(1, 0));
55  m_gm[GAMMA2].set(2, 1, icomplex(1, 0));
56  m_gm[GAMMA2].set(3, 0, icomplex(-1, 0));
57 
58  m_gm[GAMMA3].set(0, 2, icomplex(0, -1));
59  m_gm[GAMMA3].set(1, 3, icomplex(0, 1));
60  m_gm[GAMMA3].set(2, 0, icomplex(0, 1));
61  m_gm[GAMMA3].set(3, 1, icomplex(0, -1));
62 
63  m_gm[GAMMA4].set(0, 2, icomplex(-1, 0));
64  m_gm[GAMMA4].set(1, 3, icomplex(-1, 0));
65  m_gm[GAMMA4].set(2, 0, icomplex(-1, 0));
66  m_gm[GAMMA4].set(3, 1, icomplex(-1, 0));
67 
68  m_gm[GAMMA5].set(0, 0, icomplex(1, 0));
69  m_gm[GAMMA5].set(1, 1, icomplex(1, 0));
70  m_gm[GAMMA5].set(2, 2, icomplex(-1, 0));
71  m_gm[GAMMA5].set(3, 3, icomplex(-1, 0));
72 
73  m_gm[GAMMA51] = m_gm[GAMMA5].mult(m_gm[GAMMA1]);
74  m_gm[GAMMA52] = m_gm[GAMMA5].mult(m_gm[GAMMA2]);
75  m_gm[GAMMA53] = m_gm[GAMMA5].mult(m_gm[GAMMA3]);
76  m_gm[GAMMA54] = m_gm[GAMMA5].mult(m_gm[GAMMA4]);
77 
78  m_gm[GAMMA15] = m_gm[GAMMA1].mult(m_gm[GAMMA5]);
79  m_gm[GAMMA25] = m_gm[GAMMA2].mult(m_gm[GAMMA5]);
80  m_gm[GAMMA35] = m_gm[GAMMA3].mult(m_gm[GAMMA5]);
81  m_gm[GAMMA45] = m_gm[GAMMA4].mult(m_gm[GAMMA5]);
82 
83  m_gm[SIGMA12] = m_gm[GAMMA2].mult_i(m_gm[GAMMA1]);
84  m_gm[SIGMA23] = m_gm[GAMMA3].mult_i(m_gm[GAMMA2]);
85  m_gm[SIGMA31] = m_gm[GAMMA1].mult_i(m_gm[GAMMA3]);
86 
87  m_gm[SIGMA41] = m_gm[GAMMA1].mult_i(m_gm[GAMMA4]);
88  m_gm[SIGMA42] = m_gm[GAMMA2].mult_i(m_gm[GAMMA4]);
89  m_gm[SIGMA43] = m_gm[GAMMA3].mult_i(m_gm[GAMMA4]);
90 
91  m_gm[CHARGECONJG] = m_gm[GAMMA4].mult(m_gm[GAMMA2]);
92 
93  // print();
94 }
95 
96 
97 //====================================================================
99 {
100  vout.general(m_vl, "\n unity =\n");
101  m_gm[UNITY].print();
102 
103  vout.general(m_vl, "\n gamma1 =\n");
104  m_gm[GAMMA1].print();
105 
106  vout.general(m_vl, "\n gamma2 =\n");
107  m_gm[GAMMA2].print();
108 
109  vout.general(m_vl, "\n gamma3 =\n");
110  m_gm[GAMMA3].print();
111 
112  vout.general(m_vl, "\n gamma4 =\n");
113  m_gm[GAMMA4].print();
114 
115  vout.general(m_vl, "\n gamma5 =\n");
116  m_gm[GAMMA5].print();
117 
118  vout.general(m_vl, "\n gamma5 * gamma1 =\n");
119  m_gm[GAMMA51].print();
120 
121  vout.general(m_vl, "\n gamma5 * gamma2 =\n");
122  m_gm[GAMMA52].print();
123 
124  vout.general(m_vl, "\n gamma5 * gamma3 =\n");
125  m_gm[GAMMA53].print();
126 
127  vout.general(m_vl, "\n gamma5 * gamma4 =\n");
128  m_gm[GAMMA54].print();
129 
130  vout.general(m_vl, "\n sigma12 = -(i/2) [gamma1, gamma2] =\n");
131  m_gm[SIGMA12].print();
132 
133  vout.general(m_vl, "\n sigma23 = -(i/2) [gamma2, gamma3] =\n");
134  m_gm[SIGMA23].print();
135 
136  vout.general(m_vl, "\n sigma31 = -(i/2) [gamma3, gamma1] =\n");
137  m_gm[SIGMA31].print();
138 
139  vout.general(m_vl, "\n sigma41 = -(i/2) [gamma4, gamma1] =\n");
140  m_gm[SIGMA41].print();
141 
142  vout.general(m_vl, "\n sigma42 = -(i/2) [gamma4, gamma2] =\n");
143  m_gm[SIGMA42].print();
144 
145  vout.general(m_vl, "\n sigma43 = -(i/2) [gamma4, gamma3] =\n");
146  m_gm[SIGMA43].print();
147 
148  vout.general(m_vl, "\n charge_conjg = gamma4 * gamma2 =\n");
149  m_gm[CHARGECONJG].print();
150 }
151 
152 
153 //====================================================================
154 //============================================================END=====
BridgeIO vout
Definition: bridgeIO.cpp:495
std::vector< GammaMatrix > m_gm
void general(const char *format,...)
Definition: bridgeIO.cpp:195
static const std::string class_name
Set of Gamma Matrix: chiral representation.
Set of Gamma Matrices: basis class.
Bridge::VerboseLevel m_vl