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< dftfe::uInt > &atomTypes, const bool reproducibleOutput, const dftfe::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, dftfe::uInt sparsityPatternQuadratureId, dftfe::uInt nlpspQuadratureId, const std::vector< std::vector< double > > &atomLocations, dftfe::uInt numEigenValues)
 Initialises all the data members with addresses/values to/of dftClass.
 
void initialiseNonLocalContribution (const std::vector< std::vector< double > > &atomLocations, const std::vector< dftfe::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 dftfe::uInt 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 dftfe::uInt quadratureIndex, const std::vector< double > &kPointWeights, const MPI_Comm &interBandGroupComm, const MPI_Comm &interpoolComm, const dftParameters *dftParamsPtr, double fermiEnergy, dftfe::uInt highestStateNscfSolve)
 

Public Attributes

std::unordered_map< dftfe::uInt, std::string > LQnumToNameMap
 

Private Member Functions

void createAtomCenteredSphericalFunctionsForOrbitals ()
 

Private Attributes

const MPI_Comm d_mpiCommParentPostProcessing
 
const MPI_Comm d_mpiCommDomain
 
const dftfe::uInt d_this_mpi_process
 
std::string d_dftfeScratchFolderName
 
std::set< dftfe::uIntd_atomTypes
 
bool d_reproducible_output
 
dftfe::uInt d_verbosity
 
bool d_useDevice
 
dealii::ConditionalOStream pcout
 
dftfe::uInt d_sparsityPatternQuadratureId
 
dftfe::uInt d_nlpspQuadratureId
 
dftfe::uInt d_numEigenValues
 
std::map< dftfe::uInt, std::vector< std::pair< dftfe::uInt, dftfe::uInt > > > nlNumsMap
 
dealii::TimerOutput computing_timer
 
std::shared_ptr< AtomCenteredSphericalFunctionContainerd_atomicOrbitalFnsContainer
 
std::map< std::pair< dftfe::uInt, dftfe::uInt >, 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< dftfe::uInt > & atomTypes,
const bool reproducibleOutput,
const dftfe::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 dftfe::uInt 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 dftfe::uInt quadratureIndex,
const std::vector< double > & kPointWeights,
const MPI_Comm & interBandGroupComm,
const MPI_Comm & interpoolComm,
const dftParameters * dftParamsPtr,
double fermiEnergy,
dftfe::uInt 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,
dftfe::uInt sparsityPatternQuadratureId,
dftfe::uInt nlpspQuadratureId,
const std::vector< std::vector< double > > & atomLocations,
dftfe::uInt 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< dftfe::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<dftfe::uInt, dftfe::uInt>, std::shared_ptr<AtomCenteredSphericalFunctionBase> > dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::d_atomicOrbitalFnsMap
private

◆ d_atomTypes

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
std::set<dftfe::uInt> 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>
dftfe::uInt 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>
dftfe::uInt 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>
dftfe::uInt dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::d_sparsityPatternQuadratureId
private

◆ d_this_mpi_process

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
const dftfe::uInt 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>
dftfe::uInt dftfe::atomCenteredOrbitalsPostProcessing< ValueType, memorySpace >::d_verbosity
private

◆ LQnumToNameMap

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

◆ nlNumsMap

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
std::map<dftfe::uInt, std::vector<std::pair<dftfe::uInt, dftfe::uInt> > > 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: