CHROMA
hotst.cc
Go to the documentation of this file.
1 // HOTST
2 
3 /*! \file
4  * \brief Set a gauge field from a sample of (almost) Haar measure
5  */
6 
7 #include "chromabase.h"
8 #include "util/gauge/hotst.h"
9 #include "util/gauge/taproj.h"
10 #include "util/gauge/expm12.h"
11 #include "util/gauge/reunit.h"
12 
13 
14 namespace Chroma {
15 
16 //! Set a gauge field from a sample of (almost) Haar measure
17 /*!
18  * \ingroup gauge
19  *
20  * u = exp(A), where A = random traceless antihermitian matrix.
21  *
22  * Arguments:
23  *
24  * \param u Gauge field (Write)
25  *
26  *
27  * NOTE!!!!: we are using a hack. The twelth_order exponentiation followed
28  * by a reunitarization should be replace by an exact exponentiation.
29  * So, the gauge field distriubution is NOT from Haar measure, but
30  * if someone can think of a really good reason why it should be Haar
31  * measure, then something can be done about it.
32  */
33 
34 void HotSt(multi1d<LatticeColorMatrix>& u)
35 {
36  START_CODE();
37 
38  u.resize(Nd);
39 
40  for(int mu=0; mu<u.size(); ++mu)
41  {
42  gaussian(u[mu]); // Gaussian fill
43  taproj(u[mu]); // Traceless anti-hermitian projection
44  expm12(u[mu]); // Exponentiate
45  reunit(u[mu]); // Reunitarize
46  }
47 
48  END_CODE();
49 }
50 
51 }
Primary include file for CHROMA library code.
int mu
Definition: cool.cc:24
12-th order exponentiation of a lattice color matrix
void taproj(LatticeColorMatrix &a)
Take the traceless antihermitian projection of a color matrix.
Definition: taproj.cc:31
void expm12(LatticeColorMatrix &a)
12-th order exponentiation of a lattice color matrix
Definition: expm12.cc:21
void HotSt(multi1d< LatticeColorMatrix > &u)
Set a gauge field from a sample of (almost) Haar measure.
Definition: hotst.cc:34
Set a gauge field from a sample of (almost) Haar measure.
Nd
Definition: meslate.cc:74
Asqtad Staggered-Dirac operator.
Definition: klein_gord.cc:10
gaussian(aux)
static multi1d< LatticeColorMatrix > u
void reunit(LatticeColorMatrixF3 &xa)
Definition: reunit.cc:467
START_CODE()
Reunitarize in place a color matrix to SU(N)
Take the traceless antihermitian projection of a color matrix.