26#ifndef dftefeAtomSevereFunction_h
27#define dftefeAtomSevereFunction_h
58 template <utils::MemorySpace memorySpace>
63 template <
typename FuncType>
65 std::shared_ptr<const AtomSphericalDataContainer>
66 atomSphericalDataContainer,
67 const std::vector<std::string> & atomSymbol,
68 const std::vector<utils::Point> & atomCoordinates,
69 const std::vector<double> & atomCharges,
70 double smearedChargeRadius,
72 double constant = 1.0,
79 operator()(
const std::vector<utils::Point> &points)
const override;
85#ifdef DFTEFE_WITH_DEVICE
89 double * q)
const override;
97 std::shared_ptr<utils::ScalarSpatialFunctionReal>
d_b;
98 std::shared_ptr<utils::ScalarSpatialFunctionReal>
d_vext;
99 std::shared_ptr<utils::ScalarSpatialFunctionReal>
d_rho;
Definition: AtomSevereFunction.h:61
std::shared_ptr< utils::ScalarSpatialFunctionReal > d_vext
Definition: AtomSevereFunction.h:98
AtomSuperpositionFuncType d_atomSupType
Definition: AtomSevereFunction.h:93
AtomSevereFuncType::Atomic d_atomicType
Definition: AtomSevereFunction.h:96
std::shared_ptr< utils::ScalarSpatialFunctionReal > d_rho
Definition: AtomSevereFunction.h:99
double operator()(const utils::Point &point) const override
Definition: AtomSevereFunction.t.cpp:172
std::shared_ptr< utils::ScalarSpatialFunctionReal > d_b
Definition: AtomSevereFunction.h:97
double d_constant
Definition: AtomSevereFunction.h:94
void evalHost(size_type numPoints, const double *t, double *q) const override
Definition: AtomSevereFunction.t.cpp:199
bool d_isComposite
Definition: AtomSevereFunction.h:95
Definition: AtomSuperpositionFunction.h:55
Definition: LinAlgOpContext.h:52
Definition: PointImpl.h:13
Abstract base for scalar functions of a spatial point.
Definition: ScalarSpatialFunction.h:23
AtomSuperpositionFuncType
Definition: AtomSuperpositionFunction.h:46
dealii includes
Definition: AtomFieldDataSpherical.cpp:31
std::uint64_t size_type
Definition: TypeConfig.h:9
Definition: AtomSevereFunction.h:37
Atomic
Definition: AtomSevereFunction.h:44
PSP
Definition: AtomSevereFunction.h:39