Bridge++
Ver. 2.0.2
|
Fermion operator for rational approximation. More...
#include <afopr_Rational.h>
Public Types | |
typedef AFIELD::real_t | real_t |
Public Member Functions | |
AFopr_Rational (AFopr< AFIELD > *fopr) | |
AFopr_Rational (AFopr< AFIELD > *fopr, const Parameters ¶ms) | |
~AFopr_Rational () | |
void | set_parameters (const Parameters ¶ms) |
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 real_t x_min, const real_t x_max, const int Niter, const real_t Stop_cond) |
void | get_parameters (Parameters ¶ms) const |
gets parameters by a Parameter object: to be implemented in a subclass. More... | |
void | set_config (Field *U) |
sets the gauge configuration. More... | |
void | mult (AFIELD &v, const AFIELD &f) |
multiplies fermion operator to a given field. More... | |
void | mult_dag (AFIELD &v, const AFIELD &f) |
hermitian conjugate of mult. More... | |
real_t | func (const real_t x) |
int | field_nvol () |
returns the volume of the fermion field. More... | |
int | field_nin () |
returns the on-site degree of freedom of the fermion field. More... | |
int | field_nex () |
returns the external degree of freedom of the fermion field. More... | |
virtual bool | needs_convert () |
returns true if additional field conversion is needed. More... | |
virtual void | convert (AFIELD &v, const Field &w) |
converts a Field object into other format if necessary. More... | |
virtual void | reverse (Field &v, const AFIELD &w) |
reverses to a Field object from other format if necessary. More... | |
const std::string | class_name |
Public Member Functions inherited from AFopr< AFIELD > | |
AFopr () | |
virtual | ~AFopr () |
virtual void | set_mode (std::string mode) |
setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelevant call. More... | |
virtual std::string | get_mode () const |
returns the current mult mode. More... | |
virtual void | mult (AFIELD &, const AFIELD &, const std::string mode) |
executes mult with specified mode (unchanging internal mode). More... | |
virtual void | mult_dag (AFIELD &, const AFIELD &, const std::string mode) |
executes mult_dag with specified mode (unchanging internal mode). More... | |
virtual void | mult_gm5 (AFIELD &, const AFIELD &) |
multiplies gamma_5 matrix. More... | |
virtual void | mult_up (int mu, AFIELD &, const AFIELD &) |
upward nearest neighbor hopping term. More... | |
virtual void | mult_dn (int mu, AFIELD &, const AFIELD &) |
downward nearest neighbor hopping term. More... | |
virtual void | normalize_fprop (AFIELD &) |
normalize propagator if necessary (default: do nothing) More... | |
virtual void | normalize_fopr (AFIELD &) |
normalize propagator if necessary (default: do nothing) More... | |
virtual double | flop_count () |
returns the number of floating point operations. More... | |
virtual double | flop_count (const std::string mode) |
returns the flops per site for specified mode. More... | |
Static Public Attributes | |
static const std::string | class_name = "AFopr_Rational" |
Private Member Functions | |
void | init_parameters () |
Private Attributes | |
Bridge::VerboseLevel | m_vl |
int | m_Np |
int | m_n_exp |
int | m_d_exp |
real_t | m_x_min |
real_t | m_x_max |
int | m_Niter |
real_t | m_Stop_cond |
AFopr< AFIELD > * | m_fopr |
AShiftsolver_CG< AFIELD, AFopr< AFIELD > > * | m_solver |
real_t | m_a0 |
std::vector< real_t > | m_cl |
std::vector< real_t > | m_bl |
std::vector< AFIELD > | m_xq |
Additional Inherited Members | |
Static Protected Attributes inherited from AFopr< AFIELD > | |
static const std::string | class_name |
Fermion operator for rational approximation.
This class generates fermion operator with a rational approximation for a given fermion operator (given to the constructer). Shift-solver is used which is at present set to the CG solver explicitly. 05 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 42 of file afopr_Rational.h.
typedef AFIELD::real_t AFopr_Rational< AFIELD >::real_t |
Definition at line 45 of file afopr_Rational.h.
|
inline |
Definition at line 66 of file afopr_Rational.h.
|
inline |
Definition at line 69 of file afopr_Rational.h.
|
inline |
Definition at line 75 of file afopr_Rational.h.
const std::string AFopr_Rational< Field >::class_name |
Definition at line 26 of file fopr_Rational.cpp.
|
inlinevirtual |
converts a Field object into other format if necessary.
Reimplemented from AFopr< AFIELD >.
Definition at line 107 of file afopr_Rational.h.
|
inlinevirtual |
returns the external degree of freedom of the fermion field.
Implements AFopr< AFIELD >.
Definition at line 100 of file afopr_Rational.h.
|
inlinevirtual |
returns the on-site degree of freedom of the fermion field.
Implements AFopr< AFIELD >.
Definition at line 99 of file afopr_Rational.h.
|
inlinevirtual |
returns the volume of the fermion field.
Implements AFopr< AFIELD >.
Definition at line 98 of file afopr_Rational.h.
AFIELD::real_t AFopr_Rational< AFIELD >::func | ( | const real_t | x | ) |
Definition at line 214 of file afopr_Rational-tmpl.h.
|
virtual |
gets parameters by a Parameter object: to be implemented in a subclass.
Reimplemented from AFopr< AFIELD >.
Definition at line 66 of file afopr_Rational-tmpl.h.
|
private |
Definition at line 136 of file afopr_Rational-tmpl.h.
|
virtual |
multiplies fermion operator to a given field.
Reimplemented from AFopr< AFIELD >.
Definition at line 180 of file afopr_Rational-tmpl.h.
|
inlinevirtual |
hermitian conjugate of mult.
Reimplemented from AFopr< AFIELD >.
Definition at line 91 of file afopr_Rational.h.
|
inlinevirtual |
returns true if additional field conversion is needed.
Reimplemented from AFopr< AFIELD >.
Definition at line 103 of file afopr_Rational.h.
|
inlinevirtual |
reverses to a Field object from other format if necessary.
Reimplemented from AFopr< AFIELD >.
Definition at line 111 of file afopr_Rational.h.
|
virtual |
sets the gauge configuration.
Implements AFopr< AFIELD >.
Definition at line 129 of file afopr_Rational-tmpl.h.
void AFopr_Rational< AFIELD >::set_parameters | ( | const int | Np, |
const int | n_exp, | ||
const int | d_exp, | ||
const real_t | x_min, | ||
const real_t | x_max, | ||
const int | Niter, | ||
const real_t | Stop_cond | ||
) |
Definition at line 82 of file afopr_Rational-tmpl.h.
|
virtual |
sets parameters by a Parameter object: to be implemented in a subclass.
Reimplemented from AFopr< AFIELD >.
Definition at line 31 of file afopr_Rational-tmpl.h.
|
static |
Definition at line 46 of file afopr_Rational.h.
|
private |
Definition at line 60 of file afopr_Rational.h.
|
private |
Definition at line 62 of file afopr_Rational.h.
|
private |
Definition at line 61 of file afopr_Rational.h.
|
private |
Definition at line 52 of file afopr_Rational.h.
|
private |
Definition at line 57 of file afopr_Rational.h.
|
private |
Definition at line 52 of file afopr_Rational.h.
|
private |
Definition at line 54 of file afopr_Rational.h.
|
private |
Definition at line 51 of file afopr_Rational.h.
|
private |
Definition at line 58 of file afopr_Rational.h.
|
private |
Definition at line 55 of file afopr_Rational.h.
|
private |
Definition at line 49 of file afopr_Rational.h.
|
private |
Definition at line 53 of file afopr_Rational.h.
|
private |
Definition at line 53 of file afopr_Rational.h.
|
private |
Definition at line 63 of file afopr_Rational.h.