ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
ctrl_output_lcao.h
Go to the documentation of this file.
1#ifndef CTRL_OUTPUT_LCAO_H
2#define CTRL_OUTPUT_LCAO_H
3
4#include <complex>
5
6#include "source_cell/unitcell.h" // use UnitCell
7#include "source_cell/klist.h" // use K_Vectors
8#include "source_estate/elecstate_lcao.h" // use elecstate::ElecStateLCAO<TK>
9#include "source_psi/psi.h" // use Psi<TK>
10#include "source_lcao/hamilt_lcao.h" // use hamilt::HamiltLCAO<TK, TR>
11#include "source_basis/module_nao/two_center_bundle.h" // use TwoCenterBundle
12#include "source_lcao/module_gint/gint_k.h" // use Gint_k
13#include "source_basis/module_pw/pw_basis_k.h" // use ModulePW::PW_Basis_K and ModulePW::PW_Basis
14#include "source_pw/module_pwdft/structure_factor.h" // use Structure_Factor
15#include "source_lcao/module_rdmft/rdmft.h" // use RDMFT codes
16#ifdef __EXX
17#include "source_lcao/module_ri/Exx_LRI_interface.h" // use EXX codes
18#endif
19
20namespace ModuleIO
21{
22 // in principle, we need to add const for all of the variables, mohan note 2025-06-05
23 template <typename TK, typename TR>
24 void ctrl_output_lcao(UnitCell& ucell,
25 K_Vectors& kv,
28 Grid_Driver& gd,
31 TwoCenterBundle &two_center_bundle,
32 Gint_k &gk,
33 LCAO_Orbitals &orb,
34 const ModulePW::PW_Basis_K* pw_wfc, // for berryphase
35 const ModulePW::PW_Basis* pw_rho, // for berryphase
36 Grid_Technique &gt, // for berryphase
37 const ModulePW::PW_Basis_Big* pw_big, // for Wannier90
38 const Structure_Factor& sf, // for Wannier90
39 rdmft::RDMFT<TK, TR> &rdmft_solver, // for RDMFT
40#ifdef __MLALGO
42#endif
43#ifdef __EXX
45 Exx_LRI_Interface<TK, std::complex<double>>& exc,
46#endif
47 const int istep);
48}
49#endif
Definition Exx_LRI_interface.h:32
Definition gint_k.h:13
Definition sltk_grid_driver.h:43
Definition grid_technique.h:18
Definition klist.h:13
Definition LCAO_deepks.h:52
Definition ORB_read.h:19
Definition pw_basis_big.h:16
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 parallel_orbitals.h:9
Definition structure_factor.h:11
Definition two_center_bundle.h:11
Definition unitcell.h:16
Definition elecstate_lcao.h:15
Definition hamilt_lcao.h:33
Definition psi.h:37
Definition rdmft.h:43
This class has two functions: restart psi from the previous calculation, and write psi to the disk.
Definition cal_dos.h:9
void ctrl_output_lcao(UnitCell &ucell, K_Vectors &kv, elecstate::ElecStateLCAO< TK > *pelec, Parallel_Orbitals &pv, Grid_Driver &gd, psi::Psi< TK > *psi, hamilt::HamiltLCAO< TK, TR > *p_hamilt, TwoCenterBundle &two_center_bundle, Gint_k &gk, LCAO_Orbitals &orb, const ModulePW::PW_Basis_K *pw_wfc, const ModulePW::PW_Basis *pw_rho, Grid_Technique &gt, const ModulePW::PW_Basis_Big *pw_big, const Structure_Factor &sf, rdmft::RDMFT< TK, TR > &rdmft_solver, LCAO_Deepks< TK > &ld, const int istep)
Definition ctrl_output_lcao.cpp:37
Definition exx_lip.h:23
base device SOURCES math_dngvd_test cpp endif() if(ENABLE_GOOGLEBENCH) AddTest(TARGET PERF_MODULE_HSOLVER_KERNELS LIBS parameter $
Definition CMakeLists.txt:10