Bridge++  Ver.2.1.3
Force_F_Rational Class Reference

Force calculation for smeared fermion operators. More...

#include <force_F_Rational.h>

Inheritance diagram for Force_F_Rational:
AForce_F< Field >

Public Member Functions

DEPRECATED Force_F_Rational (Fopr *fopr, Force *force)
 
 Force_F_Rational (Fopr *fopr, Force *force, const Parameters &params)
 
 ~Force_F_Rational ()
 
void set_parameters (const Parameters &params)
 sets parameters by a Parameter object: to be implemented in a subclass. More...
 
void set_parameters (const int Np, const int n_exp, const int d_exp, const double x_min, const double x_max, const int Niter, const double Stop_cond)
 
void get_parameters (Parameters &params) const
 
void set_config (Field *U)
 sets verbose level. More...
 
void force_udiv (Field &, const Field &)
 
void force_core1 (Field &, const Field &, const Field &)
 
void force_udiv1 (Field &, const Field &, const Field &)
 
- Public Member Functions inherited from AForce_F< Field >
 AForce_F ()
 
virtual ~AForce_F ()
 
virtual void set_mode (const std::string &mode)
 in Force, setting the mode is optional when H is nonhermitian. More...
 
virtual void force_core (Field &, const Field &)
 

Static Public Attributes

static const std::string class_name = "Force_F_Rational"
 

Private Member Functions

void init (const Parameters &params)
 Initial setup with parameters. More...
 
void init ()
 Obsolete initial setup with parameters. More...
 
void tidyup ()
 Finial clean-up. More...
 
void setup (int Np_prev)
 
void set_parameters_impl (const Parameters &params)
 
void set_parameters_impl (const int Np, const int n_exp, const int d_exp, const double x_min, const double x_max, const int Niter, const double Stop_cond)
 
void force_udiv_impl (Field_G &, const Field &)
 

Private Attributes

int m_Np
 number of poles in rational approx. More...
 
int m_n_exp
 numerator of the exponent More...
 
int m_d_exp
 denominator of the exponent More...
 
double m_x_min
 lower bound of approximate sign function More...
 
double m_x_max
 upper bound of approximate sign function More...
 
int m_Niter
 maximum iteration of shiftsolver More...
 
double m_Stop_cond
 stopping condition of shift solver More...
 
Bridge::VerboseLevel m_vl
 verbose level More...
 
Fopr * m_fopr
 kernel fermion operator More...
 
Force * m_force
 kernel fermion force More...
 
Shiftsolver_CG * m_solver
 
double m_a0
 rational approx. coefficients More...
 
std::vector< double > m_bl
 rational approx. coefficients More...
 
std::vector< double > m_cl
 rational approx. coefficients More...
 
std::vector< Field > m_psi
 
Field * m_eta
 
Field_G * m_force1
 
Field_G * m_force2
 

Additional Inherited Members

- Protected Attributes inherited from AForce_F< Field >
Field_G * m_U
 Gauge configuration. More...
 
Field m_Ucp
 Gauge configuration (converted if necessary) More...
 
Field m_ut
 working vector for gauge field More...
 
Field_G * m_force_tmp
 used for corelib implementation More...
 
- Static Protected Attributes inherited from AForce_F< Field >
static const std::string class_name
 

Detailed Description

Force calculation for smeared fermion operators.

This class determines the force of a rational approximation for a given fermion operator. 28 Dec 2011 H.Matsufuru YAML is implemented. [14 Nov 2012 Y.Namekawa] unique_ptr is introduced to avoid memory leaks [21 Mar 2015 Y.Namekawa]

Definition at line 31 of file force_F_Rational.h.

Constructor & Destructor Documentation

◆ Force_F_Rational() [1/2]

DEPRECATED Force_F_Rational::Force_F_Rational ( Fopr *  fopr,
Force *  force 
)
inline

Definition at line 64 of file force_F_Rational.h.

◆ Force_F_Rational() [2/2]

Force_F_Rational::Force_F_Rational ( Fopr *  fopr,
Force *  force,
const Parameters &  params 
)
inline

Definition at line 68 of file force_F_Rational.h.

◆ ~Force_F_Rational()

Force_F_Rational::~Force_F_Rational ( )
inline

Definition at line 72 of file force_F_Rational.h.

Member Function Documentation

◆ force_core1()

void Force_F_Rational::force_core1 ( Field &  ,
const Field &  ,
const Field &   
)
virtual

Reimplemented from AForce_F< Field >.

Definition at line 318 of file force_F_Rational.cpp.

◆ force_udiv()

void Force_F_Rational::force_udiv ( Field &  force_,
const Field &  eta_ 
)
virtual

Reimplemented from AForce_F< Field >.

Definition at line 274 of file force_F_Rational.cpp.

◆ force_udiv1()

void Force_F_Rational::force_udiv1 ( Field &  ,
const Field &  ,
const Field &   
)
virtual

Reimplemented from AForce_F< Field >.

Definition at line 326 of file force_F_Rational.cpp.

◆ force_udiv_impl()

void Force_F_Rational::force_udiv_impl ( Field_G &  force,
const Field &  eta 
)
private

Definition at line 290 of file force_F_Rational.cpp.

◆ get_parameters()

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

Reimplemented from AForce_F< Field >.

Definition at line 163 of file force_F_Rational.cpp.

◆ init() [1/2]

void Force_F_Rational::init ( )
privatevirtual

Obsolete initial setup with parameters.

Reimplemented from AForce_F< Field >.

Definition at line 42 of file force_F_Rational.cpp.

◆ init() [2/2]

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

Initial setup with parameters.

Definition at line 17 of file force_F_Rational.cpp.

◆ set_config()

void Force_F_Rational::set_config ( Field *  )
virtual

sets verbose level.

sets the gauge configuration.

Implements AForce_F< Field >.

Definition at line 260 of file force_F_Rational.cpp.

◆ set_parameters() [1/2]

void Force_F_Rational::set_parameters ( const int  Np,
const int  n_exp,
const int  d_exp,
const double  x_min,
const double  x_max,
const int  Niter,
const double  Stop_cond 
)

Definition at line 178 of file force_F_Rational.cpp.

◆ set_parameters() [2/2]

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

sets parameters by a Parameter object: to be implemented in a subclass.

Reimplemented from AForce_F< Field >.

Definition at line 109 of file force_F_Rational.cpp.

◆ set_parameters_impl() [1/2]

void Force_F_Rational::set_parameters_impl ( const int  Np,
const int  n_exp,
const int  d_exp,
const double  x_min,
const double  x_max,
const int  Niter,
const double  Stop_cond 
)
private

Definition at line 194 of file force_F_Rational.cpp.

◆ set_parameters_impl() [2/2]

void Force_F_Rational::set_parameters_impl ( const Parameters &  params)
private

Definition at line 123 of file force_F_Rational.cpp.

◆ setup()

void Force_F_Rational::setup ( int  Np_prev)
private

Definition at line 60 of file force_F_Rational.cpp.

◆ tidyup()

void Force_F_Rational::tidyup ( )
privatevirtual

Finial clean-up.

Reimplemented from AForce_F< Field >.

Definition at line 95 of file force_F_Rational.cpp.

Member Data Documentation

◆ class_name

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

Definition at line 34 of file force_F_Rational.h.

◆ m_a0

double Force_F_Rational::m_a0
private

rational approx. coefficients

Definition at line 51 of file force_F_Rational.h.

◆ m_bl

std::vector<double> Force_F_Rational::m_bl
private

rational approx. coefficients

Definition at line 52 of file force_F_Rational.h.

◆ m_cl

std::vector<double> Force_F_Rational::m_cl
private

rational approx. coefficients

Definition at line 53 of file force_F_Rational.h.

◆ m_d_exp

int Force_F_Rational::m_d_exp
private

denominator of the exponent

Definition at line 39 of file force_F_Rational.h.

◆ m_eta

Field* Force_F_Rational::m_eta
private

Definition at line 56 of file force_F_Rational.h.

◆ m_fopr

Fopr* Force_F_Rational::m_fopr
private

kernel fermion operator

Definition at line 46 of file force_F_Rational.h.

◆ m_force

Force* Force_F_Rational::m_force
private

kernel fermion force

Definition at line 47 of file force_F_Rational.h.

◆ m_force1

Field_G* Force_F_Rational::m_force1
private

Definition at line 58 of file force_F_Rational.h.

◆ m_force2

Field_G* Force_F_Rational::m_force2
private

Definition at line 59 of file force_F_Rational.h.

◆ m_n_exp

int Force_F_Rational::m_n_exp
private

numerator of the exponent

Definition at line 38 of file force_F_Rational.h.

◆ m_Niter

int Force_F_Rational::m_Niter
private

maximum iteration of shiftsolver

Definition at line 42 of file force_F_Rational.h.

◆ m_Np

int Force_F_Rational::m_Np
private

number of poles in rational approx.

Definition at line 37 of file force_F_Rational.h.

◆ m_psi

std::vector<Field> Force_F_Rational::m_psi
private

Definition at line 55 of file force_F_Rational.h.

◆ m_solver

Shiftsolver_CG* Force_F_Rational::m_solver
private

Definition at line 49 of file force_F_Rational.h.

◆ m_Stop_cond

double Force_F_Rational::m_Stop_cond
private

stopping condition of shift solver

Definition at line 43 of file force_F_Rational.h.

◆ m_vl

Bridge::VerboseLevel Force_F_Rational::m_vl
private

verbose level

Definition at line 44 of file force_F_Rational.h.

◆ m_x_max

double Force_F_Rational::m_x_max
private

upper bound of approximate sign function

Definition at line 41 of file force_F_Rational.h.

◆ m_x_min

double Force_F_Rational::m_x_min
private

lower bound of approximate sign function

Definition at line 40 of file force_F_Rational.h.


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