Bridge++
Ver. 2.0.2
|
Fermion operator for rational approximation. More...
#include <fopr_Rational_SF.h>
Public Member Functions | |
Fopr_Rational_SF (Fopr *fopr) | |
Fopr_Rational_SF (Fopr *fopr, const Parameters ¶ms) | |
~Fopr_Rational_SF () | |
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 double x_min, const double x_max, const int Niter, const double 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 (Field &v, const Field &f) |
void | mult_dag (Field &v, const Field &f) |
hermitian conjugate of mult. More... | |
double | func (const double 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... | |
double | flop_count () |
this returns the number of floating point operations. More... | |
Public Member Functions inherited from AFopr< Field > | |
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 (Field &, const Field &, const std::string mode) |
executes mult with specified mode (unchanging internal mode). More... | |
virtual void | mult_dag (Field &, const Field &, const std::string mode) |
executes mult_dag with specified mode (unchanging internal mode). More... | |
virtual void | mult_gm5 (Field &, const Field &) |
multiplies gamma_5 matrix. More... | |
virtual void | mult_up (int mu, Field &, const Field &) |
upward nearest neighbor hopping term. More... | |
virtual void | mult_dn (int mu, Field &, const Field &) |
downward nearest neighbor hopping term. More... | |
virtual void | normalize_fprop (Field &) |
normalize propagator if necessary (default: do nothing) More... | |
virtual void | normalize_fopr (Field &) |
normalize propagator if necessary (default: do nothing) More... | |
virtual double | flop_count (const std::string mode) |
returns the flops per site for specified mode. More... | |
virtual bool | needs_convert () |
returns true if additional field conversion is needed. More... | |
virtual void | convert (Field &, const Field &) |
converts a Field object into other format if necessary. More... | |
virtual void | reverse (Field &, const Field &) |
converts an alternative field to a Field object. More... | |
Static Public Attributes | |
static const std::string | class_name = "Fopr_Rational_SF" |
Private Member Functions | |
void | init_parameters () |
Private Attributes | |
Bridge::VerboseLevel | m_vl |
int | m_Np |
int | m_n_exp |
int | m_d_exp |
double | m_x_min |
double | m_x_max |
int | m_Niter |
double | m_Stop_cond |
Fopr * | m_fopr |
Shiftsolver_CG * | m_solver |
double | m_a0 |
std::vector< double > | m_cl |
std::vector< double > | m_bl |
std::vector< Field > | m_xq |
Additional Inherited Members | |
Static Protected Attributes inherited from AFopr< Field > | |
static const std::string | class_name |
Fermion operator for rational approximation.
This class generates fermion operator with 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.
(Coding history will be recovered from trac.) YAML is implemented. [14 Nov 2012 Y.Namekawa] unique_ptr is introduced to avoid memory leaks [21 Mar 2015 Y.Namekawa]
Definition at line 44 of file fopr_Rational_SF.h.
|
inline |
Definition at line 68 of file fopr_Rational_SF.h.
|
inline |
Definition at line 71 of file fopr_Rational_SF.h.
|
inline |
Definition at line 77 of file fopr_Rational_SF.h.
|
inlinevirtual |
returns the external degree of freedom of the fermion field.
Implements AFopr< Field >.
Definition at line 104 of file fopr_Rational_SF.h.
|
inlinevirtual |
returns the on-site degree of freedom of the fermion field.
Implements AFopr< Field >.
Definition at line 103 of file fopr_Rational_SF.h.
|
inlinevirtual |
returns the volume of the fermion field.
Implements AFopr< Field >.
Definition at line 102 of file fopr_Rational_SF.h.
|
virtual |
this returns the number of floating point operations.
Reimplemented from AFopr< Field >.
Definition at line 203 of file fopr_Rational_SF.cpp.
double Fopr_Rational_SF::func | ( | const double | x | ) |
Definition at line 190 of file fopr_Rational_SF.cpp.
|
virtual |
gets parameters by a Parameter object: to be implemented in a subclass.
Reimplemented from AFopr< Field >.
Definition at line 58 of file fopr_Rational_SF.cpp.
|
private |
Definition at line 116 of file fopr_Rational_SF.cpp.
A modification from the original funtion is:
Reimplemented from AFopr< Field >.
Definition at line 158 of file fopr_Rational_SF.cpp.
hermitian conjugate of mult.
Reimplemented from AFopr< Field >.
Definition at line 95 of file fopr_Rational_SF.h.
|
inlinevirtual |
sets the gauge configuration.
Implements AFopr< Field >.
Definition at line 88 of file fopr_Rational_SF.h.
void Fopr_Rational_SF::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 73 of file fopr_Rational_SF.cpp.
|
virtual |
sets parameters by a Parameter object: to be implemented in a subclass.
Reimplemented from AFopr< Field >.
Definition at line 25 of file fopr_Rational_SF.cpp.
|
static |
Definition at line 47 of file fopr_Rational_SF.h.
|
private |
Definition at line 61 of file fopr_Rational_SF.h.
|
private |
Definition at line 63 of file fopr_Rational_SF.h.
|
private |
Definition at line 62 of file fopr_Rational_SF.h.
|
private |
Definition at line 53 of file fopr_Rational_SF.h.
|
private |
Definition at line 58 of file fopr_Rational_SF.h.
|
private |
Definition at line 53 of file fopr_Rational_SF.h.
|
private |
Definition at line 55 of file fopr_Rational_SF.h.
|
private |
Definition at line 52 of file fopr_Rational_SF.h.
|
private |
Definition at line 59 of file fopr_Rational_SF.h.
|
private |
Definition at line 56 of file fopr_Rational_SF.h.
|
private |
Definition at line 50 of file fopr_Rational_SF.h.
|
private |
Definition at line 54 of file fopr_Rational_SF.h.
|
private |
Definition at line 54 of file fopr_Rational_SF.h.
|
private |
Definition at line 64 of file fopr_Rational_SF.h.