ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
write_mlkedf_descriptors.h
Go to the documentation of this file.
1#ifndef Write_MLKEDF_DESCRIPTORS_H
2#define Write_MLKEDF_DESCRIPTORS_H
3
4#ifdef __MLALGO
5
8
9namespace ModuleIO
10{
11
13{
14public:
18
20 if (this->cal_tool != nullptr) {
21 delete this->cal_tool;
22 this->cal_tool = nullptr;
23 }
24 }
25
27 const std::string& out_dir,
28 psi::Psi<std::complex<double>> *psi,
31 ModulePW::PW_Basis *pw_rho,
32 UnitCell& ucell,
33 const double *veff
34 );
36 const std::string& out_dir,
37 psi::Psi<std::complex<float>> *psi,
40 ModulePW::PW_Basis *pw_rho,
41 UnitCell& ucell,
42 const double *veff
43 ){} // a mock function
45 const std::string& out_dir,
46 const double * const *prho,
47 ModulePW::PW_Basis *pw_rho,
48 std::vector<std::vector<double>> &nablaRho
49 );
50
51 std::string file_name(
52 const std::string& out_dir,
53 std::string parameter,
54 const int kernel_type,
55 const double kernel_scaling
56 );
57
58 Cal_MLKEDF_Descriptors* cal_tool = nullptr; // pointer to the calculation tool
59};
60
61} // namespace ModuleIO
62#endif
63#endif
A class to calculate the descriptors for ML KEDF. Sun, Liang, and Mohan Chen. Physical Review B 109....
Definition cal_mlkedf_descriptors.h:19
Definition write_mlkedf_descriptors.h:13
std::string file_name(const std::string &out_dir, std::string parameter, const int kernel_type, const double kernel_scaling)
Definition write_mlkedf_descriptors.cpp:178
void generateTrainData_KS(const std::string &out_dir, psi::Psi< std::complex< float > > *psi, elecstate::ElecState *pelec, ModulePW::PW_Basis_K *pw_psi, ModulePW::PW_Basis *pw_rho, UnitCell &ucell, const double *veff)
Definition write_mlkedf_descriptors.h:35
~Write_MLKEDF_Descriptors()
Definition write_mlkedf_descriptors.h:19
Cal_MLKEDF_Descriptors * cal_tool
Definition write_mlkedf_descriptors.h:58
void generate_descriptor(const std::string &out_dir, const double *const *prho, ModulePW::PW_Basis *pw_rho, std::vector< std::vector< double > > &nablaRho)
Definition write_mlkedf_descriptors.cpp:70
void generateTrainData_KS(const std::string &out_dir, psi::Psi< std::complex< double > > *psi, elecstate::ElecState *pelec, ModulePW::PW_Basis_K *pw_psi, ModulePW::PW_Basis *pw_rho, UnitCell &ucell, const double *veff)
Definition write_mlkedf_descriptors.cpp:10
Write_MLKEDF_Descriptors()
Definition write_mlkedf_descriptors.h:15
Special pw_basis class. It includes different k-points.
Definition pw_basis_k.h:57
A class which can convert a function of "r" to the corresponding linear superposition of plane waves ...
Definition pw_basis.h:56
Definition unitcell.h:16
Definition elecstate.h:15
Definition psi.h:37
This class has two functions: restart psi from the previous calculation, and write psi to the disk.
Definition cal_dos.h:9
Definition exx_lip.h:23