Bridge++  Ver. 1.2.x
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Field_G_SF Class Reference

#include <field_G_SF.h>

Inheritance diagram for Field_G_SF:
Field_G Field

Public Member Functions

 Field_G_SF (const int Nvol=CommonParameters::Nvol(), const int Nex=1)
 
 Field_G_SF (const Field &x)
 
 Field_G_SF (double *phi, double *phipr)
 
void set_parameters (const Parameters_Field_G_SF &params)
 Set the parameter with Parameters_Field_G_SF class. More...
 
void set_parameters (const std::valarray< double > &phi, const std::valarray< double > &phipr)
 Set the parameter by giving valarray objects. More...
 
void set_parameters (double *phi, double *phipr)
 Set the parameter for the boundary links Wk, Wk'. More...
 
void set_boundary_wk (const Mat_SU_N &U)
 Set the boundary spatial link at t=0 for SF bc. More...
 
void set_boundary_wkpr (const Mat_SU_N &U)
 Set the boundary spatial link at t=Nt-1 for SF bc. More...
 
void set_boundary_zero ()
 Set the boundary matrix to 0 for SF bc. More...
 
void set_boundary_spatial_link_zero ()
 Set the boundary spatial link to 0 for SF bc. More...
 
void mult_ct_boundary (int t, double ct)
 Multiply the boundary improvement factor ct or ctr to an SU(N) matrix object which belongs to a site at t. More...
 
void set_boundary_wk (Field_G &f)
 Set the boundary spatial link at t=0 for SF bc. More...
 
void set_boundary_wkpr (Field_G &f)
 Set the boundary spatial link at t=Nt-1 for SF bc. More...
 
void set_boundary_zero (Field_G &f)
 Set the boundary matrix to 0 for SF bc. More...
 
void set_boundary_spatial_link_zero (Field_G &f)
 Set the boundary spatial link to 0 for SF bc. More...
 
- Public Member Functions inherited from Field_G
 Field_G (const int Nvol=CommonParameters::Nvol(), const int Nex=1)
 
Field_G clone () const
 
 Field_G (const Field &x)
 
Field_Goperator= (const double a)
 
void reset (const int Nvol, const int Nex)
 
int nc () const
 
double cmp_r (const int cc, const int site, const int mn=0) const
 
double cmp_i (const int cc, const int site, const int mn=0) const
 
void set_r (const int cc, const int site, const int mn, const double re)
 
void set_i (const int cc, const int site, const int mn, const double im)
 
void set_ri (const int cc, const int site, const int mn, const double re, const double im)
 
Mat_SU_N mat (const int site, const int mn=0) const
 
Mat_SU_N mat_dag (const int site, const int mn=0) const
 
void mat (Mat_SU_N &Tmp, const int site, const int mn=0) const
 
void mat_dag (Mat_SU_N &Tmp, const int site, const int mn=0) const
 
void set_mat (const int site, const int mn, const Mat_SU_N &U)
 
void add_mat (const int site, const int mn, const Mat_SU_N &U)
 
void add_mat (const int site, const int mn, const Mat_SU_N &U, double prf)
 
void xI ()
 
void set_unit ()
 
void set_random (RandomNumbers *rand)
 
void reunit ()
 
- Public Member Functions inherited from Field
 Field ()
 
 Field (const int Nin, const int Nvol, const int Nex, const element_type cmpl=COMPLEX)
 
Field clone () const
 
void reset (const int Nin, const int Nvol, const int Nex, const element_type cmpl=COMPLEX)
 
Fieldoperator= (const double a)
 
int nin () const
 
int nvol () const
 
int nex () const
 
element_type field_element_type () const
 
int ntot () const
 
int size () const
 
double cmp (const int jin, const int site, const int jex) const
 
double cmp (const int i) const
 
double * ptr (const int jin, const int site, const int jex)
 
double * ptr (const int i)
 
void set (const int jin, const int site, const int jex, double v)
 
void set (const int i, double v)
 
void set (double a)
 
void add (const int jin, const int site, const int jex, double v)
 
void add (const int i, double v)
 
void setpart_ex (int ex, const Field &w, int exw)
 
void addpart_ex (int ex, const Field &w, int exw)
 
void addpart_ex (int ex, const Field &w, int exw, double prf)
 
Fieldoperator+= (const Field &v)
 
Fieldoperator-= (const Field &v)
 
Fieldoperator*= (const double a)
 
Fieldoperator/= (const double a)
 
Fieldoperator*= (const dcomplex a)
 
double operator* (const Field &rhs)
 
double norm2 () const
 
double norm () const
 
void stat (double &Fave, double &Fmax, double &Fdev) const
 determines the statistics of the field. average, maximum value, and deviation is determined over global lattice. On-site degree of freedom is sumed over in quadrature, not averaged. This function works only on single node. More...
 

Private Attributes

int m_Nc
 number of color elements More...
 
int m_Ndf
 number of components as real values More...
 
int m_Nvol
 number of sites More...
 
int m_Nex
 extra degree of freedom, such as mu, nu. More...
 
int Nx
 
int Ny
 
int Nz
 
int Nt
 
int Svol
 
int NPEt
 
Mat_SU_N wk
 SF boundary condition at t=0. More...
 
Mat_SU_N wkpr
 SF boundary condition at t=Nt. More...
 

Additional Inherited Members

- Public Types inherited from Field
enum  element_type { REAL = 1, COMPLEX = 2 }
 
- Protected Member Functions inherited from Field
int myindex (const int jin, const int site, const int jex) const
 
- Protected Attributes inherited from Field
int m_Nin
 
int m_Nvol
 
int m_Nex
 
element_type m_element_type
 
std::valarray< double > field
 
Bridge::VerboseLevel m_vl
 

Detailed Description

Definition at line 41 of file field_G_SF.h.

Constructor & Destructor Documentation

Field_G_SF::Field_G_SF ( const int  Nvol = CommonParameters::Nvol(),
const int  Nex = 1 
)
inline

Definition at line 64 of file field_G_SF.h.

Field_G_SF::Field_G_SF ( const Field x)
inline

Definition at line 78 of file field_G_SF.h.

Field_G_SF::Field_G_SF ( double *  phi,
double *  phipr 
)
inline

Definition at line 92 of file field_G_SF.h.

Member Function Documentation

void Field_G_SF::mult_ct_boundary ( int  t,
double  ct 
)

Multiply the boundary improvement factor ct or ctr to an SU(N) matrix object which belongs to a site at t.

Multiply the boundary improvement factor ct or ctr to an SU(N) matrix object attached to the boundary t=0 or t=Nt.

  • Supposed to be used for a matrix given by upper(g,mu,nu) or lower(g,mu,nu) when it is attached to the t=0 boundary.
  • The SU(N) matrix object may belong to a site at t=0 or t=1 or t=Nt.
  • This function performs no check if the object is a proper one at the boundary.
  • Lorentz index is set to mn=0.
  • Introduced by Yusuke Taniguchi for SF bc.

Definition at line 151 of file field_G_SF.cpp.

void Field_G_SF::set_boundary_spatial_link_zero ( )

Set the boundary spatial link to 0 for SF bc.

Set the boundary spatial link to zero.

  • Supposed to be used for a force for the boundary spatial link in order to keep it zero.
  • Lorentz index mn runs for spatial value.
  • Introduced by Yusuke Taniguchi for SF bc.

Definition at line 125 of file field_G_SF.cpp.

void Field_G_SF::set_boundary_spatial_link_zero ( Field_G f)

Set the boundary spatial link to 0 for SF bc.

Set the boundary spatial link to zero.

  • Supposed to be used for a force for the boundary spatial link in order to keep it zero.
  • Lorentz index mn runs for spatial value.
  • Field is given as an argument.
  • Introduced by Yusuke Taniguchi for SF bc.

Definition at line 252 of file field_G_SF.cpp.

void Field_G_SF::set_boundary_wk ( const Mat_SU_N U)

Set the boundary spatial link at t=0 for SF bc.

Set the boundary spatial link $U_k(t=0)$ to its proper Dirichlet bounday $W_k$.

  • Supposed to be used for u_mu given by u_mu.setpart_ex(0, *g,mu) when mu is a spatial.
  • Lorentz index is set to mn=0.
  • Wk is given as an argument U.
  • Introduced by Yusuke Taniguchi for SF bc.

Definition at line 50 of file field_G_SF.cpp.

void Field_G_SF::set_boundary_wk ( Field_G f)

Set the boundary spatial link at t=0 for SF bc.

Set the boundary spatial link $U_k(t=0)$ to its proper Dirichlet bounday $W_k$.

  • Supposed to be used for u_mu given by u_mu.setpart_ex(0, *g,mu) when mu is a spatial.
  • Lorentz index is set to mn=0.
  • Field is given as an argument.
  • Introduced by Yusuke Taniguchi for SF bc.

Definition at line 178 of file field_G_SF.cpp.

void Field_G_SF::set_boundary_wkpr ( const Mat_SU_N U)

Set the boundary spatial link at t=Nt-1 for SF bc.

Set the boundary spatial link $U_k(t=N_t-1)$ to its proper Dirichlet bounday $W_k'$.

  • Supposed to be used for v given by shift.backward(v,u_nu,mu) when mu is a temporal.
  • Lorentz index is set to mn=0.
  • Wk' is given as an argument U.
  • Introduced by Yusuke Taniguchi for SF bc.

Definition at line 76 of file field_G_SF.cpp.

void Field_G_SF::set_boundary_wkpr ( Field_G f)

Set the boundary spatial link at t=Nt-1 for SF bc.

Set the boundary spatial link $U_k(t=N_t-1)$ to its proper Dirichlet bounday $W_k'$.

  • Supposed to be used for v given by shift.backward(v,u_nu,mu) when mu is a temporal.
  • Lorentz index is set to mn=0.
  • Field is given as an argument.
  • Introduced by Yusuke Taniguchi for SF bc.

Definition at line 202 of file field_G_SF.cpp.

void Field_G_SF::set_boundary_zero ( )

Set the boundary matrix to 0 for SF bc.

Set the boundary matrix to zero.

  • Supposed to be used for a staple for the boundary spatial plaquette in order to keep the corresponding force to zero.
  • Lorentz index is set to mn=0.
  • Introduced by Yusuke Taniguchi for SF bc.

Definition at line 101 of file field_G_SF.cpp.

void Field_G_SF::set_boundary_zero ( Field_G f)

Set the boundary matrix to 0 for SF bc.

Set the boundary matrix to zero.

  • Supposed to be used for a staple for the boundary spatial plaquette in order to keep the corresponding force to zero.
  • Lorentz index is set to mn=0.
  • Field is given as an argument.
  • Introduced by Yusuke Taniguchi for SF bc.

Definition at line 226 of file field_G_SF.cpp.

void Field_G_SF::set_parameters ( const Parameters_Field_G_SF params)

Set the parameter with Parameters_Field_G_SF class.

Definition at line 268 of file field_G_SF.cpp.

void Field_G_SF::set_parameters ( const std::valarray< double > &  phi,
const std::valarray< double > &  phipr 
)

Set the parameter by giving valarray objects.

Definition at line 278 of file field_G_SF.cpp.

void Field_G_SF::set_parameters ( double *  phi,
double *  phipr 
)

Set the parameter for the boundary links Wk, Wk'.

Definition at line 294 of file field_G_SF.cpp.

Member Data Documentation

int Field_G_SF::m_Nc
private

number of color elements

Definition at line 45 of file field_G_SF.h.

int Field_G_SF::m_Ndf
private

number of components as real values

Definition at line 47 of file field_G_SF.h.

int Field_G_SF::m_Nex
private

extra degree of freedom, such as mu, nu.

Definition at line 51 of file field_G_SF.h.

int Field_G_SF::m_Nvol
private

number of sites

Definition at line 49 of file field_G_SF.h.

int Field_G_SF::NPEt
private

Definition at line 54 of file field_G_SF.h.

int Field_G_SF::Nt
private

Definition at line 53 of file field_G_SF.h.

int Field_G_SF::Nx
private

Definition at line 53 of file field_G_SF.h.

int Field_G_SF::Ny
private

Definition at line 53 of file field_G_SF.h.

int Field_G_SF::Nz
private

Definition at line 53 of file field_G_SF.h.

int Field_G_SF::Svol
private

Definition at line 53 of file field_G_SF.h.

Mat_SU_N Field_G_SF::wk
private

SF boundary condition at t=0.

Definition at line 57 of file field_G_SF.h.

Mat_SU_N Field_G_SF::wkpr
private

SF boundary condition at t=Nt.

Definition at line 59 of file field_G_SF.h.


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