ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
spar_st.h
Go to the documentation of this file.
1#ifndef SPARSE_FORMAT_ST_H
2#define SPARSE_FORMAT_ST_H
3
6
7namespace sparse_format
8{
10template <typename TK>
11void cal_SR(const Parallel_Orbitals& pv,
12 std::set<Abfs::Vector3_Order<int>>& all_R_coor,
13 std::map<Abfs::Vector3_Order<int>, std::map<size_t, std::map<size_t, double>>>& SR_sparse,
14 std::map<Abfs::Vector3_Order<int>, std::map<size_t, std::map<size_t, std::complex<double>>>>& SR_soc_sparse,
15 const Grid_Driver& grid,
16 const double& sparse_thr,
17 hamilt::Hamilt<TK>* p_ham);
18
20void cal_TR(const UnitCell& ucell,
21 const Parallel_Orbitals& pv,
22 LCAO_HS_Arrays& HS_arrays,
23 const Grid_Driver& grid,
24 const TwoCenterBundle& two_center_bundle,
25 const LCAO_Orbitals& orb,
26 const double& sparse_thr);
27
29void cal_STN_R_for_T(const UnitCell& ucell,
30 const Parallel_Orbitals& pv,
31 LCAO_HS_Arrays& HS_arrays,
32 const Grid_Driver& grid,
33 const std::vector<double>& orb_cutoff,
34 const double& sparse_thr);
35
36void destroy_T_R_sparse(LCAO_HS_Arrays& HS_Arrays);
37} // namespace sparse_format
38
39#endif
Definition abfs-vector3_order.h:16
Definition sltk_grid_driver.h:43
Definition LCAO_HS_arrays.hpp:9
Definition ORB_read.h:19
Definition parallel_orbitals.h:9
Definition two_center_bundle.h:11
Definition unitcell.h:17
Definition hamilt.h:16
Definition spar_dh.h:13
void cal_SR(const Parallel_Orbitals &pv, std::set< Abfs::Vector3_Order< int > > &all_R_coor, std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, double > > > &SR_sparse, std::map< Abfs::Vector3_Order< int >, std::map< size_t, std::map< size_t, std::complex< double > > > > &SR_soc_sparse, const Grid_Driver &grid, const double &sparse_thr, hamilt::Hamilt< TK > *p_ham)
calculate overlap matrix with lattice vector R
Definition spar_st.cpp:13
void cal_TR(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 double &sparse_thr)
calculate kinetic matrix with lattice vector R
Definition spar_st.cpp:47
void cal_STN_R_for_T(const UnitCell &ucell, const Parallel_Orbitals &pv, LCAO_HS_Arrays &HS_arrays, const Grid_Driver &grid, const std::vector< double > &orb_cutoff, const double &sparse_thr)
cal_STN_R_for_T is only called by cal_TR
Definition spar_st.cpp:84
void destroy_T_R_sparse(LCAO_HS_Arrays &HS_Arrays)
Definition spar_st.cpp:200