Bridge++
Ver. 1.2.x
|
Even-odd Clover fermion operator. More...
#include <fopr_Clover_eo.h>
Public Member Functions | |
Fopr_Clover_eo (std::string repr) | |
~Fopr_Clover_eo () | |
void | set_parameters (const Parameters ¶ms) |
void | set_parameters (const double kappa, const double cSW, const std::valarray< int > bc) |
void | set_config (Field *U) |
setting pointer to the gauge configuration. More... | |
void | set_mode (std::string mode) |
setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelevant call. More... | |
std::string | get_mode () const |
const Field | mult (const Field &f) |
multiplies fermion operator to a given field and returns the resultant field. More... | |
const Field | mult_dag (const Field &f) |
hermitian conjugate of mult(const Field&). More... | |
void | mult (Field &v, const Field &f) |
multiplies fermion operator to a given field (2nd argument) More... | |
void | mult_dag (Field &v, const Field &f) |
hermitian conjugate of mult(Field&, const Field&). More... | |
void | preProp (Field &Be, Field &bo, const Field &b) |
void | postProp (Field &x, const Field &xe, const Field &bo) |
void | assert_single_thread () |
function returning Field instance must be called from single thread. More... | |
void | prePropD (Field &, Field &, const Field &) |
void | postPropD (Field &, const Field &, const Field &) |
void | prePropDag (Field &, Field &, const Field &) |
void | postPropDag (Field &, const Field &, const Field &) |
const Field_F | mult_csw_inv (const Field_F &, const int ieo) |
const Field | D (const Field &f) |
const Field | Ddag (const Field &f) |
const Field | DdagD (const Field &f) |
const Field | DDdag (const Field &f) |
const Field | H (const Field &f) |
const Field | mult_gm5 (const Field &f) |
const Field | MeoMoe (const Field &f) |
void | D (Field &v, const Field &f) |
void | Ddag (Field &v, const Field &f) |
void | DdagD (Field &v, const Field &f) |
void | DDdag (Field &v, const Field &f) |
void | H (Field &v, const Field &f) |
void | mult_gm5 (Field &v, const Field &f) |
void | MeoMoe (Field &v, const Field &f) |
void | Meo (Field &, const Field &, const int ieo) |
void | Meo_gm5 (Field_F &, const Field_F &, const int ieo) |
void | Mdageo (Field_F &, const Field_F &, const int ieo) |
const Field_F | Meo (const Field_F &, const int ieo) |
const Field_F | Meo_gm5 (const Field_F &, const int ieo) |
const Field_F | Mdageo (const Field_F &, const int ieo) |
void | mult_isigma (Field_F &w, const Field_F &f, const int mu, const int nu) |
std::vector< double > | csmatrix (const int &site) |
int | field_nvol () |
returns the volume for which the fermion operator is defined. More... | |
int | field_nin () |
returns the on-site d.o.f. for which the fermion operator is defined. More... | |
int | field_nex () |
returns the external d.o.f. for which the fermion operator is defined. More... | |
double | flop_count () |
this returns the number of floating point operations. More... | |
Public Member Functions inherited from Fopr_eo | |
virtual | ~Fopr_eo () |
std::string | get_mode () const |
Public Member Functions inherited from Fopr | |
Fopr () | |
virtual | ~Fopr () |
void | set_parameter_verboselevel (const Bridge::VerboseLevel vl) |
virtual void | mult_up (int mu, Field &, const Field &) |
nearest neighbor hopping term: temporary entry [H.Matsufuru] More... | |
virtual void | mult_dn (int mu, Field &, const Field &) |
Static Public Attributes | |
static const std::string | class_name = "Fopr_Clover_eo" |
Private Member Functions | |
void | init (const std::string repr) |
void | tidyup () |
Private Attributes | |
int | m_Nc |
int | m_Nd |
int | m_NinF |
int | m_Ndim |
int | m_Nvol |
int | m_Nvol2 |
double | m_kappa |
hopping parameter. More... | |
double | m_cSW |
clover coefficient. More... | |
std::valarray< int > | m_boundary |
boundary condition. More... | |
std::string | m_mode |
Fopr_Wilson_eo * | m_fopr_w |
Fopr_CloverTerm_eo * | m_fopr_csw |
Index_eo | m_idx |
Field_G * | m_Ueo |
Field | m_w1 |
working field. More... | |
Field_F | m_vF1 |
Field_F | m_vF2 |
Field_F | m_vF3 |
working field. More... | |
void(Fopr_Clover_eo::* | m_mult )(Field &, const Field &) |
void(Fopr_Clover_eo::* | m_mult_dag )(Field &, const Field &) |
void(Fopr_Clover_eo::* | m_preProp )(Field &, Field &, const Field &) |
void(Fopr_Clover_eo::* | m_postProp )(Field &, const Field &, const Field &) |
Additional Inherited Members | |
Protected Attributes inherited from Fopr | |
Bridge::VerboseLevel | m_vl |
Even-odd Clover fermion operator.
This class is an even-odd version of Clover fermion operator. At present this is rough implementation, while correctly works, and to be updated by supplying complete functionality. Only the functions needed for even-odd preconditioned solver is ready. 20 June 2012 S.UEDA Modify this code to work. [03 Mar 2013 Y.Namekawa] Multi-threaded. [12 Jul 2014 H.Matsufuru]
Definition at line 52 of file fopr_Clover_eo.h.
|
inline |
Definition at line 82 of file fopr_Clover_eo.h.
|
inline |
Definition at line 84 of file fopr_Clover_eo.h.
void Fopr_Clover_eo::assert_single_thread | ( | ) |
function returning Field instance must be called from single thread.
Definition at line 160 of file fopr_Clover_eo.cpp.
|
inline |
Definition at line 194 of file fopr_Clover_eo.h.
Definition at line 177 of file fopr_Clover_eo.cpp.
Definition at line 267 of file fopr_Clover_eo.cpp.
Definition at line 187 of file fopr_Clover_eo.cpp.
Definition at line 277 of file fopr_Clover_eo.cpp.
Definition at line 197 of file fopr_Clover_eo.cpp.
Definition at line 288 of file fopr_Clover_eo.cpp.
Definition at line 207 of file fopr_Clover_eo.cpp.
Definition at line 296 of file fopr_Clover_eo.cpp.
|
inlinevirtual |
returns the external d.o.f. for which the fermion operator is defined.
Implements Fopr_eo.
Definition at line 199 of file fopr_Clover_eo.h.
|
inlinevirtual |
returns the on-site d.o.f. for which the fermion operator is defined.
Implements Fopr_eo.
Definition at line 198 of file fopr_Clover_eo.h.
|
inlinevirtual |
returns the volume for which the fermion operator is defined.
Implements Fopr_eo.
Definition at line 197 of file fopr_Clover_eo.h.
|
virtual |
this returns the number of floating point operations.
Reimplemented from Fopr.
Definition at line 328 of file fopr_Clover_eo.cpp.
|
inlinevirtual |
Reimplemented from Fopr.
Definition at line 120 of file fopr_Clover_eo.h.
Definition at line 217 of file fopr_Clover_eo.cpp.
Definition at line 304 of file fopr_Clover_eo.cpp.
|
private |
Definition at line 50 of file fopr_Clover_eo.cpp.
Definition at line 366 of file fopr_Clover_eo.cpp.
Definition at line 257 of file fopr_Clover_eo.cpp.
Definition at line 355 of file fopr_Clover_eo.cpp.
Definition at line 237 of file fopr_Clover_eo.cpp.
Definition at line 376 of file fopr_Clover_eo.cpp.
Definition at line 247 of file fopr_Clover_eo.cpp.
Definition at line 167 of file fopr_Clover_eo.cpp.
Definition at line 319 of file fopr_Clover_eo.cpp.
multiplies fermion operator to a given field and returns the resultant field.
Implements Fopr_eo.
Definition at line 123 of file fopr_Clover_eo.h.
multiplies fermion operator to a given field (2nd argument)
Reimplemented from Fopr_eo.
Definition at line 139 of file fopr_Clover_eo.h.
hermitian conjugate of mult(const Field&).
Reimplemented from Fopr_eo.
Definition at line 131 of file fopr_Clover_eo.h.
hermitian conjugate of mult(Field&, const Field&).
Reimplemented from Fopr_eo.
Definition at line 142 of file fopr_Clover_eo.h.
Definition at line 227 of file fopr_Clover_eo.cpp.
Definition at line 312 of file fopr_Clover_eo.cpp.
Definition at line 386 of file fopr_Clover_eo.cpp.
Implements Fopr_eo.
Definition at line 149 of file fopr_Clover_eo.h.
Definition at line 416 of file fopr_Clover_eo.cpp.
Definition at line 458 of file fopr_Clover_eo.cpp.
Implements Fopr_eo.
Definition at line 146 of file fopr_Clover_eo.h.
Definition at line 394 of file fopr_Clover_eo.cpp.
Definition at line 436 of file fopr_Clover_eo.cpp.
|
virtual |
setting pointer to the gauge configuration.
Implements Fopr_eo.
Definition at line 147 of file fopr_Clover_eo.cpp.
|
inlinevirtual |
setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelevant call.
Reimplemented from Fopr_eo.
Definition at line 91 of file fopr_Clover_eo.h.
|
virtual |
Implements Fopr.
Definition at line 91 of file fopr_Clover_eo.cpp.
void Fopr_Clover_eo::set_parameters | ( | const double | kappa, |
const double | cSW, | ||
const std::valarray< int > | bc | ||
) |
Definition at line 116 of file fopr_Clover_eo.cpp.
|
private |
Definition at line 81 of file fopr_Clover_eo.cpp.
|
static |
Definition at line 55 of file fopr_Clover_eo.h.
|
private |
boundary condition.
Definition at line 63 of file fopr_Clover_eo.h.
|
private |
clover coefficient.
Definition at line 62 of file fopr_Clover_eo.h.
|
private |
Definition at line 68 of file fopr_Clover_eo.h.
|
private |
Definition at line 67 of file fopr_Clover_eo.h.
|
private |
Definition at line 70 of file fopr_Clover_eo.h.
|
private |
hopping parameter.
Definition at line 61 of file fopr_Clover_eo.h.
|
private |
Definition at line 65 of file fopr_Clover_eo.h.
Definition at line 76 of file fopr_Clover_eo.h.
Definition at line 77 of file fopr_Clover_eo.h.
|
private |
Definition at line 58 of file fopr_Clover_eo.h.
|
private |
Definition at line 58 of file fopr_Clover_eo.h.
|
private |
Definition at line 58 of file fopr_Clover_eo.h.
|
private |
Definition at line 58 of file fopr_Clover_eo.h.
|
private |
Definition at line 59 of file fopr_Clover_eo.h.
|
private |
Definition at line 59 of file fopr_Clover_eo.h.
Definition at line 79 of file fopr_Clover_eo.h.
Definition at line 78 of file fopr_Clover_eo.h.
|
private |
Definition at line 71 of file fopr_Clover_eo.h.
|
private |
Definition at line 74 of file fopr_Clover_eo.h.
|
private |
Definition at line 74 of file fopr_Clover_eo.h.
|
private |
working field.
Definition at line 74 of file fopr_Clover_eo.h.
|
private |
working field.
Definition at line 73 of file fopr_Clover_eo.h.