1#ifndef dftefeSmearChargePotentialFunction_h
2#define dftefeSmearChargePotentialFunction_h
19 const std::vector<utils::Point> &atomCoordinates,
20 const std::vector<double> & atomCharges,
21 const std::vector<double> & smearedChargeRadius);
24 const std::vector<utils::Point> &atomCoordinates,
25 const std::vector<double> & atomCharges,
26 const double & smearedChargeRadius);
29 const double atomCharges,
30 const double smearedChargeRadius);
35 operator()(
const std::vector<utils::Point> &points)
const override;
41#ifdef DFTEFE_WITH_DEVICE
45 double * q)
const override;
51 std::vector<double>
d_z;
55#ifdef DFTEFE_WITH_DEVICE
56 mutable std::unique_ptr<MemoryStorage<double, MemorySpace::DEVICE>>
57 d_atomCoordsFlatDevice;
58 mutable std::unique_ptr<MemoryStorage<double, MemorySpace::DEVICE>>
60 mutable std::unique_ptr<MemoryStorage<double, MemorySpace::DEVICE>>
Definition: PointImpl.h:13
Abstract base for scalar functions of a spatial point.
Definition: ScalarSpatialFunction.h:23
Definition: SmearChargePotentialFunction.h:16
void evalHost(size_type numPoints, const double *t, double *q) const override
Definition: SmearChargePotentialFunction.cpp:96
std::vector< double > d_rc
Definition: SmearChargePotentialFunction.h:50
std::vector< utils::Point > d_atomCoordinates
Definition: SmearChargePotentialFunction.h:49
size_type d_numAtoms
Definition: SmearChargePotentialFunction.h:52
std::vector< double > d_z
Definition: SmearChargePotentialFunction.h:51
double operator()(const utils::Point &point) const override
Definition: SmearChargePotentialFunction.cpp:39
size_type d_dim
Definition: SmearChargePotentialFunction.h:53
dealii includes
Definition: AtomFieldDataSpherical.cpp:31
std::uint64_t size_type
Definition: TypeConfig.h:9