Columbia Physics System  5.0.16..1
Public Member Functions | Protected Attributes
cps::AlgActionBilinear Class Reference

#include <alg_int.h>

Inheritance diagram for cps::AlgActionBilinear:
Inheritance graph
Collaboration diagram for cps::AlgActionBilinear:
Collaboration graph

List of all members.

Public Member Functions

 AlgActionBilinear ()
 < Dummy constructor - does nothing
 AlgActionBilinear (AlgMomentum &, ActionBilinearArg &)
virtual ~AlgActionBilinear ()
void cost (CgStats *)
 method to reverse the direction of evolution (i.e. flip momenta)
void updateCgStats (CgArg *)
int getNmass ()
Float getMass (int)
FclassType getFermion ()
virtual void heatbath ()=0
virtual Float energy ()=0
 method to return the cost of the integrator (wrt cg iterations)
virtual void evolve (Float dt, int steps)=0
 method to calculate energy (if necessary)
void init ()

Protected Attributes

int n_masses
FclassType fermion
 An array which stores the values of the masses.
 Maximum number of cg iterations.
int * max_num_iter
 Number of lattice sites.
int f_sites
 Number of Vectors in a Vector array.
int f_vec_count
 Number of Floats in a Vector array.
int f_size
 Number of checkerboards.
int Ncb
 The conjugate gradient statistics.
CgStats cg_stats
int cg_iter
 Pseudofermion fields, one for each mass.
Vector ** phi
int md_steps

Detailed Description

Class describing rational bilinear action

S = phi^dag r^2 phi

This class can be used to simulate <4 flavours of staggered fermions or <2 flavours of Wilson fermions.

Definition at line 333 of file alg_int.h.

Constructor & Destructor Documentation

< Dummy constructor - does nothing

Definition at line 26 of file alg_action_bilinear.C.

< First copy required instance parameters

< Initialize the number of masses

< Create an appropriate lattice

< Number of lattice sites

< Number of Vectors in a Vector array

< Number of Floats in a Vector array

< Half Checkerboard

< Full Checkerboard

< Allocate memory for the phi field array

Copy over mass and max iteration parameters

Definition at line 31 of file alg_action_bilinear.C.

References bi_arg, cps::ActionBilinearArg::bilinears, cps::ActionBilinearArg::bilinears_len, cps::ActionBilinearArg::bilinears_val, cps::Lattice::Colors(), cps::LatticeFactory::Create(), cps::LatticeFactory::Destroy(), cps::ERR, f_sites, f_size, f_vec_count, cps::Lattice::FchkbEvl(), cps::ActionBilinearArg::fermion, fermion, cps::Verbose::Func(), cps::Verbose::FuncEnd(), cps::G_CLASS_NONE, cps::Error::General(), cps::GJP, init(), cps::BilinearDescr::mass, mass, cps::MAX_HMD_MASSES, cps::BilinearDescr::max_num_iter, max_num_iter, n_masses, Ncb, phi, cps::smalloc(), cps::GlobalJobParameter::SnodeSites(), cps::Lattice::SpinComponents(), cps::GlobalJobParameter::VolNodeSites(), and cps::VRB.

Here is the call graph for this function:

< Free memory

Definition at line 101 of file alg_action_bilinear.C.

References mass, max_num_iter, n_masses, phi, and cps::sfree().

Here is the call graph for this function:

Member Function Documentation

void cps::AlgActionBilinear::cost ( CgStats ) [virtual]
virtual Float cps::AlgActionBilinear::energy ( ) [pure virtual]

method to return the cost of the integrator (wrt cg iterations)

Implements cps::AlgAction.

Implemented in cps::AlgActionRationalQuotient, cps::AlgActionQuotient, cps::AlgActionFermion, cps::AlgActionBoson, cps::AlgActionRationalSplit, and cps::AlgActionRational.

virtual void cps::AlgActionBilinear::evolve ( Float  dt,
int  steps 
) [pure virtual]

Reimplemented in cps::AlgActionRationalSplit.

Definition at line 173 of file alg_action_bilinear.C.

References mass.

Referenced by cps::AlgActionRationalSplit::getMass().

virtual void cps::AlgActionBilinear::heatbath ( ) [pure virtual]
void cps::AlgActionBilinear::init ( ) [virtual]

Member Data Documentation

Definition at line 339 of file alg_int.h.

Referenced by AlgActionBilinear(), and getFermion().

Definition at line 360 of file alg_int.h.

Referenced by cost(), init(), and updateCgStats().

Number of Vectors in a Vector array.

Definition at line 352 of file alg_int.h.

Referenced by AlgActionBilinear().

Definition at line 341 of file alg_int.h.

Referenced by AlgActionBilinear(), cps::AlgActionBoson::AlgActionBoson(), cps::AlgActionFermion::AlgActionFermion(), cps::AlgActionQuotient::AlgActionQuotient(), cps::AlgActionRational::AlgActionRational(), cps::AlgActionRationalQuotient::AlgActionRationalQuotient(), cps::AlgActionRationalSplit::AlgActionRationalSplit(), cps::AlgActionRational::checkApprox(), cps::AlgActionRational::checkSplit(), cps::AlgActionRational::destroyCgArg(), cps::AlgActionRational::energy(), cps::AlgActionBoson::energy(), cps::AlgActionFermion::energy(), cps::AlgActionQuotient::energy(), cps::AlgActionRationalQuotient::energy(), cps::AlgActionRational::evolve(), cps::AlgActionBoson::evolve(), cps::AlgActionFermion::evolve(), cps::AlgActionQuotient::evolve(), cps::AlgActionRationalQuotient::evolve(), cps::AlgActionRational::generateApprox(), cps::AlgActionRational::generateCgArg(), cps::AlgActionRational::generateEigArg(), getNmass(), cps::AlgActionRational::heatbath(), cps::AlgActionBoson::heatbath(), cps::AlgActionFermion::heatbath(), cps::AlgActionQuotient::heatbath(), cps::AlgActionRationalQuotient::heatbath(), cps::AlgActionFermion::init(), cps::AlgActionQuotient::init(), cps::AlgActionRational::prepare_fg(), cps::AlgActionBoson::prepare_fg(), cps::AlgActionFermion::prepare_fg(), cps::AlgActionQuotient::prepare_fg(), cps::AlgActionRationalQuotient::prepare_fg(), cps::AlgActionQuotient::reweight(), cps::AlgActionRationalQuotient::reweight(), cps::AlgActionRational::setSplit(), ~AlgActionBilinear(), cps::AlgActionBoson::~AlgActionBoson(), cps::AlgActionFermion::~AlgActionFermion(), cps::AlgActionQuotient::~AlgActionQuotient(), cps::AlgActionRational::~AlgActionRational(), and cps::AlgActionRationalQuotient::~AlgActionRationalQuotient().

int cps::AlgActionBilinear::Ncb [protected]

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