45 m_name =
"Energy Dens.";
53 m_size = m_lat->getSize();
63 for(
int x = 0; x < m_size[0]; x++){
64 for(
int y = 0; y < m_size[1]; y++){
65 for(
int z = 0; z < m_size[2]; z++){
66 for(
int t = 0; t < m_size[3]; t++){
67 for(
int mu = 0; mu < 4; mu++){
68 for(
int nu = mu+1; nu < 4; nu++){
70 Gmn = (*m_lat)(x,y,z,t)[mu]
71 * m_lat->shift(x,y,z,t,nu, mu, 1)
72 * ~(m_lat->shift(x,y,z,t,mu, nu, 1))
73 * ~(*m_lat)(x,y,z,t)[nu];
75 Gmn += (*m_lat)(x,y,z,t)[nu]
76 * ~(m_lat->shift2 (x,y,z,t,mu,nu,1,mu,-1))
77 * ~(m_lat->shift(x,y,z,t,nu, mu, -1))
78 * (m_lat->shift(x,y,z,t,mu, mu, -1));
80 Gmn += ~(m_lat->shift(x,y,z,t,mu, mu, -1))
81 * ~(m_lat->shift2 (x,y,z,t,nu,nu,-1,mu,-1))
82 * (m_lat->shift2 (x,y,z,t,mu,nu,-1,mu,-1))
83 * (m_lat->shift(x,y,z,t,nu, nu, -1));
85 Gmn += ~(m_lat->shift(x,y,z,t,nu, nu, -1))
86 * (m_lat->shift(x,y,z,t,mu, nu, -1))
87 * (m_lat->shift2 (x,y,z,t,nu,nu,-1,mu,1))
88 * ~(*m_lat)(x,y,z,t)[mu];
91 for(
int i = 0; i < 18; i+=2)
93 m_value += (Gmn*Gmn).realTrace();
Contains the definition of the Lattice class.
Implementation of a class to perform arithmetics between links.
Contains the definition of the Observable prototype.
void compute()
computes the EnergyDensity value using the clover definition of the field strength tensor ...
Basic library to implement SU3 matrix arithmetics and functions.
void gatherResults()
MPI reduction of the observable value.
void initObservable(GluonField *lattice)
initializer of the EnergyDensity class
Contains the definition of the EnergyDensity observable.
Template class to store an array with 4 dimensional indices of a given datatype. Includes functionali...
Prototype for the Observable class group.
EnergyDensity()
constructor of the EnergyDensity class