CHROMA
diractodr.cc
Go to the documentation of this file.
1 /*! \file
2  * \brief Basis rotation matrix from Dirac to Degrand-Rossi (and reverse)
3  */
4 
5 #include "chromabase.h"
6 #include "util/ferm/diractodr.h"
7 
8 
9 namespace Chroma {
10 
11 //! The Dirac to Degrand-Rossi spin transformation matrix (and reverse)
12 /*!
13  * \ingroup ferm
14  *
15  * Return the similarity transformation matrix from
16  * Euclidean Dirac to Euclidean Degrand-Rossi basis (or reverse)
17  *
18  * \returns the U such that Gamma_{Dirac} = U^\dagger Gamma_{DeGrand-Rossi} U
19  * (or such that Gamma_{DeGrand-Rossi} = U Gamma_{Dirac} U^\dagger )
20  */
21 
22 SpinMatrixD DiracToDRMat()
23 {
24  /*
25  * Following is the definition of unitary matrix which transforms
26  * the basis of gamma matrices from DeGrand-Rossi (DR) to Dirac-Pauli (DP).
27  * (Note: the default gamma matrices in chroma/qdp/szin is DeGrand-Rossi)
28  *
29  * \gamma_\mu(DP) = U^\dagger \gamma_\mu(DR) U
30  * \psi(DP) = U^\dagger \psi(DR)
31  * quark_propagator(DP) = U^\dagger quark_propagator(DR) U
32  *
33  *
34  * i / s2 -s2 \ 1 / 0 1 0 -1 \
35  * U = ------- | | = ------- | -1 0 1 0 |
36  * sqrt(2) | | sqrt(2) | 0 1 0 1 |
37  * \ s2 s2 / \ -1 0 -1 0 /
38  *
39  * where s2 is Pauli sigma_2 matrix.
40  *
41  * U_inverse = U^\dagger
42  *
43  */
44 
45  SpinMatrixD U = zero;
46  RealD foo = RealD(1) / sqrt(RealD(2));
47  ComplexD one = cmplx( foo,RealD(0));
48  ComplexD mone = cmplx(-foo,RealD(0));
49 
50  pokeSpin(U, one, 0, 1);
51  pokeSpin(U, mone, 0, 3);
52  pokeSpin(U, mone, 1, 0);
53  pokeSpin(U, one, 1, 2);
54  pokeSpin(U, one, 2, 1);
55  pokeSpin(U, one, 2, 3);
56  pokeSpin(U, mone, 3, 0);
57  pokeSpin(U, mone, 3, 2);
58 
59 
60  return U;
61 }
62 
63 } // end namespace Chroma
Primary include file for CHROMA library code.
Basis rotation matrix from Dirac to Degrand-Rossi (and reverse)
SpinMatrixD DiracToDRMat()
The Dirac to Degrand-Rossi spin transformation matrix (and reverse)
Definition: diractodr.cc:22
Asqtad Staggered-Dirac operator.
Definition: klein_gord.cc:10
Double one
Definition: invbicg.cc:105
Double zero
Definition: invbicg.cc:106
multi1d< LatticeColorMatrix > U