Go to the documentation of this file.
10 #ifndef QXS_AFOPR_WILSON_INCLUDED
11 #define QXS_AFOPR_WILSON_INCLUDED
39 template<
typename AFIELD>
70 using allocator_t =
typename AFIELD::template aligned_allocator<char>;
182 static bool register_factory()
185 create_object_with_params);
void mult_xm(real_t *, real_t *)
void mult_tm(real_t *, real_t *)
std::string m_mode
mult mode
void mult_xp(real_t *, real_t *)
void DdagD(AFIELD &, const AFIELD &)
int field_nex()
returns external size parameter.
void mult_dag(AFIELD &, const AFIELD &)
hermitian conjugate of mult.
std::vector< Channel > chrecv_dn
void mult_D(AFIELD &, const AFIELD &)
standard D mult.
void set_mode(std::string mode)
setting mult mode.
void mult_D_alt(AFIELD &, const AFIELD &)
D mult using mult_xp, etc.
void mult_gm5(AFIELD &, const AFIELD &)
multiplies gamma_5 matrix.
void mult_dn(int mu, AFIELD &, const AFIELD &)
downward nearest neighbor hopping term.
typename AFIELD::template aligned_allocator< char > allocator_t
void mult_zm(real_t *, real_t *)
void set_parameters(const Parameters ¶ms)
setting parameters by a Parameter object.
ChannelSet class for a collection of channels.
void reverse(Field &v, const AFIELD &w)
reverse of spinor field.
real_t m_CKs
hopping parameter.
void mult_yp(real_t *, real_t *)
void mult_up(int mu, AFIELD &, const AFIELD &)
upward nearest neighbor hopping term.
std::vector< Channel > chrecv_up
~AFopr_Wilson()
destructor.
void init(const Parameters ¶ms)
initial setup.
void get_parameters(Parameters ¶ms) const
get parameters via a Parameter object
std::vector< int > m_bdsize
void set_config(Field *u)
setting gauge configuration (common interface).
void H(AFIELD &, const AFIELD &)
void Ddag(AFIELD &, const AFIELD &)
bool needs_convert()
QXS version requires convert of spinor field.
std::string m_repr
gamma matrix representation
void setup_channels()
setup channels for communication.
std::vector< Channel > chsend_dn
AFIELD m_U
copied gauge config. with boundary conditions.
void mult_gm4(AFIELD &, const AFIELD &)
Bridge::VerboseLevel m_vl
verbose level
void convert(AFIELD &v, const Field &w)
convert of spinor field.
void aypx(real_t, real_t *, real_t *)
void mult_tp(real_t *, real_t *)
int field_nvol()
returns local volume size parameter.
void gm5_aypx(real_t, real_t *, real_t *)
static const std::string class_name
void mult_ym(real_t *, real_t *)
void D(AFIELD &, const AFIELD &)
void set_config_omp(Field *u)
setting gauge configuration (setting omp parallel).
std::vector< Channel > chsend_up
void set_config_impl(Field *u)
setting gauge configuration (implementation).
void tidyup()
final tidy-up.
Field * m_conf
original gauge config.
double flop_count()
returns floating operation counts.
std::string get_mode() const
returns mult mode.
Container of Field-type object.
void mult(AFIELD &, const AFIELD &)
multiplies fermion operator to a given field.
int field_nin()
returns inner size parameter.
std::vector< int > m_boundary
pointer to boundary condition
void mult_zp(real_t *, real_t *)
AFopr_Wilson(const Parameters ¶ms)
constructor.