Bridge++  Ver. 2.0.2
afopr_Domainwall_eo.cpp
Go to the documentation of this file.
1 
11 
12 #include <stdio.h>
13 #include <stdlib.h>
14 #include <assert.h>
15 #include <vector>
16 using namespace std;
17 
20 
26 
27 #ifdef USE_FACTORY_AUTOREGISTER
28 namespace {
29  bool init1 = AFopr<AField<double, QXS> >::Factory_params::Register(
30  "Domainwall_eo", create_object_with_params);
31 
32  bool init2 = AFopr<AField<float, QXS> >::Factory_params::Register(
33  "Domainwall_eo", create_object_with_params);
34 }
35 #endif
36 
37 
38 template<>
39 class Index_eo_Domainwall<AField<double, QXS> > {
41 public:
42  void split(AFIELD &xe, AFIELD &xo, const AFIELD &x){
43  m_idx.split(xe, xo, x);
44  }
45  void merge(AFIELD &x, const AFIELD &xe, const AFIELD &xo){
46  m_idx.merge(x, xe, xo);
47  }
48 private:
50 };
51 
52 template<>
53 class Index_eo_Domainwall<AField<float, QXS> > {
55 public:
56  void split(AFIELD &xe, AFIELD &xo, const AFIELD &x){
57  m_idx.split(xe, xo, x);
58  }
59  void merge(AFIELD &x, const AFIELD &xe, const AFIELD &xo){
60  m_idx.merge(x, xe, xo);
61  }
62 private:
64 };
65 
66 
67 template<>
68 const std::string AFopr_Domainwall_eo<AField<double, QXS> >::
69 class_name = "AFopr_Domainwall_eo<AField<double,QXS> >";
70 
71 template<>
72 const std::string AFopr_Domainwall_eo<AField<float, QXS> >::
73 class_name = "AFopr_Domainwall_eo<AField<float,QXS> >";
74 
75 
77 
78 // class instanciation.
81 
82 //============================================================END=====
afield-inc.h
Index_eo_Domainwall< AField< float, QXS > >::AFIELD
AField< float, QXS > AFIELD
Definition: afopr_Domainwall_eo.cpp:54
afield.h
AFopr
Definition: afopr.h:48
AField
Definition: afield_base.h:16
Index_eo_Domainwall< AField< double, QXS > >::AFIELD
AField< double, QXS > AFIELD
Definition: afopr_Domainwall_eo.cpp:40
Index_eo_Domainwall< AField< double, QXS > >::merge
void merge(AFIELD &x, const AFIELD &xe, const AFIELD &xo)
Definition: afopr_Domainwall_eo.cpp:45
Index_eo_Domainwall< AField< float, QXS > >::m_idx
AIndex_eo< AFIELD::real_t, AFIELD::IMPL > m_idx
Definition: afopr_Domainwall_eo.cpp:63
AFopr_Domainwall_eo
Domain-wall fermion operator with even-odd site index.
Definition: afopr_Domainwall_eo.h:41
aindex_lex.h
aindex_eo.h
Index_eo_Domainwall< AField< double, QXS > >::m_idx
AIndex_eo< AFIELD::real_t, AFIELD::IMPL > m_idx
Definition: afopr_Domainwall_eo.cpp:49
aindex_eo-inc.h
QXS
@ QXS
Definition: alt_impl.h:15
Index_eo_Domainwall< AField< float, QXS > >::split
void split(AFIELD &xe, AFIELD &xo, const AFIELD &x)
Definition: afopr_Domainwall_eo.cpp:56
afopr_Domainwall_eo.h
commonParameters.h
communicator.h
afopr_Domainwall_eo-tmpl.h
Index_eo_Domainwall< AField< double, QXS > >::split
void split(AFIELD &xe, AFIELD &xo, const AFIELD &x)
Definition: afopr_Domainwall_eo.cpp:42
AIndex_eo< AFIELD::real_t, AFIELD::IMPL >
Index_eo_Domainwall< AField< float, QXS > >::merge
void merge(AFIELD &x, const AFIELD &xe, const AFIELD &xo)
Definition: afopr_Domainwall_eo.cpp:59
Index_eo_Domainwall
Definition: afopr_Domainwall_eo.h:28