ABACUS
develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
source
source_pw
module_pwdft
kernels
mul_potential_op.h
Go to the documentation of this file.
1
#ifndef MUL_POTENTIAL_OP_H
2
#define MUL_POTENTIAL_OP_H
3
#include "
source_psi/psi.h
"
4
#include "
source_base/macros.h
"
5
6
namespace
hamilt
{
7
8
template
<
typename
T,
typename
Device>
9
struct
mul_potential_op
10
{
11
// int npw = rhopw_dev->npw;
12
// int nks = wfcpw->nks;
13
// int nk_fac = PARAM.inp.nspin == 2 ? 2 : 1;
14
// int nk = nks / nk_fac;
15
//
16
// #ifdef _OPENMP
17
// #pragma omp parallel for schedule(static)
18
// #endif
19
// for (int ig = 0; ig < npw; ig++)
20
// {
21
// int ig_kq = ik * nks * npw + iq * npw + ig;
22
// density_recip[ig] *= pot[ig_kq];
23
// }
24
using
FPTYPE
=
typename
GetTypeReal<T>::type
;
25
void
operator()
(
const
FPTYPE
*pot,
T
*density_recip,
int
npw,
int
nks,
int
ik,
int
iq);
26
};
27
28
}
// namespace hamilt
29
30
#endif
// MUL_POTENTIAL_OP_H
T
#define T
Definition
exp.cpp:237
macros.h
hamilt
Definition
hamilt.h:12
psi.h
GetTypeReal::type
T type
Definition
macros.h:8
hamilt::mul_potential_op
Definition
mul_potential_op.h:10
hamilt::mul_potential_op::operator()
void operator()(const FPTYPE *pot, T *density_recip, int npw, int nks, int ik, int iq)
hamilt::mul_potential_op::FPTYPE
typename GetTypeReal< T >::type FPTYPE
Definition
mul_potential_op.h:24
Generated by
1.9.8