DFT-FE 1.1.0-pre
Density Functional Theory With Finite-Elements
Loading...
Searching...
No Matches
dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace > Class Template Reference

#include <atomCenteredPostProcessing.h>

Public Member Functions

 atomCenteredOrbitalsPostProcessing (const MPI_Comm &mpi_comm_parent, const MPI_Comm &mpi_comm_domain, const std::string &scratchFolderName, const std::set< unsigned int > &atomTypes, const bool reproducibleOutput, const int verbosity, const bool useDevice, const dftParameters *dftParamsPtr)
 
void initialise (std::shared_ptr< dftfe::basis::FEBasisOperations< ValueType, double, dftfe::utils::MemorySpace::HOST > > basisOperationsHostPtr, std::shared_ptr< dftfe::linearAlgebra::BLASWrapper< dftfe::utils::MemorySpace::HOST > > BLASWrapperPtrHost, unsigned int sparsityPatternQuadratureId, unsigned int nlpspQuadratureId, const std::vector< std::vector< double > > &atomLocations, unsigned int numEigenValues)
 Initialises all the data members with addresses/values to/of dftClass.
 
void initialiseNonLocalContribution (const std::vector< std::vector< double > > &atomLocations, const std::vector< int > &imageIds, const std::vector< std::vector< double > > &periodicCoords, const std::vector< double > &kPointWeights, const std::vector< double > &kPointCoordinates, const bool updateNonlocalSparsity)
 Initialises all the data members with addresses/values to/of dftClass.
 
const std::shared_ptr< AtomicCenteredNonLocalOperator< ValueType, memorySpace > > getNonLocalOperator ()
 
double smearFunction (double x, const dftParameters *dftParamsPtr)
 
void computeAtomCenteredEntries (const dftfe::utils::MemoryStorage< ValueType, memorySpace > *X, const unsigned int totalNumWaveFunctions, const std::vector< std::vector< double > > &eigenValues, std::shared_ptr< dftfe::basis::FEBasisOperations< ValueType, double, memorySpace > > &basisOperationsPtr, std::shared_ptr< dftfe::linearAlgebra::BLASWrapper< dftfe::utils::MemorySpace::HOST > > BLASWrapperPtrHost, const unsigned int quadratureIndex, const std::vector< double > &kPointWeights, const MPI_Comm &interBandGroupComm, const MPI_Comm &interpoolComm, const dftParameters *dftParamsPtr, double fermiEnergy, unsigned int highestStateNscfSolve)
 

Public Attributes

std::unordered_map< unsigned int, std::string > LQnumToNameMap
 

Private Member Functions

void createAtomCenteredSphericalFunctionsForOrbitals ()
 

Private Attributes

const MPI_Comm d_mpiCommParentPostProcessing
 
const MPI_Comm d_mpiCommDomain
 
const unsigned int d_this_mpi_process
 
std::string d_dftfeScratchFolderName
 
std::set< unsigned int > d_atomTypes
 
bool d_reproducible_output
 
unsigned int d_verbosity
 
bool d_useDevice
 
dealii::ConditionalOStream pcout
 
unsigned int d_sparsityPatternQuadratureId
 
unsigned int d_nlpspQuadratureId
 
unsigned int d_numEigenValues
 
std::map< unsigned int, std::vector< std::pair< unsigned int, unsigned int > > > nlNumsMap
 
dealii::TimerOutput computing_timer
 
std::shared_ptr< AtomCenteredSphericalFunctionContainerd_atomicOrbitalFnsContainer
 
std::map< std::pair< unsigned int, unsigned int >, std::shared_ptr< AtomCenteredSphericalFunctionBase > > d_atomicOrbitalFnsMap
 
std::shared_ptr< AtomicCenteredNonLocalOperator< ValueType, memorySpace > > d_nonLocalOperator
 
std::shared_ptr< dftfe::basis::FEBasisOperations< ValueType, double, dftfe::utils::MemorySpace::HOST > > d_BasisOperatorHostPtr
 
std::shared_ptr< dftfe::linearAlgebra::BLASWrapper< dftfe::utils::MemorySpace::HOST > > d_BLASWrapperHostPtr
 

Constructor & Destructor Documentation

◆ atomCenteredOrbitalsPostProcessing()

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::atomCenteredOrbitalsPostProcessing ( const MPI_Comm & mpi_comm_parent,
const MPI_Comm & mpi_comm_domain,
const std::string & scratchFolderName,
const std::set< unsigned int > & atomTypes,
const bool reproducibleOutput,
const int verbosity,
const bool useDevice,
const dftParameters * dftParamsPtr )

Member Function Documentation

◆ computeAtomCenteredEntries()

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
void dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::computeAtomCenteredEntries ( const dftfe::utils::MemoryStorage< ValueType, memorySpace > * X,
const unsigned int totalNumWaveFunctions,
const std::vector< std::vector< double > > & eigenValues,
std::shared_ptr< dftfe::basis::FEBasisOperations< ValueType, double, memorySpace > > & basisOperationsPtr,
std::shared_ptr< dftfe::linearAlgebra::BLASWrapper< dftfe::utils::MemorySpace::HOST > > BLASWrapperPtrHost,
const unsigned int quadratureIndex,
const std::vector< double > & kPointWeights,
const MPI_Comm & interBandGroupComm,
const MPI_Comm & interpoolComm,
const dftParameters * dftParamsPtr,
double fermiEnergy,
unsigned int highestStateNscfSolve )

◆ createAtomCenteredSphericalFunctionsForOrbitals()

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
void dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::createAtomCenteredSphericalFunctionsForOrbitals ( )
private

◆ getNonLocalOperator()

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
const std::shared_ptr< AtomicCenteredNonLocalOperator< ValueType, memorySpace > > dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::getNonLocalOperator ( )

◆ initialise()

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
void dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::initialise ( std::shared_ptr< dftfe::basis::FEBasisOperations< ValueType, double, dftfe::utils::MemorySpace::HOST > > basisOperationsHostPtr,
std::shared_ptr< dftfe::linearAlgebra::BLASWrapper< dftfe::utils::MemorySpace::HOST > > BLASWrapperPtrHost,
unsigned int sparsityPatternQuadratureId,
unsigned int nlpspQuadratureId,
const std::vector< std::vector< double > > & atomLocations,
unsigned int numEigenValues )

Initialises all the data members with addresses/values to/of dftClass.

Parameters
[in]numEigenValuesnumber of eigenvalues
[in]atomLocationsatomic Coordinates
[in]imageIdsimage IDs of periodic cell
[in]periodicCoordscoordinates of image atoms

◆ initialiseNonLocalContribution()

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
void dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::initialiseNonLocalContribution ( const std::vector< std::vector< double > > & atomLocations,
const std::vector< int > & imageIds,
const std::vector< std::vector< double > > & periodicCoords,
const std::vector< double > & kPointWeights,
const std::vector< double > & kPointCoordinates,
const bool updateNonlocalSparsity )

Initialises all the data members with addresses/values to/of dftClass.

Parameters
[in]atomLocationsatomic Coordinates
[in]imageIdsimage IDs of periodic cell
[in]periodicCoordscoordinates of image atoms

◆ smearFunction()

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
double dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::smearFunction ( double x,
const dftParameters * dftParamsPtr )

Member Data Documentation

◆ computing_timer

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
dealii::TimerOutput dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::computing_timer
private

◆ d_atomicOrbitalFnsContainer

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
std::shared_ptr<AtomCenteredSphericalFunctionContainer> dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::d_atomicOrbitalFnsContainer
private

◆ d_atomicOrbitalFnsMap

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
std::map<std::pair<unsigned int, unsigned int>, std::shared_ptr<AtomCenteredSphericalFunctionBase> > dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::d_atomicOrbitalFnsMap
private

◆ d_atomTypes

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
std::set<unsigned int> dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::d_atomTypes
private

◆ d_BasisOperatorHostPtr

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
std::shared_ptr< dftfe::basis:: FEBasisOperations<ValueType, double, dftfe::utils::MemorySpace::HOST> > dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::d_BasisOperatorHostPtr
private

◆ d_BLASWrapperHostPtr

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
std::shared_ptr< dftfe::linearAlgebra::BLASWrapper<dftfe::utils::MemorySpace::HOST> > dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::d_BLASWrapperHostPtr
private

◆ d_dftfeScratchFolderName

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
std::string dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::d_dftfeScratchFolderName
private

◆ d_mpiCommDomain

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
const MPI_Comm dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::d_mpiCommDomain
private

◆ d_mpiCommParentPostProcessing

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
const MPI_Comm dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::d_mpiCommParentPostProcessing
private

◆ d_nlpspQuadratureId

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
unsigned int dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::d_nlpspQuadratureId
private

◆ d_nonLocalOperator

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
std::shared_ptr<AtomicCenteredNonLocalOperator<ValueType, memorySpace> > dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::d_nonLocalOperator
private

◆ d_numEigenValues

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
unsigned int dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::d_numEigenValues
private

◆ d_reproducible_output

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
bool dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::d_reproducible_output
private

◆ d_sparsityPatternQuadratureId

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
unsigned int dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::d_sparsityPatternQuadratureId
private

◆ d_this_mpi_process

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
const unsigned int dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::d_this_mpi_process
private

◆ d_useDevice

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
bool dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::d_useDevice
private

◆ d_verbosity

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
unsigned int dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::d_verbosity
private

◆ LQnumToNameMap

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
std::unordered_map<unsigned int, std::string> dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::LQnumToNameMap

◆ nlNumsMap

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
std::map<unsigned int, std::vector<std::pair<unsigned int, unsigned int> > > dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::nlNumsMap
private

◆ pcout

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
dealii::ConditionalOStream dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::pcout
private

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