DFT-EFE
 
Loading...
Searching...
No Matches
dftefe::atoms::AtomSevereFunction< memorySpace > Class Template Reference

#include <AtomSevereFunction.h>

Inheritance diagram for dftefe::atoms::AtomSevereFunction< memorySpace >:
Collaboration diagram for dftefe::atoms::AtomSevereFunction< memorySpace >:

Public Member Functions

template<typename FuncType >
 AtomSevereFunction (std::shared_ptr< const AtomSphericalDataContainer > atomSphericalDataContainer, const std::vector< std::string > &atomSymbol, const std::vector< utils::Point > &atomCoordinates, const std::vector< double > &atomCharges, double smearedChargeRadius, FuncType type, double constant=1.0, linearAlgebra::LinAlgOpContext< memorySpace > *linAlgOpContext=nullptr)
 
double operator() (const utils::Point &point) const override
 
std::vector< double > operator() (const std::vector< utils::Point > &points) const override
 
- Public Member Functions inherited from dftefe::atoms::AtomSuperpositionFunction< memorySpace >
 AtomSuperpositionFunction (std::shared_ptr< const AtomSphericalDataContainer > atomSphericalDataContainer, const std::vector< std::string > &atomSymbol, const std::vector< utils::Point > &atomCoordinates, const std::string fieldName, linearAlgebra::LinAlgOpContext< memorySpace > *linAlgOpContext=nullptr)
 
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
 
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
 
- Public Member Functions inherited from dftefe::utils::ScalarSpatialFunction< Q >
virtual ~ScalarSpatialFunction ()=default
 
virtual Q operator() (const utils::Point &point) const =0
 
virtual std::vector< Q > operator() (const std::vector< utils::Point > &points) const =0
 
template<MemorySpace memorySpace>
void eval (const size_type numPoints, const double *t, Q *q) const
 

Protected Member Functions

void evalHost (size_type numPoints, const double *t, double *q) const override
 
- Protected Member Functions inherited from dftefe::atoms::AtomSuperpositionFunction< memorySpace >
void evalHost (size_type numPoints, const AtomSuperpositionFuncType atomSupType, const double constant, const double *t, double *q, const std::vector< double > &atomWeights={}) const
 
- Protected Member Functions inherited from dftefe::utils::ScalarSpatialFunction< Q >
virtual void evalHost (size_type numPoints, const double *t, Q *q) const
 

Private Attributes

AtomSuperpositionFuncType d_atomSupType
 
double d_constant
 
bool d_isComposite
 
AtomSevereFuncType::Atomic d_atomicType
 
std::shared_ptr< utils::ScalarSpatialFunctionReal > d_b
 
std::shared_ptr< utils::ScalarSpatialFunctionReal > d_vext
 
std::shared_ptr< utils::ScalarSpatialFunctionReal > d_rho
 

Additional Inherited Members

- Protected Attributes inherited from dftefe::atoms::AtomSuperpositionFunction< memorySpace >
const std::shared_ptr< const AtomSphericalDataContainer > d_atomSphericalDataContainer
 
const std::vector< std::string > d_atomSymbolVec
 
std::vector< utils::Point > d_atomCoordinatesVec
 
const std::string d_fieldName
 
size_type d_numAtoms
 
size_type d_dim
 
std::vector< std::shared_ptr< SphericalData > > d_sphericalDataVecAll
 
std::vector< size_type > d_enrichmentToAtomId
 
size_type d_numEnrichmentFuncTotal
 
linearAlgebra::LinAlgOpContext< memorySpace > * d_linAlgOpContext
 
utils::MemoryStorage< double, memorySpace > d_originsFlat
 

Constructor & Destructor Documentation

◆ AtomSevereFunction()

template<utils::MemorySpace memorySpace>
template<typename FuncType >
dftefe::atoms::AtomSevereFunction< memorySpace >::AtomSevereFunction ( std::shared_ptr< const AtomSphericalDataContainer >  atomSphericalDataContainer,
const std::vector< std::string > &  atomSymbol,
const std::vector< utils::Point > &  atomCoordinates,
const std::vector< double > &  atomCharges,
double  smearedChargeRadius,
FuncType  type,
double  constant = 1.0,
linearAlgebra::LinAlgOpContext< memorySpace > *  linAlgOpContext = nullptr 
)
Here is the call graph for this function:

Member Function Documentation

◆ evalHost()

template<utils::MemorySpace memorySpace>
void dftefe::atoms::AtomSevereFunction< memorySpace >::evalHost ( size_type  numPoints,
const double *  t,
double *  q 
) const
overrideprotected
Here is the call graph for this function:

◆ operator()() [1/2]

template<utils::MemorySpace memorySpace>
std::vector< double > dftefe::atoms::AtomSevereFunction< memorySpace >::operator() ( const std::vector< utils::Point > &  points) const
override

◆ operator()() [2/2]

template<utils::MemorySpace memorySpace>
double dftefe::atoms::AtomSevereFunction< memorySpace >::operator() ( const utils::Point &  point) const
overridevirtual

Member Data Documentation

◆ d_atomicType

template<utils::MemorySpace memorySpace>
AtomSevereFuncType::Atomic dftefe::atoms::AtomSevereFunction< memorySpace >::d_atomicType
private

◆ d_atomSupType

template<utils::MemorySpace memorySpace>
AtomSuperpositionFuncType dftefe::atoms::AtomSevereFunction< memorySpace >::d_atomSupType
private

◆ d_b

template<utils::MemorySpace memorySpace>
std::shared_ptr<utils::ScalarSpatialFunctionReal> dftefe::atoms::AtomSevereFunction< memorySpace >::d_b
private

◆ d_constant

template<utils::MemorySpace memorySpace>
double dftefe::atoms::AtomSevereFunction< memorySpace >::d_constant
private

◆ d_isComposite

template<utils::MemorySpace memorySpace>
bool dftefe::atoms::AtomSevereFunction< memorySpace >::d_isComposite
private

◆ d_rho

template<utils::MemorySpace memorySpace>
std::shared_ptr<utils::ScalarSpatialFunctionReal> dftefe::atoms::AtomSevereFunction< memorySpace >::d_rho
private

◆ d_vext

template<utils::MemorySpace memorySpace>
std::shared_ptr<utils::ScalarSpatialFunctionReal> dftefe::atoms::AtomSevereFunction< memorySpace >::d_vext
private

The documentation for this class was generated from the following files: