Bridge++
Ver. 1.1.x
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
projection_Stout_SU3.h
Go to the documentation of this file.
1
15
#ifndef PROJECTION_STOUT_SU3_INCLUDED
16
#define PROJECTION_STOUT_SU3_INCLUDED
17
18
#include <cassert>
19
#include <valarray>
20
#include "
projection.h
"
21
#include "
bridge_complex.h
"
22
#include "
mat_SU_N.h
"
23
//#include "libkek.h" //- only for BG/Q
24
25
#include "
bridgeIO.h
"
26
using
Bridge::vout
;
27
28
// The following implementation only valid for Nc = 3 case.
29
#define NC 3
30
31
33
40
//- parameters class
41
class
Parameters_Projection_Stout_SU3
:
virtual
public
Parameters
42
{
43
public
:
44
Parameters_Projection_Stout_SU3
();
45
};
46
//-
47
48
class
Projection_Stout_SU3
:
public
Projection
49
{
50
private
:
51
unsigned
long
int
m_flop
;
52
double
m_time
;
53
54
public
:
55
56
Projection_Stout_SU3
()
57
{
58
setup
();
59
}
60
61
~Projection_Stout_SU3
() {}
62
63
void
set_parameters
(
const
Parameters
& param);
64
66
void
project
(
Field_G
& U,
67
double
alpha,
68
const
Field_G
& C,
const
Field_G
& Uorg);
69
71
void
force_recursive
(
Field_G
& Xi,
Field_G
& iTheta,
72
double
alpha,
const
Field_G
& Sigmap,
73
const
Field_G
& C,
const
Field_G
& U);
74
75
void
print_stat
();
76
77
private
:
78
void
exp_iQ
(
Field_G
& e_iQ,
const
Field_G
& iQ);
79
void
exp_iQ_bf
(
Field_G
& e_iQ,
const
Field_G
& iQ);
80
81
void
set_uw
(
double
& u,
double
& w,
82
const
Mat_SU_N
& iQ1,
const
Mat_SU_N
& iQ2);
83
84
void
set_fj
(dcomplex& f0, dcomplex& f1, dcomplex& f2,
85
const
double
& u,
const
double
& w);
86
87
double
func_xi0
(
double
w);
88
double
func_xi1
(
double
w);
89
90
void
setup
();
91
};
92
#endif
src
Smear
projection_Stout_SU3.h
Generated on Tue Jul 23 2013 10:48:49 for Bridge++ by
1.8.3.1