11#include <unordered_map>
21 Grid(
const int& test_grid_in);
26 void init(std::ofstream& ofs,
const UnitCell& ucell,
const double radius_in,
const bool boundary =
true);
48 void getBox(
int& bx,
int& by,
int& bz,
const double& x,
const double& y,
const double& z)
50 bx = std::floor((x - x_min) / box_edge_length);
51 by = std::floor((y - y_min) / box_edge_length);
52 bz = std::floor((z - z_min) / box_edge_length);
Definition sltk_atom.h:12
void clear_atoms()
Definition sltk_grid.h:59
double x_max
Definition sltk_grid.h:37
double x_min
Definition sltk_grid.h:34
void Construct_Adjacent(const UnitCell &ucell)
Definition sltk_grid.cpp:268
std::vector< std::vector< std::vector< AtomMap > > > atoms_in_box
Definition sltk_grid.h:55
int getGlayerY() const
Definition sltk_grid.h:77
double y_max
Definition sltk_grid.h:38
int box_nx
Definition sltk_grid.h:44
void setMemberVariables(std::ofstream &ofs_in, const UnitCell &ucell)
Definition sltk_grid.cpp:147
int getGlayerX_minus() const
Definition sltk_grid.h:85
Grid()
Definition sltk_grid.h:20
double sradius2
Definition sltk_grid.h:30
int test_grid
Definition sltk_grid.h:98
double z_min
Definition sltk_grid.h:36
int glayerZ
Definition sltk_grid.h:111
bool pbc
Definition sltk_grid.h:29
void clear_adj_info()
Definition sltk_grid.h:67
std::vector< std::vector< std::vector< FAtom * > > > all_adj_info
Definition sltk_grid.h:58
void Check_Expand_Condition(const UnitCell &ucell)
Definition sltk_grid.cpp:37
int glayerX
Definition sltk_grid.h:107
double y_min
Definition sltk_grid.h:35
void Construct_Adjacent_final(const FAtom &fatom1, FAtom *fatom2)
Definition sltk_grid.cpp:314
int glayerX_minus
Definition sltk_grid.h:108
int box_ny
Definition sltk_grid.h:45
int getGlayerX() const
Definition sltk_grid.h:73
double box_edge_length
Definition sltk_grid.h:43
double z_max
Definition sltk_grid.h:39
int getGlayerY_minus() const
Definition sltk_grid.h:89
void init(std::ofstream &ofs, const UnitCell &ucell, const double radius_in, const bool boundary=true)
Definition sltk_grid.cpp:17
int getGlayerZ() const
Definition sltk_grid.h:81
double sradius
Definition sltk_grid.h:31
int glayerY_minus
Definition sltk_grid.h:110
Grid & operator=(Grid &&)=default
int glayerY
Definition sltk_grid.h:109
int box_nz
Definition sltk_grid.h:46
int getGlayerZ_minus() const
Definition sltk_grid.h:93
void Construct_Adjacent_near_box(const FAtom &fatom)
Definition sltk_grid.cpp:290
void getBox(int &bx, int &by, int &bz, const double &x, const double &y, const double &z)
Definition sltk_grid.h:48
int glayerZ_minus
Definition sltk_grid.h:112
std::vector< FAtom > AtomMap
Definition sltk_grid.h:13