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

The functions in this namespace contain the expressions for the various terms of the configurational force (https://link.aps.org/doi/10.1103/PhysRevB.97.165132) for both periodic and non-periodic case. More...

Functions

dealii::Tensor< 2, 3, dealii::VectorizedArray< double > > getELocXcEshelbyTensor (const dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > &gradRhoSpin0, const dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > &gradRhoSpin1, const dealii::VectorizedArray< double > &exc, const dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > &derExcGradRhoSpin0, const dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > &derExcGradRhoSpin1)
 exchange-correlation and psp part of the ELoc Eshelby tensor
 
dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > getFNonlinearCoreCorrection (const dealii::VectorizedArray< double > &vxcSpin0, const dealii::VectorizedArray< double > &vxcSpin1, const dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > &derExcGradRhoSpin0, const dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > &derExcGradRhoSpin1, const dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > &gradRhoCore, const dealii::Tensor< 2, 3, dealii::VectorizedArray< double > > &hessianRhoCore, const bool isXCGGA)
 Nonlocal core correction pseudopotential force contribution.
 

Detailed Description

The functions in this namespace contain the expressions for the various terms of the configurational force (https://link.aps.org/doi/10.1103/PhysRevB.97.165132) for both periodic and non-periodic case.

The functions in this namespace are similar to the ones in eshelbyTensor.h except the ones here are specialized for spin polarized case. Spin0 and Spin1 refer to up and down spins respectively. General nomenclature of the input arguments: a) phiTot- total electrostatic potential b) phiExt- sum of electrostatic potential from all nuclear charges c) rho- electron density d) gradRho- gradient of electron density e) exc- exchange correlation energy f) derExcGradRho- derivative of exc with gradient of rho g) psiBegin- begin iterator to vector eigenvectors stored as a flattened array over k points and number of eigenvectors for each k point (periodic case has complex valued eigenvectors which is why dealii::Tensor<1,2,dealii::VectorizedArray<double> is used in functions for periodic case) h) gradPsiBegin- gradient of eigenvectors i) eigenValues- Kohn sham grounstate eigenvalues stored in a vector. For periodic problems with multiple k points the outer vector should be over k points j) tVal- smearing temperature in K k) pseudoVLoc- local part of the pseuodopotential l) gradPseudoVLoc- gradient of local part of pseudopotential m) ZetaDeltaV- nonlocal pseudowavefunctions times deltaV (see Eq. 11 in https://link.aps.org/doi/10.1103/PhysRevB.97.165132) n) gradZetaDeltaV- gradient of ZetaDeltaV o) projectorKetTimesPsiTimesV- nonlocal pseudopotential projector ket times eigenvectors which are precomputed. The nonlocal pseudopotential constants are also multiplied to this quantity. (see Eq. 11 in https://link.aps.org/doi/10.1103/PhysRevB.97.165132)

Author
Sambit Das

Function Documentation

◆ getELocXcEshelbyTensor()

dealii::Tensor< 2, 3, dealii::VectorizedArray< double > > dftfe::eshelbyTensorSP::getELocXcEshelbyTensor ( const dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > & gradRhoSpin0,
const dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > & gradRhoSpin1,
const dealii::VectorizedArray< double > & exc,
const dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > & derExcGradRhoSpin0,
const dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > & derExcGradRhoSpin1 )

exchange-correlation and psp part of the ELoc Eshelby tensor

◆ getFNonlinearCoreCorrection()

dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > dftfe::eshelbyTensorSP::getFNonlinearCoreCorrection ( const dealii::VectorizedArray< double > & vxcSpin0,
const dealii::VectorizedArray< double > & vxcSpin1,
const dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > & derExcGradRhoSpin0,
const dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > & derExcGradRhoSpin1,
const dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > & gradRhoCore,
const dealii::Tensor< 2, 3, dealii::VectorizedArray< double > > & hessianRhoCore,
const bool isXCGGA )

Nonlocal core correction pseudopotential force contribution.