ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
write_HS_R.h
Go to the documentation of this file.
1#ifndef WRITE_HS_R_H
2#define WRITE_HS_R_H
3
6#include "source_cell/klist.h"
10#include "source_lcao/module_dftu/dftu.h" // mohan add 20251107
11
12namespace ModuleIO
13{
14using TAC = std::pair<int, std::array<int, 3>>;
15template <typename TK>
16void output_HSR(const UnitCell& ucell,
17 const int& istep,
18 const Parallel_Orbitals& pv,
19 LCAO_HS_Arrays& HS_Arrays,
20 const Grid_Driver& grid, // mohan add 2024-04-06
21 const K_Vectors& kv,
22 Plus_U &dftu, // mohan add 20251107
23 hamilt::Hamilt<TK>* p_ham,
24#ifdef __EXX
25 const std::vector<std::map<int, std::map<TAC, RI::Tensor<double>>>>* Hexxd = nullptr,
26 const std::vector<std::map<int, std::map<TAC, RI::Tensor<std::complex<double>>>>>* Hexxc = nullptr,
27#endif
28 const std::string& SR_filename = "srs1_nao.csr",
29 const std::string& HR_filename_up = "hrs1_nao.csr",
30 const std::string HR_filename_down = "hrs2_nao.csr",
31 const bool& binary = false,
32 const double& sparse_threshold = 1e-10); // LiuXh add 2019-07-15, modify in 2021-12-3
33
34void output_dHR(const int& istep,
35 const ModuleBase::matrix& v_eff,
36 const UnitCell& ucell,
37 const Parallel_Orbitals& pv,
38 LCAO_HS_Arrays& HS_Arrays,
39 const Grid_Driver& grid, // mohan add 2024-04-06
40 const TwoCenterBundle& two_center_bundle,
41 const LCAO_Orbitals& orb,
42 const K_Vectors& kv,
43 const bool& binary = false,
44 const double& sparse_threshold = 1e-10);
45
46void output_dSR(const int& istep,
47 const UnitCell& ucell,
48 const Parallel_Orbitals& pv,
49 LCAO_HS_Arrays& HS_Arrays,
50 const Grid_Driver& grid, // mohan add 2024-04-06
51 const TwoCenterBundle& two_center_bundle,
52 const LCAO_Orbitals& orb,
53 const K_Vectors& kv,
54 const bool& binary = false,
55 const double& sparse_thr = 1e-10);
56
57void output_TR(const int istep,
58 const UnitCell& ucell,
59 const Parallel_Orbitals& pv,
60 LCAO_HS_Arrays& HS_Arrays,
61 const Grid_Driver& grid,
62 const TwoCenterBundle& two_center_bundle,
63 const LCAO_Orbitals& orb,
64 const std::string& TR_filename = "trs1_nao.csr",
65 const bool& binary = false,
66 const double& sparse_threshold = 1e-10);
67
68template <typename TK>
70 const Grid_Driver& grid,
71 hamilt::Hamilt<TK>* p_ham,
72 const std::string& SR_filename = "srs1_nao.csr",
73 const bool& binary = false,
74 const double& sparse_threshold = 1e-10);
75} // namespace ModuleIO
76
77#endif
Definition sltk_grid_driver.h:43
Definition klist.h:13
Definition LCAO_HS_arrays.hpp:9
Definition ORB_read.h:19
Definition matrix.h:19
Definition parallel_orbitals.h:9
Definition dftu.h:20
Definition two_center_bundle.h:11
Definition unitcell.h:17
Definition hamilt.h:16
Definition cal_dos.h:9
void output_TR(const int istep, const UnitCell &ucell, const Parallel_Orbitals &pv, LCAO_HS_Arrays &HS_Arrays, const Grid_Driver &grid, const TwoCenterBundle &two_center_bundle, const LCAO_Orbitals &orb, const std::string &TR_filename="trs1_nao.csr", const bool &binary=false, const double &sparse_threshold=1e-10)
Definition write_HS_R.cpp:254
void output_dHR(const int &istep, const ModuleBase::matrix &v_eff, const UnitCell &ucell, const Parallel_Orbitals &pv, LCAO_HS_Arrays &HS_Arrays, const Grid_Driver &grid, const TwoCenterBundle &two_center_bundle, const LCAO_Orbitals &orb, const K_Vectors &kv, const bool &binary=false, const double &sparse_threshold=1e-10)
Definition write_HS_R.cpp:147
void output_dSR(const int &istep, const UnitCell &ucell, const Parallel_Orbitals &pv, LCAO_HS_Arrays &HS_Arrays, const Grid_Driver &grid, const TwoCenterBundle &two_center_bundle, const LCAO_Orbitals &orb, const K_Vectors &kv, const bool &binary=false, const double &sparse_thr=1e-10)
Definition write_HS_R.cpp:122
void output_SR(Parallel_Orbitals &pv, const Grid_Driver &grid, hamilt::Hamilt< TK > *p_ham, const std::string &SR_filename="srs1_nao.csr", const bool &binary=false, const double &sparse_threshold=1e-10)
Definition write_HS_R.cpp:194
void output_HSR(const UnitCell &ucell, const int &istep, const Parallel_Orbitals &pv, LCAO_HS_Arrays &HS_Arrays, const Grid_Driver &grid, const K_Vectors &kv, Plus_U &dftu, hamilt::Hamilt< TK > *p_ham, const std::string &SR_filename="srs1_nao.csr", const std::string &HR_filename_up="hrs1_nao.csr", const std::string HR_filename_down="hrs2_nao.csr", const bool &binary=false, const double &sparse_threshold=1e-10)
Definition write_HS_R.cpp:16
std::pair< int, TC > TAC
Definition ri_cv_io_test.cpp:10
base device SOURCES math_hegvd_test cpp endif() if(ENABLE_GOOGLEBENCH) AddTest(TARGET PERF_MODULE_HSOLVER_KERNELS LIBS parameter $
Definition CMakeLists.txt:10
Plus_U dftu
Definition test_dftu.cpp:14