26#ifndef dftefeAtomSuperpositionFunction_h
27#define dftefeAtomSuperpositionFunction_h
53 template <utils::MemorySpace memorySpace>
58 std::shared_ptr<const AtomSphericalDataContainer>
59 atomSphericalDataContainer,
60 const std::vector<std::string> & atomSymbol,
61 const std::vector<utils::Point> & atomCoordinates,
62 const std::string fieldName,
70 const double constant = 1.0,
71 const std::vector<double> & atomWeights = {})
const
73#ifdef DFTEFE_WITH_DEVICE
75 evalDevice(numPoints, atomSupType, constant, t, q, atomWeights);
78 evalHost(numPoints, atomSupType, constant, t, q, atomWeights);
86 const double constant = 1.0,
87 const std::vector<double> & atomWeights = {})
const
89 evalHost(numPoints, atomSupType, constant, t, q, atomWeights);
96 const double constant,
99 const std::vector<double> & atomWeights = {})
const;
101#ifdef DFTEFE_WITH_DEVICE
105 const double constant,
108 const std::vector<double> & atomWeights = {})
const;
112 const std::shared_ptr<const AtomSphericalDataContainer>
Definition: AtomSuperpositionFunction.h:55
const std::shared_ptr< const AtomSphericalDataContainer > d_atomSphericalDataContainer
Definition: AtomSuperpositionFunction.h:113
size_type d_numEnrichmentFuncTotal
Definition: AtomSuperpositionFunction.h:122
void evalHost(size_type numPoints, const AtomSuperpositionFuncType atomSupType, const double constant, const double *t, double *q, const std::vector< double > &atomWeights={}) const
Definition: AtomSuperpositionFunction.t.cpp:69
utils::MemoryStorage< double, memorySpace > d_originsFlat
Definition: AtomSuperpositionFunction.h:125
size_type d_numAtoms
Definition: AtomSuperpositionFunction.h:117
const std::vector< std::string > d_atomSymbolVec
Definition: AtomSuperpositionFunction.h:114
std::vector< size_type > d_enrichmentToAtomId
Definition: AtomSuperpositionFunction.h:121
void evaluateHost(const size_type numPoints, const AtomSuperpositionFuncType atomSupType, const double *t, double *q, const double constant=1.0, const std::vector< double > &atomWeights={}) const
Definition: AtomSuperpositionFunction.h:82
void evaluate(const size_type numPoints, const AtomSuperpositionFuncType atomSupType, const double *t, double *q, const double constant=1.0, const std::vector< double > &atomWeights={}) const
Definition: AtomSuperpositionFunction.h:66
const std::string d_fieldName
Definition: AtomSuperpositionFunction.h:116
size_type d_dim
Definition: AtomSuperpositionFunction.h:118
linearAlgebra::LinAlgOpContext< memorySpace > * d_linAlgOpContext
Definition: AtomSuperpositionFunction.h:124
std::vector< std::shared_ptr< SphericalData > > d_sphericalDataVecAll
Definition: AtomSuperpositionFunction.h:120
std::vector< utils::Point > d_atomCoordinatesVec
Definition: AtomSuperpositionFunction.h:115
Definition: LinAlgOpContext.h:52
Definition: MemoryStorage.h:38
AtomSuperpositionFuncType
Definition: AtomSuperpositionFunction.h:46
dealii includes
Definition: AtomFieldDataSpherical.cpp:31
std::uint64_t size_type
Definition: TypeConfig.h:9