1#ifndef MODULE_HAMILT_OPERATOR_KERNELS_ONSITE_H
2#define MODULE_HAMILT_OPERATOR_KERNELS_ONSITE_H
8template <
typename FPTYPE,
typename Device>
16 const std::complex<FPTYPE>* lambda_coeff,
17 std::complex<FPTYPE>* ps,
18 const std::complex<FPTYPE>* becp);
27 const int* vu_begin_iat,
29 const std::complex<FPTYPE>* vu,
30 std::complex<FPTYPE>* ps,
31 const std::complex<FPTYPE>* becp);
34#if __CUDA || __UT_USE_CUDA || __ROCM || __UT_USE_ROCM
36template <
typename FPTYPE>
39 const base_device::DEVICE_GPU* dev,
44 const std::complex<FPTYPE>* lambda_coeff,
45 std::complex<FPTYPE>* ps,
46 const std::complex<FPTYPE>* becp);
49 const base_device::DEVICE_GPU* dev,
55 const int* vu_begin_iat,
57 const std::complex<FPTYPE>* vu,
58 std::complex<FPTYPE>* ps,
59 const std::complex<FPTYPE>* becp);
void operator()(const Device *dev, const int &npm, const int npol, const int *ip_iat, const int &tnp, const std::complex< FPTYPE > *lambda_coeff, std::complex< FPTYPE > *ps, const std::complex< FPTYPE > *becp)