Bridge++  Ver.2.1.3
Action_F_Standard_SF Class Reference

Standard fermion action with SF BC for HMC. More...

#include <action_F_Standard_SF.h>

Inheritance diagram for Action_F_Standard_SF:
Action

Public Member Functions

 Action_F_Standard_SF (Fopr *fopr, Force *forceF)
 
 Action_F_Standard_SF (Fopr *fopr, Force *forceF, const Parameters &params)
 
 ~Action_F_Standard_SF ()
 
void set_parameters (const Parameters &)
 
void set_parameters ()
 
void get_parameters (Parameters &) const
 
void set_label (const std::string label)
 
std::string get_label ()
 
void set_config (Field *U)
 setting pointer to the gauge configuration. More...
 
double langevin (RandomNumbers *)
 Langevis step. More...
 
double calcH ()
 calculate Hamiltonian of this action term. More...
 
void force (Field &)
 returns force for molcular dynamical update of conjugate momenta. More...
 
- Public Member Functions inherited from Action
 Action ()
 
virtual ~Action ()
 
virtual void force (Field &v, Field &U)
 

Static Public Attributes

static const std::string class_name = "Action_F_Standard_SF"
 

Private Member Functions

void init ()
 
void init (const Parameters &params)
 
void tidyup ()
 

Private Attributes

int Svol
 A spatial volume in a node. More...
 
int m_Nc2
 number of the doubled color elements More...
 
int m_Nd
 dimension of the spinor index More...
 
Bridge::VerboseLevel m_vl
 
std::string m_label
 
Communicator * comm
 Needed to know a node at the temporal boundary. More...
 
Fopr * m_fopr
 
Force * m_forceF
 
Field m_psf
 
Solver * m_solver
 
Field * m_U
 

Detailed Description

Standard fermion action with SF BC for HMC.

This class defines an action with SF BC used in HMC.

  • Generated by copying Action_F_Standard class.
  • The argument Fopr and Force of the constructor should be implemented for the SF BC.
  • The only modification is in Action_F_Standard_SF::langevin
    • For the calculation of the initial Hamiltonian the pre-pseudo fermion field xi is set to zero at the boundary.
    • A private function set_boundary_zero(Field&) is introduced for this bounadry manipulation.
    • A few private members are added for this function.
  • The following properties are the same as those of the Action_F_Standard class.
    • Fermion and Force operators and given at the construction.
    • The solver is explicitly set to CG algorithm whose object is created in set_parameters().
  • [05 Apr 2012 Y.Yusuke]

selector is implemented. [02 Feb 2013 Y.Namekawa] (Selectors are replaced with factories by Aoyama-san) unique_ptr is introduced to avoid memory leaks [21 Mar 2015 Y.Namekawa] Multi-threading applied. [01 Feb 2026 H.Matsufuru]

Definition at line 50 of file action_F_Standard_SF.h.

Constructor & Destructor Documentation

◆ Action_F_Standard_SF() [1/2]

Action_F_Standard_SF::Action_F_Standard_SF ( Fopr *  fopr,
Force *  forceF 
)
inline

Definition at line 77 of file action_F_Standard_SF.h.

◆ Action_F_Standard_SF() [2/2]

Action_F_Standard_SF::Action_F_Standard_SF ( Fopr *  fopr,
Force *  forceF,
const Parameters &  params 
)
inline

Definition at line 81 of file action_F_Standard_SF.h.

◆ ~Action_F_Standard_SF()

Action_F_Standard_SF::~Action_F_Standard_SF ( )
inline

Definition at line 85 of file action_F_Standard_SF.h.

Member Function Documentation

◆ calcH()

double Action_F_Standard_SF::calcH ( )
virtual

calculate Hamiltonian of this action term.

Implements Action.

Definition at line 149 of file action_F_Standard_SF.cpp.

◆ force()

void Action_F_Standard_SF::force ( Field &  )
virtual

returns force for molcular dynamical update of conjugate momenta.

Implements Action.

Definition at line 194 of file action_F_Standard_SF.cpp.

◆ get_label()

std::string Action_F_Standard_SF::get_label ( )
inline

Definition at line 99 of file action_F_Standard_SF.h.

◆ get_parameters()

void Action_F_Standard_SF::get_parameters ( Parameters &  params) const
virtual

Implements Action.

Definition at line 88 of file action_F_Standard_SF.cpp.

◆ init() [1/2]

void Action_F_Standard_SF::init ( )
private

Definition at line 47 of file action_F_Standard_SF.cpp.

◆ init() [2/2]

void Action_F_Standard_SF::init ( const Parameters &  params)
private

Definition at line 15 of file action_F_Standard_SF.cpp.

◆ langevin()

double Action_F_Standard_SF::langevin ( RandomNumbers *  )
virtual

Langevis step.

Implements Action.

Definition at line 108 of file action_F_Standard_SF.cpp.

◆ set_config()

void Action_F_Standard_SF::set_config ( Field *  U)
virtual

setting pointer to the gauge configuration.

Implements Action.

Definition at line 95 of file action_F_Standard_SF.cpp.

◆ set_label()

void Action_F_Standard_SF::set_label ( const std::string  label)
inline

Definition at line 93 of file action_F_Standard_SF.h.

◆ set_parameters() [1/2]

void Action_F_Standard_SF::set_parameters ( )

◆ set_parameters() [2/2]

void Action_F_Standard_SF::set_parameters ( const Parameters &  params)
virtual

Implements Action.

Definition at line 78 of file action_F_Standard_SF.cpp.

◆ tidyup()

void Action_F_Standard_SF::tidyup ( )
private

Definition at line 71 of file action_F_Standard_SF.cpp.

Member Data Documentation

◆ class_name

const std::string Action_F_Standard_SF::class_name = "Action_F_Standard_SF"
static

Definition at line 53 of file action_F_Standard_SF.h.

◆ comm

Communicator* Action_F_Standard_SF::comm
private

Needed to know a node at the temporal boundary.

Definition at line 64 of file action_F_Standard_SF.h.

◆ m_fopr

Fopr* Action_F_Standard_SF::m_fopr
private

Definition at line 66 of file action_F_Standard_SF.h.

◆ m_forceF

Force* Action_F_Standard_SF::m_forceF
private

Definition at line 68 of file action_F_Standard_SF.h.

◆ m_label

std::string Action_F_Standard_SF::m_label
private

Definition at line 62 of file action_F_Standard_SF.h.

◆ m_Nc2

int Action_F_Standard_SF::m_Nc2
private

number of the doubled color elements

Definition at line 58 of file action_F_Standard_SF.h.

◆ m_Nd

int Action_F_Standard_SF::m_Nd
private

dimension of the spinor index

Definition at line 59 of file action_F_Standard_SF.h.

◆ m_psf

Field Action_F_Standard_SF::m_psf
private

Definition at line 70 of file action_F_Standard_SF.h.

◆ m_solver

Solver* Action_F_Standard_SF::m_solver
private

Definition at line 72 of file action_F_Standard_SF.h.

◆ m_U

Field* Action_F_Standard_SF::m_U
private

Definition at line 74 of file action_F_Standard_SF.h.

◆ m_vl

Bridge::VerboseLevel Action_F_Standard_SF::m_vl
private

Definition at line 60 of file action_F_Standard_SF.h.

◆ Svol

int Action_F_Standard_SF::Svol
private

A spatial volume in a node.

Definition at line 57 of file action_F_Standard_SF.h.


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