Bridge++  Ver. 2.0.2
Index_eo Class Reference

Even-odd site index. More...

#include <index_eo.h>

Public Member Functions

 Index_eo ()
 
int leo (const int y, const int z, const int t) const
 
int site (const int x2, const int y, const int z, const int t, const int ieo) const
 
int site (const int is, const int ieo) const
 
int site_up (const int x2, const int y, const int z, const int t, const int ieo) const
 
int site_xup (const int x2, const int y, const int z, const int t, const int ieo) const
 
int site_dn (const int x2, const int y, const int z, const int t, const int ieo) const
 
int site_xdn (const int x2, const int y, const int z, const int t, const int ieo) const
 
int siteh (const int x2, const int y, const int z, const int t) const
 
int siteh_up (const int x2, const int y, const int z, const int t, const int ieo) const
 
int siteh_xup (const int x2, const int y, const int z, const int t, const int ieo) const
 
int siteh_dn (const int x2, const int y, const int z, const int t, const int ieo) const
 
int siteh_xdn (const int x2, const int y, const int z, const int t, const int ieo) const
 
void init ()
 initial setup. More...
 
void convertField (Field &eo, const Field &lex)
 
void convertField (Field &eo, const Field &lex, const int ieo)
 
void reverseField (Field &lex, const Field &eo)
 
void reverseField (Field &lex, const Field &eo, const int ieo)
 
void splitField (Field &e, Field &o, const Field &eo)
 
void mergeField (Field &eo, const Field &e, const Field &o)
 

Static Public Attributes

static const std::string class_name = "Index_eo"
 

Private Attributes

Bridge::VerboseLevel m_vl
 
int m_Nx
 
int m_Ny
 
int m_Nz
 
int m_Nt
 
int m_Nvol
 
int m_Nx2
 
int m_Nvol2
 
int m_node_eo
 {0, 1}: local origin is on even/odd side More...
 
std::vector< int > m_yzt_eo
 
std::vector< int > m_site_up
 
std::vector< int > m_site_dn
 
Index_lex m_index_lex
 

Detailed Description

Even-odd site index.

This class defines even-odd site index. Only the site degree of freedom is concerned. Nx (x-extent inside a node) must be even in the present implementation. Coverting from and reverting to the lexical site index are implemented as member functions of this class. In present implementation, there is no superclass structure, and thus polymorphism is not available. Some of method names might be confusing; restructuring may be helpful. [25 Dec 2011 H.Matsufuru] Multi-threading is applied to methods. [29 Nov 2021 H.Matsufuru]

Definition at line 44 of file index_eo.h.

Constructor & Destructor Documentation

◆ Index_eo()

Index_eo::Index_eo ( )
inline

Definition at line 63 of file index_eo.h.

Member Function Documentation

◆ convertField() [1/2]

void Index_eo::convertField ( Field eo,
const Field lex 
)

Definition at line 90 of file index_eo.cpp.

◆ convertField() [2/2]

void Index_eo::convertField ( Field eo,
const Field lex,
const int  ieo 
)

Definition at line 125 of file index_eo.cpp.

◆ init()

void Index_eo::init ( )

initial setup.

Definition at line 23 of file index_eo.cpp.

◆ leo()

int Index_eo::leo ( const int  y,
const int  z,
const int  t 
) const
inline

Definition at line 65 of file index_eo.h.

◆ mergeField()

void Index_eo::mergeField ( Field eo,
const Field e,
const Field o 
)

Definition at line 262 of file index_eo.cpp.

◆ reverseField() [1/2]

void Index_eo::reverseField ( Field lex,
const Field eo 
)

Definition at line 197 of file index_eo.cpp.

◆ reverseField() [2/2]

void Index_eo::reverseField ( Field lex,
const Field eo,
const int  ieo 
)

Definition at line 161 of file index_eo.cpp.

◆ site() [1/2]

int Index_eo::site ( const int  is,
const int  ieo 
) const
inline

Definition at line 72 of file index_eo.h.

◆ site() [2/2]

int Index_eo::site ( const int  x2,
const int  y,
const int  z,
const int  t,
const int  ieo 
) const
inline

Definition at line 68 of file index_eo.h.

◆ site_dn()

int Index_eo::site_dn ( const int  x2,
const int  y,
const int  z,
const int  t,
const int  ieo 
) const
inline

Definition at line 89 of file index_eo.h.

◆ site_up()

int Index_eo::site_up ( const int  x2,
const int  y,
const int  z,
const int  t,
const int  ieo 
) const
inline

Definition at line 75 of file index_eo.h.

◆ site_xdn()

int Index_eo::site_xdn ( const int  x2,
const int  y,
const int  z,
const int  t,
const int  ieo 
) const
inline

Definition at line 96 of file index_eo.h.

◆ site_xup()

int Index_eo::site_xup ( const int  x2,
const int  y,
const int  z,
const int  t,
const int  ieo 
) const
inline

Definition at line 82 of file index_eo.h.

◆ siteh()

int Index_eo::siteh ( const int  x2,
const int  y,
const int  z,
const int  t 
) const
inline

Definition at line 103 of file index_eo.h.

◆ siteh_dn()

int Index_eo::siteh_dn ( const int  x2,
const int  y,
const int  z,
const int  t,
const int  ieo 
) const
inline

Definition at line 121 of file index_eo.h.

◆ siteh_up()

int Index_eo::siteh_up ( const int  x2,
const int  y,
const int  z,
const int  t,
const int  ieo 
) const
inline

Definition at line 107 of file index_eo.h.

◆ siteh_xdn()

int Index_eo::siteh_xdn ( const int  x2,
const int  y,
const int  z,
const int  t,
const int  ieo 
) const
inline

Definition at line 128 of file index_eo.h.

◆ siteh_xup()

int Index_eo::siteh_xup ( const int  x2,
const int  y,
const int  z,
const int  t,
const int  ieo 
) const
inline

Definition at line 114 of file index_eo.h.

◆ splitField()

void Index_eo::splitField ( Field e,
Field o,
const Field eo 
)

Definition at line 232 of file index_eo.cpp.

Member Data Documentation

◆ class_name

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

Definition at line 46 of file index_eo.h.

◆ m_index_lex

Index_lex Index_eo::m_index_lex
private

Definition at line 59 of file index_eo.h.

◆ m_node_eo

int Index_eo::m_node_eo
private

{0, 1}: local origin is on even/odd side

Definition at line 53 of file index_eo.h.

◆ m_Nt

int Index_eo::m_Nt
private

Definition at line 51 of file index_eo.h.

◆ m_Nvol

int Index_eo::m_Nvol
private

Definition at line 51 of file index_eo.h.

◆ m_Nvol2

int Index_eo::m_Nvol2
private

Definition at line 52 of file index_eo.h.

◆ m_Nx

int Index_eo::m_Nx
private

Definition at line 51 of file index_eo.h.

◆ m_Nx2

int Index_eo::m_Nx2
private

Definition at line 52 of file index_eo.h.

◆ m_Ny

int Index_eo::m_Ny
private

Definition at line 51 of file index_eo.h.

◆ m_Nz

int Index_eo::m_Nz
private

Definition at line 51 of file index_eo.h.

◆ m_site_dn

std::vector<int> Index_eo::m_site_dn
private

Definition at line 57 of file index_eo.h.

◆ m_site_up

std::vector<int> Index_eo::m_site_up
private

Definition at line 56 of file index_eo.h.

◆ m_vl

Bridge::VerboseLevel Index_eo::m_vl
private

Definition at line 49 of file index_eo.h.

◆ m_yzt_eo

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

Definition at line 55 of file index_eo.h.


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