10#include <unordered_map>
20 Grid(
const int& test_grid_in);
25 void init(std::ofstream& ofs,
const UnitCell& ucell,
const double radius_in,
const bool boundary =
true);
47 void getBox(
int& bx,
int& by,
int& bz,
const double& x,
const double& y,
const double& z)
49 bx = std::floor((x - x_min) / box_edge_length);
50 by = std::floor((y - y_min) / box_edge_length);
51 bz = std::floor((z - z_min) / box_edge_length);
Definition sltk_atom.h:10
void clear_atoms()
Definition sltk_grid.h:58
double x_max
Definition sltk_grid.h:36
double x_min
Definition sltk_grid.h:33
void Construct_Adjacent(const UnitCell &ucell)
Definition sltk_grid.cpp:267
std::vector< std::vector< std::vector< AtomMap > > > atoms_in_box
Definition sltk_grid.h:54
int getGlayerY() const
Definition sltk_grid.h:76
double y_max
Definition sltk_grid.h:37
int box_nx
Definition sltk_grid.h:43
void setMemberVariables(std::ofstream &ofs_in, const UnitCell &ucell)
Definition sltk_grid.cpp:146
int getGlayerX_minus() const
Definition sltk_grid.h:84
Grid()
Definition sltk_grid.h:19
double sradius2
Definition sltk_grid.h:29
int test_grid
Definition sltk_grid.h:97
double z_min
Definition sltk_grid.h:35
int glayerZ
Definition sltk_grid.h:110
bool pbc
Definition sltk_grid.h:28
void clear_adj_info()
Definition sltk_grid.h:66
std::vector< std::vector< std::vector< FAtom * > > > all_adj_info
Definition sltk_grid.h:57
void Check_Expand_Condition(const UnitCell &ucell)
Definition sltk_grid.cpp:36
int glayerX
Definition sltk_grid.h:106
double y_min
Definition sltk_grid.h:34
void Construct_Adjacent_final(const FAtom &fatom1, FAtom *fatom2)
Definition sltk_grid.cpp:313
int glayerX_minus
Definition sltk_grid.h:107
int box_ny
Definition sltk_grid.h:44
int getGlayerX() const
Definition sltk_grid.h:72
double box_edge_length
Definition sltk_grid.h:42
double z_max
Definition sltk_grid.h:38
int getGlayerY_minus() const
Definition sltk_grid.h:88
void init(std::ofstream &ofs, const UnitCell &ucell, const double radius_in, const bool boundary=true)
Definition sltk_grid.cpp:16
int getGlayerZ() const
Definition sltk_grid.h:80
double sradius
Definition sltk_grid.h:30
int glayerY_minus
Definition sltk_grid.h:109
Grid & operator=(Grid &&)=default
int glayerY
Definition sltk_grid.h:108
int box_nz
Definition sltk_grid.h:45
int getGlayerZ_minus() const
Definition sltk_grid.h:92
void Construct_Adjacent_near_box(const FAtom &fatom)
Definition sltk_grid.cpp:289
void getBox(int &bx, int &by, int &bz, const double &x, const double &y, const double &z)
Definition sltk_grid.h:47
int glayerZ_minus
Definition sltk_grid.h:111
std::vector< FAtom > AtomMap
Definition sltk_grid.h:12