1#ifndef MODULEHAMILTPW_ONSITE_PROJ_PW_H
2#define MODULEHAMILTPW_ONSITE_PROJ_PW_H
11#ifndef ONSITETEMPLATE_H
12#define ONSITETEMPLATE_H
20template<
typename T,
typename Device>
28 const bool cal_delta_spin,
31 template<
typename T_in,
typename Device_in = Device>
36 virtual void init(
const int ik_in)
override;
38 virtual void act(
const int nbands,
44 const bool is_first_node =
false)
const override;
46 const int *
get_isk()
const {
return this->isk;}
51 void cal_ps_dftu(
const int npol,
const int m)
const;
52 void update_becp(
const T* psi_in,
const int npol,
const int m)
const;
55 const int* isk =
nullptr;
59 mutable int* ip_iat =
nullptr;
60 mutable T* lambda_coeff =
nullptr;
61 mutable int* orb_l_iat =
nullptr;
62 mutable int* ip_m =
nullptr;
63 mutable int* vu_begin_iat =
nullptr;
64 mutable T* vu_device =
nullptr;
66 mutable int nkb_m = 0;
68 bool has_delta_spin =
false;
69 bool has_dftu =
false;
71 mutable bool init_dftu =
false;
72 mutable bool init_delta_spin =
false;
74 mutable T *ps =
nullptr;
77 base_device::DEVICE_CPU* cpu_ctx = {};
const int * get_isk() const
Definition onsite_proj_pw.h:46
typename GetTypeReal< T >::type Real
Definition onsite_proj_pw.h:24
const UnitCell * get_ucell() const
Definition onsite_proj_pw.h:47
Definition onsite_proj_pw.h:14
void add_onsite_proj(std::complex< float > *hpsi_in, const int npol, const int m) const
Definition onsite_proj_pw.cpp:357
void cal_ps_delta_spin(const int npol, const int m) const
Definition onsite_proj_pw.cpp:363
void update_becp(const std::complex< float > *psi_in, const int npol, const int m) const
Definition onsite_proj_pw.cpp:360
void cal_ps_dftu(const int npol, const int m) const
Definition onsite_proj_pw.cpp:366
Definition operator_pw.h:8
#define T
Definition exp.cpp:237
T type
Definition macros.h:8
Definition math_kernel_op.h:217
Definition math_kernel_op.h:192
Definition memory_op.h:77
Definition memory_op.h:17
Definition memory_op.h:31
Definition memory_op.h:45
const std::map< std::string, std::vector< double > > zero
Definition vdwd3_autoset_xcparam.cpp:323