|
Bridge++
Ver.2.1.3
|
#include <afopr_CloverTerm.h>
Public Types | |
| typedef AFIELD::real_t | real_t |
Public Member Functions | |
| AFopr_CloverTerm (const Parameters ¶ms) | |
| constructor. More... | |
| ~AFopr_CloverTerm () | |
| destructor. More... | |
| void | set_parameters (const Parameters ¶ms) |
| setting parameters by a Parameter object. More... | |
| void | set_parameters (real_t CKs, real_t csW, std::vector< int > bc) |
| setting parameters by values. More... | |
| void | set_config (Field *u) |
| setting gauge configuration. More... | |
| void | set_boundary_config (AFIELD &U, const int mu) |
| setting fermion boundary condition to gauge field. More... | |
| Field * | get_conf (void) |
| returns the pointer to gauge configuration. More... | |
| void | set_mode (std::string mode) |
| setting mult mode. More... | |
| std::string | get_mode () const |
| returns mult mode. More... | |
| void | mult (AFIELD &, const AFIELD &) |
| multiplies fermion operator to a given field. More... | |
| void | mult_dag (AFIELD &, const AFIELD &) |
| hermitian conjugate of mult. More... | |
| void | mult_gm5 (AFIELD &, const AFIELD &) |
| multiplies gamma_5 matrix. More... | |
| void | mult (AFIELD &, const AFIELD &, const std::string mode) |
| executes mult with specified mode (unchanging internal mode). More... | |
| void | H (AFIELD &, const AFIELD &) |
| void | D (AFIELD &, const AFIELD &) |
| void | mult_csw (AFIELD &, const AFIELD &) |
| void | multadd_csw (AFIELD &, const AFIELD &) |
| void | mult_csw_inv (AFIELD &, const AFIELD &) |
| void | get_csw (AFIELD &T) |
| getting clover term. More... | |
| void | get_csw_inv (AFIELD &T) |
| getting the inverse of clover term. More... | |
| void | get_csw_inv (AFIELD &T, const int) |
| getting the inverse of clover term with index. More... | |
| int | field_nin () |
| returns inner size parameter. More... | |
| int | field_nvol () |
| returns local volume size parameter. More... | |
| int | field_nex () |
| returns external size parameter. More... | |
| double | flop_count () |
| returns floating operation counts. More... | |
| const std::string | class_name |
| const std::string | class_name |
Public Member Functions inherited from AFopr< AFIELD > | |
| AFopr () | |
| virtual | ~AFopr () |
| virtual void | get_parameters (Parameters ¶ms) const |
| gets parameters by a Parameter object: to be implemented in a subclass. 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_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 (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 (AFIELD &, const Field &) |
| converts a Field object into other format if necessary. More... | |
| virtual void | reverse (Field &, const AFIELD &) |
| converts an alternative field to a Field object. More... | |
Static Public Attributes | |
| static const std::string | class_name = "AFopr_CloverTerm<AFIELD>" |
Protected Types | |
| enum | Gamma_repr { DIRAC, CHIRAL } |
Protected Attributes | |
| enum AFopr_CloverTerm::Gamma_repr | m_repr |
| gamma matrix representation More... | |
| int | m_Nc |
| int | m_Nd |
| int | m_Ndim |
| int | m_Nvc |
| int | m_Ndf |
| int | m_Ndm2 |
| int | m_Nx |
| int | m_Ny |
| int | m_Nz |
| int | m_Nt |
| int | m_Nst |
| real_t | m_CKs |
| hopping parameter. More... | |
| real_t | m_cSW |
| clover coefficient. More... | |
| std::vector< int > | m_boundary |
| pointer to boundary condition More... | |
| Bridge::VerboseLevel | m_vl |
| verbose level More... | |
| Field * | m_conf |
| original gauge config. More... | |
| AFIELD | m_U |
| copied gauge config. with boundary conditions. More... | |
| std::string | m_mode |
| mult mode More... | |
| AStaple_lex< AFIELD > * | m_staple |
| ASolver< AFIELD > * | m_solver |
| AFIELD | m_T |
| AFIELD | m_Tinv |
| clover term (+1) and its inverse. More... | |
| AFIELD | m_v1 |
| AFIELD | m_v2 |
| working spinor fields. More... | |
| AFIELD | m_ut1 |
| AFIELD | m_ut2 |
| working gauge fields. More... | |
| AFIELD | m_U2 |
| AFIELD | m_F2 |
| working gauge fields. More... | |
| int | do_comm [4] |
| int | do_comm_any |
| int | m_Nsize [4] |
Private Member Functions | |
| void | init (const Parameters ¶ms) |
| initial setup. More... | |
| void | tidyup () |
| final tidy-up. More... | |
| void | setup_channels () |
| setup channels for communication. More... | |
| void | set_config_omp (Field *u) |
| void | set_config_impl (Field *u) |
| void | set_csw (Field &u) |
| setting clover term. More... | |
| void | solve_csw_inv () |
| solve the inverse of clover term. More... | |
| void | solve_csw_inv_dirac () |
| void | solve_csw_inv_chiral () |
| void | set_csw_dirac (Field &u) |
| setting clover term (Dirac repr). More... | |
| void | set_csw_chiral (Field &u) |
| setting clover term (Chiral repr). More... | |
| void | set_fieldstrength (AFIELD &Fst, AFIELD &u, int, int) |
| setting field strength. More... | |
| void | multadd_csw (real_t *v2, real_t *v1) |
| multiply diagonal term. More... | |
| void | multadd_csw_dirac (real_t *v2, real_t *v1, int site) |
| multiply diagonal term at each site (Dirac repr). More... | |
| void | multadd_csw_chiral (real_t *v2, real_t *v1, int site) |
| multiply diagonal term at each site (Chiral repr). More... | |
| void | mult_gm5 (real_t *, real_t *) |
Additional Inherited Members | |
Static Protected Attributes inherited from AFopr< AFIELD > | |
| static const std::string | class_name |
Definition at line 31 of file afopr_CloverTerm.h.
| typedef AFIELD::real_t AFopr_CloverTerm< AFIELD >::real_t |
Definition at line 34 of file afopr_CloverTerm.h.
|
protected |
| Enumerator | |
|---|---|
| DIRAC | |
| CHIRAL | |
Definition at line 38 of file afopr_CloverTerm.h.
|
inline |
constructor.
Definition at line 73 of file afopr_CloverTerm.h.
|
inline |
destructor.
Definition at line 76 of file afopr_CloverTerm.h.
| const std::string AFopr_CloverTerm< AField< double, ACCEL > >::class_name |
Definition at line 46 of file afopr_CloverTerm_double.cpp.
| const std::string AFopr_CloverTerm< AField< float, ACCEL > >::class_name |
Definition at line 46 of file afopr_CloverTerm_float.cpp.
| void AFopr_CloverTerm< AFIELD >::D | ( | AFIELD & | v, |
| const AFIELD & | w | ||
| ) |
Definition at line 830 of file afopr_CloverTerm-tmpl.h.
|
inlinevirtual |
returns external size parameter.
Implements AFopr< AFIELD >.
Definition at line 132 of file afopr_CloverTerm.h.
|
inlinevirtual |
returns inner size parameter.
Implements AFopr< AFIELD >.
Definition at line 126 of file afopr_CloverTerm.h.
|
inlinevirtual |
returns local volume size parameter.
Implements AFopr< AFIELD >.
Definition at line 129 of file afopr_CloverTerm.h.
|
virtual |
returns floating operation counts.
Reimplemented from AFopr< AFIELD >.
Definition at line 941 of file afopr_CloverTerm-tmpl.h.
|
inline |
returns the pointer to gauge configuration.
Definition at line 94 of file afopr_CloverTerm.h.
| void AFopr_CloverTerm< AFIELD >::get_csw | ( | AFIELD & | T | ) |
getting clover term.
Definition at line 451 of file afopr_CloverTerm-tmpl.h.
| void AFopr_CloverTerm< AFIELD >::get_csw_inv | ( | AFIELD & | T | ) |
getting the inverse of clover term.
Definition at line 465 of file afopr_CloverTerm-tmpl.h.
| void AFopr_CloverTerm< AFIELD >::get_csw_inv | ( | AFIELD & | T, |
| const int | j | ||
| ) |
getting the inverse of clover term with index.
Definition at line 493 of file afopr_CloverTerm-tmpl.h.
|
virtual |
returns mult mode.
Reimplemented from AFopr< AFIELD >.
Definition at line 761 of file afopr_CloverTerm-tmpl.h.
| void AFopr_CloverTerm< AFIELD >::H | ( | AFIELD & | v, |
| const AFIELD & | w | ||
| ) |
Definition at line 837 of file afopr_CloverTerm-tmpl.h.
|
private |
initial setup.
Definition at line 16 of file afopr_CloverTerm-tmpl.h.
|
virtual |
multiplies fermion operator to a given field.
Reimplemented from AFopr< AFIELD >.
Definition at line 768 of file afopr_CloverTerm-tmpl.h.
|
virtual |
executes mult with specified mode (unchanging internal mode).
Reimplemented from AFopr< AFIELD >.
Definition at line 802 of file afopr_CloverTerm-tmpl.h.
| void AFopr_CloverTerm< AFIELD >::mult_csw | ( | AFIELD & | v, |
| const AFIELD & | w | ||
| ) |
Definition at line 866 of file afopr_CloverTerm-tmpl.h.
| void AFopr_CloverTerm< AFIELD >::mult_csw_inv | ( | AFIELD & | v, |
| const AFIELD & | w | ||
| ) |
Definition at line 891 of file afopr_CloverTerm-tmpl.h.
|
virtual |
hermitian conjugate of mult.
Reimplemented from AFopr< AFIELD >.
Definition at line 785 of file afopr_CloverTerm-tmpl.h.
|
virtual |
multiplies gamma_5 matrix.
Reimplemented from AFopr< AFIELD >.
Definition at line 819 of file afopr_CloverTerm-tmpl.h.
|
private |
Definition at line 845 of file afopr_CloverTerm-tmpl.h.
| void AFopr_CloverTerm< AFIELD >::multadd_csw | ( | AFIELD & | v, |
| const AFIELD & | w | ||
| ) |
Definition at line 916 of file afopr_CloverTerm-tmpl.h.
|
private |
multiply diagonal term.
|
private |
multiply diagonal term at each site (Chiral repr).
|
private |
multiply diagonal term at each site (Dirac repr).
| void AFopr_CloverTerm< AFIELD >::set_boundary_config | ( | AFIELD & | U, |
| const int | mu | ||
| ) |
setting fermion boundary condition to gauge field.
|
virtual |
setting gauge configuration.
Implements AFopr< AFIELD >.
Definition at line 186 of file afopr_CloverTerm-tmpl.h.
|
private |
Definition at line 209 of file afopr_CloverTerm-tmpl.h.
|
private |
Definition at line 199 of file afopr_CloverTerm-tmpl.h.
|
private |
setting clover term.
Definition at line 255 of file afopr_CloverTerm-tmpl.h.
|
private |
setting clover term (Chiral repr).
Definition at line 612 of file afopr_CloverTerm-tmpl.h.
|
private |
setting clover term (Dirac repr).
T = 1 - kappa c_SW sigma F / 2
Definition at line 517 of file afopr_CloverTerm-tmpl.h.
|
private |
setting field strength.
Definition at line 719 of file afopr_CloverTerm-tmpl.h.
|
virtual |
setting mult mode.
Reimplemented from AFopr< AFIELD >.
Definition at line 748 of file afopr_CloverTerm-tmpl.h.
|
virtual |
setting parameters by a Parameter object.
Reimplemented from AFopr< AFIELD >.
Definition at line 105 of file afopr_CloverTerm-tmpl.h.
| void AFopr_CloverTerm< AFIELD >::set_parameters | ( | real_t | CKs, |
| real_t | csW, | ||
| std::vector< int > | bc | ||
| ) |
setting parameters by values.
Definition at line 149 of file afopr_CloverTerm-tmpl.h.
|
private |
setup channels for communication.
|
private |
solve the inverse of clover term.
Definition at line 271 of file afopr_CloverTerm-tmpl.h.
|
private |
Definition at line 379 of file afopr_CloverTerm-tmpl.h.
|
private |
Definition at line 321 of file afopr_CloverTerm-tmpl.h.
|
private |
final tidy-up.
Definition at line 94 of file afopr_CloverTerm-tmpl.h.
|
static |
Definition at line 35 of file afopr_CloverTerm.h.
|
protected |
Definition at line 66 of file afopr_CloverTerm.h.
|
protected |
Definition at line 67 of file afopr_CloverTerm.h.
|
protected |
pointer to boundary condition
Definition at line 46 of file afopr_CloverTerm.h.
|
protected |
hopping parameter.
Definition at line 44 of file afopr_CloverTerm.h.
|
protected |
original gauge config.
Definition at line 50 of file afopr_CloverTerm.h.
|
protected |
clover coefficient.
Definition at line 45 of file afopr_CloverTerm.h.
|
protected |
working gauge fields.
Definition at line 64 of file afopr_CloverTerm.h.
|
protected |
mult mode
Definition at line 53 of file afopr_CloverTerm.h.
|
protected |
Definition at line 40 of file afopr_CloverTerm.h.
|
protected |
Definition at line 40 of file afopr_CloverTerm.h.
|
protected |
Definition at line 41 of file afopr_CloverTerm.h.
|
protected |
Definition at line 40 of file afopr_CloverTerm.h.
|
protected |
Definition at line 41 of file afopr_CloverTerm.h.
|
protected |
Definition at line 69 of file afopr_CloverTerm.h.
|
protected |
Definition at line 42 of file afopr_CloverTerm.h.
|
protected |
Definition at line 42 of file afopr_CloverTerm.h.
|
protected |
Definition at line 41 of file afopr_CloverTerm.h.
|
protected |
Definition at line 42 of file afopr_CloverTerm.h.
|
protected |
Definition at line 42 of file afopr_CloverTerm.h.
|
protected |
Definition at line 42 of file afopr_CloverTerm.h.
|
protected |
gamma matrix representation
|
protected |
Definition at line 56 of file afopr_CloverTerm.h.
|
protected |
Definition at line 55 of file afopr_CloverTerm.h.
|
protected |
Definition at line 58 of file afopr_CloverTerm.h.
|
protected |
clover term (+1) and its inverse.
Definition at line 58 of file afopr_CloverTerm.h.
|
protected |
copied gauge config. with boundary conditions.
Definition at line 51 of file afopr_CloverTerm.h.
|
protected |
Definition at line 64 of file afopr_CloverTerm.h.
|
protected |
Definition at line 62 of file afopr_CloverTerm.h.
|
protected |
working gauge fields.
Definition at line 62 of file afopr_CloverTerm.h.
|
protected |
Definition at line 60 of file afopr_CloverTerm.h.
|
protected |
working spinor fields.
Definition at line 60 of file afopr_CloverTerm.h.
|
protected |
verbose level
Definition at line 48 of file afopr_CloverTerm.h.