ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
setup_deepks.h
Go to the documentation of this file.
1#ifndef SETUP_DEEPKS_H
2#define SETUP_DEEPKS_H
3
4#include "source_cell/unitcell.h" // use unitcell
6#include "source_basis/module_ao/parallel_orbitals.h" // parallel orbitals
8#include "source_basis/module_nao/two_center_integrator.h" // overlap_orb_alpha
10#include "source_cell/klist.h" // k-points
11#include "source_cell/unitcell.h" // use unitcell
12#include "source_basis/module_ao/ORB_read.h" // LCAO_Orbitals
13#include "source_estate/fp_energy.h" // fp energy
14
15
16#ifdef __MLALGO
18#endif
19
20
21template <typename TK>
23{
24 public:
25
28
29#ifdef __MLALGO
31#endif
32
33 std::string dpks_out_type;
34
35 void before_runner(
36 const UnitCell &ucell, // unitcell
37 const int nks, // k points
38 const LCAO_Orbitals &orb, // orbital info
39 Parallel_Orbitals &pv, // parallel orbitals
40 const Input_para &inp);
41
42 void build_overlap(
43 const UnitCell &ucell,
44 const LCAO_Orbitals &orb,
45 const Parallel_Orbitals &pv,
46 const Grid_Driver &gd,
47 TwoCenterIntegrator &overlap_orb_alpha,
48 const Input_para &inp);
49
50 void delta_e(
51 const UnitCell& ucell,
52 const K_Vectors &kv,
53 const LCAO_Orbitals& orb,
54 const Parallel_Orbitals &pv, // parallel orbitals
55 const Grid_Driver &gd,
56 const std::vector<std::vector<TK>>& dm_vec,
58 const Input_para &inp);
59
60 void write_forces(
61 const ModuleBase::matrix &fcs,
62 const ModuleBase::matrix &fvnl_dalpha,
63 const Input_para &inp);
64
65 void write_stress(
66 const ModuleBase::matrix &scs,
67 const ModuleBase::matrix &svnl_dalpha,
68 const double &omega,
69 const Input_para &inp);
70
71};
72
73
74#endif
Definition sltk_grid_driver.h:43
Definition klist.h:13
Definition LCAO_deepks.h:51
Definition ORB_read.h:19
Definition matrix.h:19
Definition parallel_orbitals.h:9
Definition setup_deepks.h:23
void before_runner(const UnitCell &ucell, const int nks, const LCAO_Orbitals &orb, Parallel_Orbitals &pv, const Input_para &inp)
Definition setup_deepks.cpp:44
std::string dpks_out_type
Definition setup_deepks.h:33
void build_overlap(const UnitCell &ucell, const LCAO_Orbitals &orb, const Parallel_Orbitals &pv, const Grid_Driver &gd, TwoCenterIntegrator &overlap_orb_alpha, const Input_para &inp)
Definition setup_deepks.cpp:13
Setup_DeePKS()
Definition setup_deepks.cpp:6
LCAO_Deepks< TK > ld
Definition setup_deepks.h:30
void write_stress(const ModuleBase::matrix &scs, const ModuleBase::matrix &svnl_dalpha, const double &omega, const Input_para &inp)
Definition setup_deepks.cpp:136
void delta_e(const UnitCell &ucell, const K_Vectors &kv, const LCAO_Orbitals &orb, const Parallel_Orbitals &pv, const Grid_Driver &gd, const std::vector< std::vector< TK > > &dm_vec, elecstate::fenergy &f_en, const Input_para &inp)
Definition setup_deepks.cpp:65
void write_forces(const ModuleBase::matrix &fcs, const ModuleBase::matrix &fvnl_dalpha, const Input_para &inp)
Definition setup_deepks.cpp:89
~Setup_DeePKS()
Definition setup_deepks.cpp:9
A class to compute two-center integrals.
Definition two_center_integrator.h:35
Definition unitcell.h:17
This file contains all energies about first-principle calculations.
Definition input_parameter.h:13
Definition fp_energy.h:17