LatticeYangMills
Public Member Functions | Private Member Functions | Private Attributes | List of all members
WilsonFlow Class Reference

Implementation of the WilsonFlow App class. More...

#include <wilsonflow.h>

Inheritance diagram for WilsonFlow:
Inheritance graph
[legend]
Collaboration diagram for WilsonFlow:
Collaboration graph
[legend]

Public Member Functions

 WilsonFlow (double tauFinal, double epsilon)
 constructor of the class More...
 
void flowConfigurations ()
 applies the gradient flow to all the configurations given as input
 
void setAction (Action *action)
 
void addObservable (Observable *observable)
 
std::array< int, 4 > & getSize ()
 
std::vector< double > & getObsValues ()
 
std::vector< Observable * > & getObs ()
 
void createLattice (std::array< int, 4 > latticeSize)
 creates the GluonField object and the temporary lattice for the action derivative.
 
void execute ()
 Executes the App. First initializes the system then applies the gradient flow to the configurations.
 
void initialize ()
 runs the initializers of the subclasses.
 
- Public Member Functions inherited from App
void setAction (Action *action)
 Initializes the Action object pointer given an instance of it. More...
 
void addObservable (Observable *observable)
 Adds a Observable class pointer to the vector of observables of the App. More...
 

Private Member Functions

void computeObservables ()
 computes all observables in the Observable vector
 
void flowStep ()
 applies one step of the integration scheme, described in paper
 
void applyWilsonFlow (int confNum)
 applies the gradient flow to one configuration More...
 

Private Attributes

GluonFieldm_Z = nullptr
 
std::vector< double > m_obsValues
 
std::vector< std::string > m_inputConfList
 
SU3 omega
 
double m_epsilon
 
double m_tauFinal
 

Additional Inherited Members

- Protected Attributes inherited from App
Actionm_act = nullptr
 Pointer to the Action instance.
 
GluonFieldm_lat = nullptr
 Pointer to the GluonField instance.
 
std::array< int, 4 > m_size
 Size of the sublattice.
 
std::vector< Observable * > m_obs
 Vector of pointers to Observable instances.
 

Detailed Description

Implementation of the WilsonFlow App class.

Author
Giovanni Pederiva
Version
1.0
Date
2017-2018

The WilsonFlow class implements Gradiend Flow method as suggested by M.Lüscher in the article https://arxiv.org/abs/1006.4518 The integration scheme is a third order Runge-Kutta method for Lie algebras, so called Runge-Kutta Munthe-Kaas RK-MK method.

Definition at line 53 of file wilsonflow.h.

Constructor & Destructor Documentation

WilsonFlow::WilsonFlow ( double  tauFinal,
double  epsilon 
)

constructor of the class

Parameters
tauFinalthe final flow time to be reached by the integration
epsilonthe integration step size

Definition at line 64 of file wilsonflow.cpp.

Member Function Documentation

void WilsonFlow::applyWilsonFlow ( int  confNum)
private

applies the gradient flow to one configuration

Parameters
confNumthe numerical label of the configuration to flow

Definition at line 115 of file wilsonflow.cpp.


The documentation for this class was generated from the following files: