16#include <RI/ri/RI_Tools.h>
25template <
typename T,
typename Tdata>
class RPA_LRI
30 static constexpr std::size_t
Ndim = 3;
31 using TC = std::array<Tcell, Ndim>;
32 using TAC = std::pair<TA, TC>;
33 using TatomR = std::array<double, Ndim>;
40 void init(
const MPI_Comm &mpi_comm_in,
const K_Vectors &kv_in,
const std::vector<double>& orb_cutoff);
43 const MPI_Comm& mpi_comm_in,
70 std::vector<std::vector<std::vector<Numerical_Orbital_Lm>>>
lcaos;
71 std::vector<std::vector<std::vector<Numerical_Orbital_Lm>>>
abfs;
75 std::map<TA, std::map<TAC, RI::Tensor<Tdata>>>
Vs_period;
76 std::map<TA, std::map<TAC, RI::Tensor<Tdata>>>
Cs_period;
Exx_LRI< double > exx_lri_rpa(GlobalC::exx_info.info_ri)
Definition parallel_orbitals.h:9
std::vector< double > orb_cutoff_
Definition RPA_LRI.h:68
const Exx_Info::Exx_Info_RI & info
Definition RPA_LRI.h:65
std::map< TA, std::map< TAC, RI::Tensor< Tdata > > > Cs_period
Definition RPA_LRI.h:76
void cal_postSCF_exx(const elecstate::DensityMatrix< T, Tdata > &dm, const MPI_Comm &mpi_comm_in, const UnitCell &ucell, const K_Vectors &kv, const LCAO_Orbitals &orb)
Definition RPA_LRI.hpp:76
static constexpr std::size_t Ndim
Definition RPA_LRI.h:30
MPI_Comm mpi_comm
Definition RPA_LRI.h:67
void out_coulomb_k(const UnitCell &ucell)
Definition RPA_LRI.hpp:350
void out_Cs(const UnitCell &ucell)
Definition RPA_LRI.hpp:312
void out_bands(const elecstate::ElecState *pelec)
Definition RPA_LRI.hpp:274
std::map< TA, std::map< TAC, RI::Tensor< Tdata > > > Vs_period
Definition RPA_LRI.h:75
int Tcell
Definition RPA_LRI.h:29
void out_struc(const UnitCell &ucell)
Definition RPA_LRI.hpp:225
int TA
Definition RPA_LRI.h:28
RPA_LRI(const Exx_Info::Exx_Info_RI &info_in)
Definition RPA_LRI.h:36
std::array< Tcell, Ndim > TC
Definition RPA_LRI.h:31
Tdata Erpa
Definition RPA_LRI.h:62
std::pair< TA, TC > TAC
Definition RPA_LRI.h:32
const K_Vectors * p_kv
Definition RPA_LRI.h:66
std::vector< std::vector< std::vector< Numerical_Orbital_Lm > > > abfs
Definition RPA_LRI.h:71
~RPA_LRI()
Definition RPA_LRI.h:39
void out_for_RPA(const UnitCell &ucell, const Parallel_Orbitals ¶v, const psi::Psi< T > &psi, const elecstate::ElecState *pelec)
Definition RPA_LRI.hpp:133
std::vector< std::vector< std::vector< Numerical_Orbital_Lm > > > lcaos
Definition RPA_LRI.h:70
void cal_rpa_cv(const UnitCell &ucell)
Definition RPA_LRI.hpp:33
void out_eigen_vector(const Parallel_Orbitals ¶v, const psi::Psi< T > &psi)
Definition RPA_LRI.hpp:159
std::array< double, Ndim > TatomR
Definition RPA_LRI.h:33
void init(const MPI_Comm &mpi_comm_in, const K_Vectors &kv_in, const std::vector< double > &orb_cutoff)
Definition RPA_LRI.hpp:18
Definition density_matrix.h:36
Definition elecstate.h:15
Exx_Info exx_info
Definition test_xc.cpp:29