DFT-EFE
 
Loading...
Searching...
No Matches
dftefe::atoms::AtomTCIASpline Class Reference

#include <AtomTCIASpline.h>

Collaboration diagram for dftefe::atoms::AtomTCIASpline:

Public Member Functions

 AtomTCIASpline (const std::string &fieldName, const TCIADataParams &params, const std::vector< std::string > atomSymbols, const std::vector< std::string > tciTypes={"S"}, const size_type maxPairs=1000)
 
 ~AtomTCIASpline ()=default
 Destructor. More...
 
utils::SplinegetSpline (const std::string &atomCombination, const std::string tciType)
 
double maxRadialGrid ()
 
double smearedChargeRadius ()
 
double smearedChargeRadiusZZCorr ()
 
std::string getVLocInfo (std::string atomSymbol, std::string paramName)
 

Private Member Functions

bool loadAtomCombination (const std::string &atomCombination, std::vector< std::vector< double > > &values)
 
void evictIfNeeded ()
 
void touch (const std::string &key)
 

Private Attributes

std::unordered_map< std::string, int > d_tciTypeToIndex
 
std::unordered_map< std::string, std::vector< std::unique_ptr< utils::Spline > > > d_cache
 
const TCIADataParams d_tciaparams
 
std::vector< double > d_dgrid
 
size_type d_maxSize
 
std::string d_fieldName
 
const std::vector< std::string > d_tciTypes
 
double d_rcSmear
 
double d_rcSmearZZCorr
 
std::unordered_map< std::string, std::unordered_map< std::string, std::string > > d_vLocParams
 
std::list< std::string > d_lruList
 
std::unordered_map< std::string, std::list< std::string >::iterator > d_keyToIter
 

Constructor & Destructor Documentation

◆ AtomTCIASpline()

dftefe::atoms::AtomTCIASpline::AtomTCIASpline ( const std::string &  fieldName,
const TCIADataParams params,
const std::vector< std::string >  atomSymbols,
const std::vector< std::string >  tciTypes = {"S"},
const size_type  maxPairs = 1000 
)
Here is the call graph for this function:

◆ ~AtomTCIASpline()

dftefe::atoms::AtomTCIASpline::~AtomTCIASpline ( )
default

Destructor.

Member Function Documentation

◆ evictIfNeeded()

void dftefe::atoms::AtomTCIASpline::evictIfNeeded ( )
private
Here is the caller graph for this function:

◆ getSpline()

utils::Spline * dftefe::atoms::AtomTCIASpline::getSpline ( const std::string &  atomCombination,
const std::string  tciType 
)
Here is the call graph for this function:

◆ getVLocInfo()

std::string dftefe::atoms::AtomTCIASpline::getVLocInfo ( std::string  atomSymbol,
std::string  paramName 
)
Here is the call graph for this function:

◆ loadAtomCombination()

bool dftefe::atoms::AtomTCIASpline::loadAtomCombination ( const std::string &  atomCombination,
std::vector< std::vector< double > > &  values 
)
private
Here is the caller graph for this function:

◆ maxRadialGrid()

double dftefe::atoms::AtomTCIASpline::maxRadialGrid ( )

◆ smearedChargeRadius()

double dftefe::atoms::AtomTCIASpline::smearedChargeRadius ( )

◆ smearedChargeRadiusZZCorr()

double dftefe::atoms::AtomTCIASpline::smearedChargeRadiusZZCorr ( )

◆ touch()

void dftefe::atoms::AtomTCIASpline::touch ( const std::string &  key)
private
Here is the caller graph for this function:

Member Data Documentation

◆ d_cache

std::unordered_map<std::string, std::vector<std::unique_ptr<utils::Spline> > > dftefe::atoms::AtomTCIASpline::d_cache
private

◆ d_dgrid

std::vector<double> dftefe::atoms::AtomTCIASpline::d_dgrid
private

◆ d_fieldName

std::string dftefe::atoms::AtomTCIASpline::d_fieldName
private

◆ d_keyToIter

std::unordered_map<std::string, std::list<std::string>::iterator> dftefe::atoms::AtomTCIASpline::d_keyToIter
private

◆ d_lruList

std::list<std::string> dftefe::atoms::AtomTCIASpline::d_lruList
private

◆ d_maxSize

size_type dftefe::atoms::AtomTCIASpline::d_maxSize
private

◆ d_rcSmear

double dftefe::atoms::AtomTCIASpline::d_rcSmear
private

◆ d_rcSmearZZCorr

double dftefe::atoms::AtomTCIASpline::d_rcSmearZZCorr
private

◆ d_tciaparams

const TCIADataParams dftefe::atoms::AtomTCIASpline::d_tciaparams
private

◆ d_tciTypes

const std::vector<std::string> dftefe::atoms::AtomTCIASpline::d_tciTypes
private

◆ d_tciTypeToIndex

std::unordered_map<std::string, int> dftefe::atoms::AtomTCIASpline::d_tciTypeToIndex
private

◆ d_vLocParams

std::unordered_map<std::string, std::unordered_map<std::string, std::string> > dftefe::atoms::AtomTCIASpline::d_vLocParams
private

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