Bridge++  Ver. 2.0.2
ShiftField_eo Class Reference

Methods to shift the even-odd field. More...

#include <shiftField_eo.h>

Public Member Functions

 ShiftField_eo (const int Nin)
 
 ShiftField_eo ()
 
void forward_h (Field &, const Field &, const int mu, const int ieo)
 
void backward_h (Field &, const Field &, const int mu, const int ieo)
 
void forward_h (Field &, const Field &, const int boundary_condition, const int mu, const int ieo)
 
void backward_h (Field &, const Field &, const int boundary_condition, const int mu, const int ieo)
 
void forward (Field &, const Field &, const int mu)
 
void backward (Field &, const Field &, const int mu)
 
void forward (Field &, const Field &, const int boundary_condition, const int mu)
 
void backward (Field &, const Field &, const int boundary_condition, const int mu)
 

Static Public Attributes

static const std::string class_name = "ShiftField_eo"
 

Private Member Functions

 ShiftField_eo (const ShiftField_eo &)
 
ShiftField_eooperator= (const ShiftField_eo &)
 
void init (const int Nin=0)
 
void up_xh (Field &, const Field &, const int, const int)
 
void up_yh (Field &, const Field &, const int, const int)
 
void up_zh (Field &, const Field &, const int, const int)
 
void up_th (Field &, const Field &, const int, const int)
 
void dn_xh (Field &, const Field &, const int, const int)
 
void dn_yh (Field &, const Field &, const int, const int)
 
void dn_zh (Field &, const Field &, const int, const int)
 
void dn_th (Field &, const Field &, const int, const int)
 

Private Attributes

int m_Nin
 
int m_Nx
 
int m_Ny
 
int m_Nz
 
int m_Nt
 
int m_Nvol
 
int m_Nx2
 
int m_Nvol2
 
Index_eo m_index_eo
 
Bridge::VerboseLevel m_vl
 
std::vector< int > m_yzt_eo
 
Field m_wt_x
 
Field m_vt_x
 comm. buffer in x-direction More...
 
Field m_wt_y
 
Field m_vt_y
 comm. buffer in y-direction More...
 
Field m_wt_z
 
Field m_vt_z
 comm. buffer in z-direction More...
 
Field m_wt_t
 
Field m_vt_t
 comm. buffer in t-direction More...
 
Field m_we
 
Field m_wo
 working field (even/odd) More...
 
Field m_ve
 
Field m_vo
 working field (even/odd) More...
 
Field m_w1
 working field (lexical) More...
 

Detailed Description

Methods to shift the even-odd field.

This class defines the methods that shift a given Field instance with even-odd site index in specified direction. The field must have half the size of the numbers of sites in a node, and field on even(odd) sites are shifted to a field on odd (even) sites. Thus the method is called with an argument specifying one of them: ieo (0: even<-odd, 1: odd<-even). The forward shift means, e.g. in mu-direction, v(site) = w(site-\hat{mu}), where v is the shifted field (output, the first argument) and w the original field (input, the second argument). At present, there is no implementation for a field which has both the even and odd entries (and should be written). Names of private functions might be still confusing. [25 Dec 2011 H.Matsufuru] Largely modified toward ver.2.0. Multi-threading is incorporated if constructed providing Nin. [27 Nov 2021 H.Matsufuru]

Definition at line 49 of file shiftField_eo.h.

Constructor & Destructor Documentation

◆ ShiftField_eo() [1/3]

ShiftField_eo::ShiftField_eo ( const int  Nin)
inline

Definition at line 76 of file shiftField_eo.h.

◆ ShiftField_eo() [2/3]

ShiftField_eo::ShiftField_eo ( )
inline

Definition at line 78 of file shiftField_eo.h.

◆ ShiftField_eo() [3/3]

ShiftField_eo::ShiftField_eo ( const ShiftField_eo )
private

Member Function Documentation

◆ backward() [1/2]

void ShiftField_eo::backward ( Field v,
const Field w,
const int  boundary_condition,
const int  mu 
)

Definition at line 182 of file shiftField_eo.cpp.

◆ backward() [2/2]

void ShiftField_eo::backward ( Field v,
const Field w,
const int  mu 
)

Definition at line 168 of file shiftField_eo.cpp.

◆ backward_h() [1/2]

void ShiftField_eo::backward_h ( Field v,
const Field w,
const int  boundary_condition,
const int  mu,
const int  ieo 
)

Definition at line 130 of file shiftField_eo.cpp.

◆ backward_h() [2/2]

void ShiftField_eo::backward_h ( Field v,
const Field w,
const int  mu,
const int  ieo 
)

Definition at line 88 of file shiftField_eo.cpp.

◆ dn_th()

void ShiftField_eo::dn_th ( Field v,
const Field w,
const int  bc,
const int  ieo 
)
private

Definition at line 912 of file shiftField_eo.cpp.

◆ dn_xh()

void ShiftField_eo::dn_xh ( Field v,
const Field w,
const int  bc,
const int  ieo 
)
private

Definition at line 367 of file shiftField_eo.cpp.

◆ dn_yh()

void ShiftField_eo::dn_yh ( Field v,
const Field w,
const int  bc,
const int  ieo 
)
private

Definition at line 548 of file shiftField_eo.cpp.

◆ dn_zh()

void ShiftField_eo::dn_zh ( Field v,
const Field w,
const int  bc,
const int  ieo 
)
private

Definition at line 732 of file shiftField_eo.cpp.

◆ forward() [1/2]

void ShiftField_eo::forward ( Field v,
const Field w,
const int  boundary_condition,
const int  mu 
)

Definition at line 228 of file shiftField_eo.cpp.

◆ forward() [2/2]

void ShiftField_eo::forward ( Field v,
const Field w,
const int  mu 
)

Definition at line 175 of file shiftField_eo.cpp.

◆ forward_h() [1/2]

void ShiftField_eo::forward_h ( Field v,
const Field w,
const int  boundary_condition,
const int  mu,
const int  ieo 
)

Definition at line 149 of file shiftField_eo.cpp.

◆ forward_h() [2/2]

void ShiftField_eo::forward_h ( Field v,
const Field w,
const int  mu,
const int  ieo 
)

Definition at line 109 of file shiftField_eo.cpp.

◆ init()

void ShiftField_eo::init ( const int  Nin = 0)
private

Definition at line 21 of file shiftField_eo.cpp.

◆ operator=()

ShiftField_eo& ShiftField_eo::operator= ( const ShiftField_eo )
private

◆ up_th()

void ShiftField_eo::up_th ( Field v,
const Field w,
const int  bc,
const int  ieo 
)
private

Definition at line 825 of file shiftField_eo.cpp.

◆ up_xh()

void ShiftField_eo::up_xh ( Field v,
const Field w,
const int  bc,
const int  ieo 
)
private

Definition at line 277 of file shiftField_eo.cpp.

◆ up_yh()

void ShiftField_eo::up_yh ( Field v,
const Field w,
const int  bc,
const int  ieo 
)
private

Definition at line 457 of file shiftField_eo.cpp.

◆ up_zh()

void ShiftField_eo::up_zh ( Field v,
const Field w,
const int  bc,
const int  ieo 
)
private

Definition at line 639 of file shiftField_eo.cpp.

Member Data Documentation

◆ class_name

const std::string ShiftField_eo::class_name = "ShiftField_eo"
static

Definition at line 51 of file shiftField_eo.h.

◆ m_index_eo

Index_eo ShiftField_eo::m_index_eo
private

Definition at line 59 of file shiftField_eo.h.

◆ m_Nin

int ShiftField_eo::m_Nin
private

Definition at line 54 of file shiftField_eo.h.

◆ m_Nt

int ShiftField_eo::m_Nt
private

Definition at line 55 of file shiftField_eo.h.

◆ m_Nvol

int ShiftField_eo::m_Nvol
private

Definition at line 56 of file shiftField_eo.h.

◆ m_Nvol2

int ShiftField_eo::m_Nvol2
private

Definition at line 57 of file shiftField_eo.h.

◆ m_Nx

int ShiftField_eo::m_Nx
private

Definition at line 55 of file shiftField_eo.h.

◆ m_Nx2

int ShiftField_eo::m_Nx2
private

Definition at line 57 of file shiftField_eo.h.

◆ m_Ny

int ShiftField_eo::m_Ny
private

Definition at line 55 of file shiftField_eo.h.

◆ m_Nz

int ShiftField_eo::m_Nz
private

Definition at line 55 of file shiftField_eo.h.

◆ m_ve

Field ShiftField_eo::m_ve
private

Definition at line 71 of file shiftField_eo.h.

◆ m_vl

Bridge::VerboseLevel ShiftField_eo::m_vl
private

Definition at line 61 of file shiftField_eo.h.

◆ m_vo

Field ShiftField_eo::m_vo
private

working field (even/odd)

Definition at line 71 of file shiftField_eo.h.

◆ m_vt_t

Field ShiftField_eo::m_vt_t
private

comm. buffer in t-direction

Definition at line 68 of file shiftField_eo.h.

◆ m_vt_x

Field ShiftField_eo::m_vt_x
private

comm. buffer in x-direction

Definition at line 65 of file shiftField_eo.h.

◆ m_vt_y

Field ShiftField_eo::m_vt_y
private

comm. buffer in y-direction

Definition at line 66 of file shiftField_eo.h.

◆ m_vt_z

Field ShiftField_eo::m_vt_z
private

comm. buffer in z-direction

Definition at line 67 of file shiftField_eo.h.

◆ m_w1

Field ShiftField_eo::m_w1
private

working field (lexical)

Definition at line 72 of file shiftField_eo.h.

◆ m_we

Field ShiftField_eo::m_we
private

Definition at line 70 of file shiftField_eo.h.

◆ m_wo

Field ShiftField_eo::m_wo
private

working field (even/odd)

Definition at line 70 of file shiftField_eo.h.

◆ m_wt_t

Field ShiftField_eo::m_wt_t
private

Definition at line 68 of file shiftField_eo.h.

◆ m_wt_x

Field ShiftField_eo::m_wt_x
private

Definition at line 65 of file shiftField_eo.h.

◆ m_wt_y

Field ShiftField_eo::m_wt_y
private

Definition at line 66 of file shiftField_eo.h.

◆ m_wt_z

Field ShiftField_eo::m_wt_z
private

Definition at line 67 of file shiftField_eo.h.

◆ m_yzt_eo

std::vector<int> ShiftField_eo::m_yzt_eo
private

Definition at line 63 of file shiftField_eo.h.


The documentation for this class was generated from the following files: