DFT-FE 1.1.0-pre
Density Functional Theory With Finite-Elements
Loading...
Searching...
No Matches
dftfe::AtomicCenteredNonLocalOperatorKernelsDevice Namespace Reference

Functions

template<typename ValueType>
void copyFromParallelNonLocalVecToAllCellsVec (const dftfe::uInt numWfcs, const dftfe::uInt numNonLocalCells, const dftfe::uInt maxSingleAtomPseudoWfc, const ValueType *sphericalFnTimesWfcParallelVec, ValueType *sphericalFnTimesWfcAllCellsVec, const dftfe::Int *indexMapPaddedToParallelVec)
 
template<typename ValueType>
void copyToDealiiParallelNonLocalVec (const dftfe::uInt numWfcs, const dftfe::uInt totalEntries, const ValueType *sphericalFnTimesWfcParallelVec, ValueType *sphericalFnTimesWfcDealiiParallelVec, const dftfe::uInt *indexMapDealiiParallelNumbering)
 
template<typename ValueType>
void copyFromDealiiParallelNonLocalVecToPaddedVector (const dftfe::uInt numWfcs, const dftfe::uInt totalEntriesPadded, const ValueType *sphericalFnTimesWfcDealiiParallelVec, ValueType *sphericalFnTimesWfcPaddedVec, const dftfe::Int *indexMapDealiiParallelNumbering)
 
template<typename ValueType>
void copyToDealiiParallelNonLocalVecFromPaddedVector (const dftfe::uInt numWfcs, const dftfe::uInt totalEntriesPadded, const ValueType *sphericalFnTimesWfcPaddedVec, ValueType *sphericalFnTimesWfcDealiiParallelVec, const dftfe::Int *indexMapDealiiParallelNumbering)
 
template<typename ValueType>
void addNonLocalContribution (const dftfe::uInt numberCellsForAtom, const dftfe::uInt numberNodesPerElement, const dftfe::uInt numberWfc, const dftfe::uInt numberCellsTraversed, const dftfe::utils::MemoryStorage< ValueType, dftfe::utils::MemorySpace::DEVICE > &nonLocalContribution, ValueType *TotalContribution, const dftfe::utils::MemoryStorage< dftfe::uInt, dftfe::utils::MemorySpace::DEVICE > &cellNodeIdMapNonLocalToLocal)
 
template<typename ValueType>
void addNonLocalContribution (const dftfe::uInt totalNonLocalElements, const dftfe::uInt numberWfc, const dftfe::uInt numberNodesPerElement, const dftfe::utils::MemoryStorage< dftfe::uInt, dftfe::utils::MemorySpace::DEVICE > &iElemNonLocalToElemIndexMap, const dftfe::utils::MemoryStorage< ValueType, dftfe::utils::MemorySpace::DEVICE > &nonLocalContribution, ValueType *TotalContribution)
 
template<typename ValueType>
void sqrtAlphaScalingWaveFunctionEntries (const dftfe::uInt maxSingleAtomContribution, const dftfe::uInt numWfcs, const dftfe::uInt totalAtomsInCurrentProcessor, const double *scalingVector, ValueType *sphericalFnTimesWfcPadded)
 
template<typename ValueType>
void assembleAtomLevelContributionsFromCellLevel (const dftfe::uInt numberWaveFunctions, const dftfe::uInt totalNonlocalElems, const dftfe::uInt maxSingleAtomContribution, const dftfe::uInt totalNonlocalEntries, const dftfe::utils::MemoryStorage< ValueType, dftfe::utils::MemorySpace::DEVICE > &sphericalFnTimesVectorAllCellsDevice, const dftfe::utils::MemoryStorage< dftfe::uInt, dftfe::utils::MemorySpace::DEVICE > &mapSphericalFnTimesVectorAllCellsReductionDevice, dftfe::utils::MemoryStorage< ValueType, dftfe::utils::MemorySpace::DEVICE > &sphericalFnTimesWavefunctionMatrix)
 

Function Documentation

◆ addNonLocalContribution() [1/2]

template<typename ValueType>
void dftfe::AtomicCenteredNonLocalOperatorKernelsDevice::addNonLocalContribution ( const dftfe::uInt numberCellsForAtom,
const dftfe::uInt numberNodesPerElement,
const dftfe::uInt numberWfc,
const dftfe::uInt numberCellsTraversed,
const dftfe::utils::MemoryStorage< ValueType, dftfe::utils::MemorySpace::DEVICE > & nonLocalContribution,
ValueType * TotalContribution,
const dftfe::utils::MemoryStorage< dftfe::uInt, dftfe::utils::MemorySpace::DEVICE > & cellNodeIdMapNonLocalToLocal )

◆ addNonLocalContribution() [2/2]

template<typename ValueType>
void dftfe::AtomicCenteredNonLocalOperatorKernelsDevice::addNonLocalContribution ( const dftfe::uInt totalNonLocalElements,
const dftfe::uInt numberWfc,
const dftfe::uInt numberNodesPerElement,
const dftfe::utils::MemoryStorage< dftfe::uInt, dftfe::utils::MemorySpace::DEVICE > & iElemNonLocalToElemIndexMap,
const dftfe::utils::MemoryStorage< ValueType, dftfe::utils::MemorySpace::DEVICE > & nonLocalContribution,
ValueType * TotalContribution )

◆ assembleAtomLevelContributionsFromCellLevel()

template<typename ValueType>
void dftfe::AtomicCenteredNonLocalOperatorKernelsDevice::assembleAtomLevelContributionsFromCellLevel ( const dftfe::uInt numberWaveFunctions,
const dftfe::uInt totalNonlocalElems,
const dftfe::uInt maxSingleAtomContribution,
const dftfe::uInt totalNonlocalEntries,
const dftfe::utils::MemoryStorage< ValueType, dftfe::utils::MemorySpace::DEVICE > & sphericalFnTimesVectorAllCellsDevice,
const dftfe::utils::MemoryStorage< dftfe::uInt, dftfe::utils::MemorySpace::DEVICE > & mapSphericalFnTimesVectorAllCellsReductionDevice,
dftfe::utils::MemoryStorage< ValueType, dftfe::utils::MemorySpace::DEVICE > & sphericalFnTimesWavefunctionMatrix )

◆ copyFromDealiiParallelNonLocalVecToPaddedVector()

template<typename ValueType>
void dftfe::AtomicCenteredNonLocalOperatorKernelsDevice::copyFromDealiiParallelNonLocalVecToPaddedVector ( const dftfe::uInt numWfcs,
const dftfe::uInt totalEntriesPadded,
const ValueType * sphericalFnTimesWfcDealiiParallelVec,
ValueType * sphericalFnTimesWfcPaddedVec,
const dftfe::Int * indexMapDealiiParallelNumbering )

◆ copyFromParallelNonLocalVecToAllCellsVec()

template<typename ValueType>
void dftfe::AtomicCenteredNonLocalOperatorKernelsDevice::copyFromParallelNonLocalVecToAllCellsVec ( const dftfe::uInt numWfcs,
const dftfe::uInt numNonLocalCells,
const dftfe::uInt maxSingleAtomPseudoWfc,
const ValueType * sphericalFnTimesWfcParallelVec,
ValueType * sphericalFnTimesWfcAllCellsVec,
const dftfe::Int * indexMapPaddedToParallelVec )

◆ copyToDealiiParallelNonLocalVec()

template<typename ValueType>
void dftfe::AtomicCenteredNonLocalOperatorKernelsDevice::copyToDealiiParallelNonLocalVec ( const dftfe::uInt numWfcs,
const dftfe::uInt totalEntries,
const ValueType * sphericalFnTimesWfcParallelVec,
ValueType * sphericalFnTimesWfcDealiiParallelVec,
const dftfe::uInt * indexMapDealiiParallelNumbering )

◆ copyToDealiiParallelNonLocalVecFromPaddedVector()

template<typename ValueType>
void dftfe::AtomicCenteredNonLocalOperatorKernelsDevice::copyToDealiiParallelNonLocalVecFromPaddedVector ( const dftfe::uInt numWfcs,
const dftfe::uInt totalEntriesPadded,
const ValueType * sphericalFnTimesWfcPaddedVec,
ValueType * sphericalFnTimesWfcDealiiParallelVec,
const dftfe::Int * indexMapDealiiParallelNumbering )

◆ sqrtAlphaScalingWaveFunctionEntries()

template<typename ValueType>
void dftfe::AtomicCenteredNonLocalOperatorKernelsDevice::sqrtAlphaScalingWaveFunctionEntries ( const dftfe::uInt maxSingleAtomContribution,
const dftfe::uInt numWfcs,
const dftfe::uInt totalAtomsInCurrentProcessor,
const double * scalingVector,
ValueType * sphericalFnTimesWfcPadded )