CHROMA
lib
update
heatbath
su3hb.h
Go to the documentation of this file.
1
// -*- C++ -*-
2
/*! \file
3
* \brief Do one SU(2) subgroup heatbath update of SU(Nc) matrix U with action
4
*/
5
6
#ifndef __su3hb_h__
7
#define __su3hb_h__
8
9
namespace
Chroma
{
10
11
//! Algorithm type
12
enum
HeatbathType
13
{
14
HEATBATH_TYPE_KPHB
= 201,
15
HEATBATH_TYPE_CrHB
= 202,
16
};
17
18
19
//! Do one SU(2) subgroup heatbath update of SU(Nc) matrix U with action
20
/*!
21
* \ingroup heatbath
22
*
23
* BetaMC * [tr(U*W) + hc] / (2Nc).
24
* Do at most nheat update trials of the Kennedy-Pstd::endleton or Creutz SU(2)
25
* heatbath algorithm.
26
*
27
* \param u field to be updated ( Modify )
28
* \param w "staple" field in the action ( Read )
29
* \param su2_index SU(2) subgroup index ( Read )
30
* \param nheat maximal number of update trials ( Read )
31
* \param ntrials total number of link trials ( Write )
32
* \param nfails total number of failed trials ( Write )
33
* \param sub Subset for updating ( Read )
34
*/
35
36
void
su3hb
(LatticeColorMatrix&
u
,
37
const
LatticeColorMatrix& w,
38
int
su2_index
,
39
int
nheat,
40
int
& ntrials,
41
int
& nfails,
42
HeatbathType
algorithm,
43
const
Subset& sub);
44
45
}
// end namespace Chroma
46
47
#endif
su2_index
int su2_index
Definition:
cool.cc:27
Chroma::su3hb
void su3hb(LatticeColorMatrix &u, const LatticeColorMatrix &w, int su2_index, int nheat, int &ntrials, int &nfails, HeatbathType algorithm, const Subset &sub)
Do one SU(2) subgroup heatbath update of SU(Nc) matrix U with action.
Definition:
su3hb.cc:29
Chroma
Asqtad Staggered-Dirac operator.
Definition:
klein_gord.cc:10
Chroma::u
static multi1d< LatticeColorMatrix > u
Definition:
syssolver_linop_qop_mg_w.cc:39
Chroma::HeatbathType
HeatbathType
Algorithm type.
Definition:
su3hb.h:13
Chroma::HEATBATH_TYPE_CrHB
@ HEATBATH_TYPE_CrHB
Definition:
su3hb.h:15
Chroma::HEATBATH_TYPE_KPHB
@ HEATBATH_TYPE_KPHB
Definition:
su3hb.h:14
Generated by
1.9.1