DFT-EFE
 
Loading...
Searching...
No Matches
dftefe::utils::SmearChargeDensityFunction Class Reference

#include <SmearChargeDensityFunction.h>

Inheritance diagram for dftefe::utils::SmearChargeDensityFunction:
Collaboration diagram for dftefe::utils::SmearChargeDensityFunction:

Public Member Functions

 SmearChargeDensityFunction (const std::vector< utils::Point > &atomCoordinates, const std::vector< double > &atomCharges, const std::vector< double > &smearedChargeRadius)
 
 SmearChargeDensityFunction (const std::vector< utils::Point > &atomCoordinates, const std::vector< double > &atomCharges, const double &smearedChargeRadius)
 
 SmearChargeDensityFunction (const utils::Point &atomCoordinates, const double atomCharges, const double smearedChargeRadius)
 
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::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::utils::ScalarSpatialFunction< Q >
virtual void evalHost (size_type numPoints, const double *t, Q *q) const
 

Private Attributes

std::vector< utils::Pointd_atomCoordinates
 
std::vector< double > d_rc
 
std::vector< double > d_z
 
size_type d_numAtoms
 
size_type d_dim
 

Constructor & Destructor Documentation

◆ SmearChargeDensityFunction() [1/3]

dftefe::utils::SmearChargeDensityFunction::SmearChargeDensityFunction ( const std::vector< utils::Point > &  atomCoordinates,
const std::vector< double > &  atomCharges,
const std::vector< double > &  smearedChargeRadius 
)

◆ SmearChargeDensityFunction() [2/3]

dftefe::utils::SmearChargeDensityFunction::SmearChargeDensityFunction ( const std::vector< utils::Point > &  atomCoordinates,
const std::vector< double > &  atomCharges,
const double &  smearedChargeRadius 
)

◆ SmearChargeDensityFunction() [3/3]

dftefe::utils::SmearChargeDensityFunction::SmearChargeDensityFunction ( const utils::Point atomCoordinates,
const double  atomCharges,
const double  smearedChargeRadius 
)

Member Function Documentation

◆ evalHost()

void dftefe::utils::SmearChargeDensityFunction::evalHost ( size_type  numPoints,
const double *  t,
double *  q 
) const
overrideprotected

◆ operator()() [1/2]

std::vector< double > dftefe::utils::SmearChargeDensityFunction::operator() ( const std::vector< utils::Point > &  points) const
overridevirtual

◆ operator()() [2/2]

double dftefe::utils::SmearChargeDensityFunction::operator() ( const utils::Point point) const
overridevirtual

Implements dftefe::utils::ScalarSpatialFunction< Q >.

Here is the call graph for this function:

Member Data Documentation

◆ d_atomCoordinates

std::vector<utils::Point> dftefe::utils::SmearChargeDensityFunction::d_atomCoordinates
private

◆ d_dim

size_type dftefe::utils::SmearChargeDensityFunction::d_dim
private

◆ d_numAtoms

size_type dftefe::utils::SmearChargeDensityFunction::d_numAtoms
private

◆ d_rc

std::vector<double> dftefe::utils::SmearChargeDensityFunction::d_rc
private

◆ d_z

std::vector<double> dftefe::utils::SmearChargeDensityFunction::d_z
private

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