ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
grid_bigcell.h
Go to the documentation of this file.
1#ifndef GRID_BIGCELL_H
2#define GRID_BIGCELL_H
3
7#include "grid_meshcell.h"
8
10{
11 public:
14 // number atoms and type.
15 int nat=0;
16 // save the relative cartesian position
17 // to bigcell of each atom.
18 std::vector<std::vector<double>> tau_in_bigcell;
19
22
23 protected:
24 // get the max radius of all orbitals
25 // which will use to generate grid expansion,
26 // and the meshball.
28
29 // the added number of bigcelli each direction.
30 int dxe;
31 int dye;
32 int dze;
33
34 // expansion grid dimension.
35 int nxe;
36 int nye;
37 int nze;
38 int nxyze;
39
40 std::vector<int> index_atom;
41
42 // save the position of base vector of bigcell.
43 std::vector<double> bigcell_vec1;
44 std::vector<double> bigcell_vec2;
45 std::vector<double> bigcell_vec3;
46
49
50 //---------------------------------
51 void grid_expansion_index(bool f2normal, int *target)const;
52 //---------------------------------
53 void init_big_latvec(const UnitCell &ucell);
54 //---------------------------------
55 void init_tau_in_bigcell(const UnitCell& ucell);
56 //---------------------------------
57 void init_grid_expansion(const UnitCell& ucell,double* rcut);
58};
59#endif
Definition grid_bigcell.h:10
double orbital_rmax
Definition grid_bigcell.h:27
int nat
Definition grid_bigcell.h:15
std::vector< std::vector< double > > tau_in_bigcell
Definition grid_bigcell.h:18
std::vector< double > bigcell_vec2
Definition grid_bigcell.h:44
ModuleBase::Matrix3 bigcell_GT
Definition grid_bigcell.h:48
ModuleBase::Matrix3 bigcell_latvec0
Definition grid_bigcell.h:47
void init_big_latvec(const UnitCell &ucell)
Definition grid_bigcell.cpp:26
void grid_expansion_index(bool f2normal, int *target) const
Definition grid_bigcell.cpp:275
int dye
Definition grid_bigcell.h:31
Grid_BigCell & operator=(Grid_BigCell &&rhs)=default
move operator for the next ESolver to directly use its infomation
int nxe
Definition grid_bigcell.h:35
std::vector< double > bigcell_vec1
Definition grid_bigcell.h:43
int nye
Definition grid_bigcell.h:36
~Grid_BigCell()
Definition grid_bigcell.cpp:22
std::vector< double > bigcell_vec3
Definition grid_bigcell.h:45
int nze
Definition grid_bigcell.h:37
int dxe
Definition grid_bigcell.h:30
Grid_BigCell()
Definition grid_bigcell.cpp:9
int dze
Definition grid_bigcell.h:32
void init_tau_in_bigcell(const UnitCell &ucell)
Definition grid_bigcell.cpp:153
std::vector< int > index_atom
Definition grid_bigcell.h:40
int nxyze
Definition grid_bigcell.h:38
void init_grid_expansion(const UnitCell &ucell, double *rcut)
Definition grid_bigcell.cpp:98
Definition grid_meshcell.h:9
3x3 matrix and related mathamatical operations
Definition matrix3.h:19
Definition unitcell.h:16