#include <KohnShamDFT.h>

Public Types | |
| using | HamiltonianPtrVariant = std::variant< std::shared_ptr< Hamiltonian< float, memorySpace > >, std::shared_ptr< Hamiltonian< double, memorySpace > >, std::shared_ptr< Hamiltonian< std::complex< float >, memorySpace > >, std::shared_ptr< Hamiltonian< std::complex< double >, memorySpace > > > |
| using | ValueTypeOperator = linearAlgebra::blasLapack::scalar_type< ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionBasis > |
| using | ValueTypeOperand = linearAlgebra::blasLapack::scalar_type< ValueTypeElectrostaticsCoeff, ValueTypeWaveFunctionCoeff > |
| using | ValueType = linearAlgebra::blasLapack::scalar_type< ValueTypeOperator, ValueTypeOperator > |
| using | RealType = linearAlgebra::blasLapack::real_type< ValueType > |
| using | OpContext = typename linearAlgebra::HermitianIterativeEigenSolver< ValueTypeOperator, ValueTypeOperand, memorySpace >::OpContext |
Public Member Functions | |
| KohnShamDFT (const std::vector< utils::Point > &atomCoordinates, const std::vector< double > &atomCharges, const double &smearedChargeRadius, const size_type numElectrons, const size_type numWantedEigenvalues, const double smearingTemperature, const double fermiEnergyTolerance, const double fracOccupancyTolerance, const double eigenSolveResidualTolerance, const double scfDensityResidualNormTolerance, const size_type maxChebyshevFilterPass, const size_type maxSCFIter, const bool evaluateEnergyEverySCF, const size_type mixingHistory, const double mixingParameter, const bool isAdaptiveAndersonMixingParameter, const atoms::AtomSuperpositionFunction< memorySpace > &atomicElectronicChargeDensityFunction, std::shared_ptr< const basis::FEBasisManager< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, memorySpaceHost, dim > > feBMTotalCharge, std::shared_ptr< const basis::FEBasisManager< ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim > > feBMWaveFn, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > feBDTotalChargeStiffnessMatrix, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > feBDNuclearChargeRhs, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > feBDElectronicChargeRhs, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > feBDKineticHamiltonian, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > feBDElectrostaticsHamiltonian, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > feBDEXCHamiltonian, const utils::ScalarSpatialFunctionReal &externalPotentialFunction, const std::string &xcType, std::shared_ptr< linearAlgebra::LinAlgOpContext< memorySpace > > linAlgOpContext, const OpContext &MContextForInv=linearAlgebra::IdentityOperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace >(), const OpContext &MContext=linearAlgebra::IdentityOperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace >(), const OpContext &MInvContext=linearAlgebra::IdentityOperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace >(), bool isResidualChebyshevFilter=true) | |
| KohnShamDFT (const std::vector< utils::Point > &atomCoordinates, const std::vector< double > &atomCharges, const double &smearedChargeRadius, const size_type numElectrons, const size_type numWantedEigenvalues, const double smearingTemperature, const double fermiEnergyTolerance, const double fracOccupancyTolerance, const double eigenSolveResidualTolerance, const double scfDensityResidualNormTolerance, const size_type maxChebyshevFilterPass, const size_type maxSCFIter, const bool evaluateEnergyEverySCF, const size_type mixingHistory, const double mixingParameter, const bool isAdaptiveAndersonMixingParameter, const atoms::AtomSuperpositionFunction< memorySpace > &atomicElectronicChargeDensityFunction, std::shared_ptr< const basis::FEBasisManager< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, memorySpaceHost, dim > > feBMTotalCharge, std::shared_ptr< const basis::FEBasisManager< ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim > > feBMWaveFn, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > feBDTotalChargeStiffnessMatrix, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > feBDNuclearChargeRhs, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > feBDElectronicChargeRhs, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > feBDNuclChargeStiffnessMatrixNumSol, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > feBDNuclChargeRhsNumSol, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > feBDKineticHamiltonian, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > feBDElectrostaticsHamiltonian, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > feBDEXCHamiltonian, const utils::ScalarSpatialFunctionReal &externalPotentialFunction, const std::string &xcType, std::shared_ptr< linearAlgebra::LinAlgOpContext< memorySpace > > linAlgOpContext, const OpContext &MContextForInv=linearAlgebra::IdentityOperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace >(), const OpContext &MContext=linearAlgebra::IdentityOperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace >(), const OpContext &MInvContext=linearAlgebra::IdentityOperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace >(), bool isResidualChebyshevFilter=true) | |
| KohnShamDFT (const std::vector< utils::Point > &atomCoordinates, const std::vector< double > &atomCharges, const std::vector< std::string > &atomSymbolVec, const double &smearedChargeRadius, const size_type numElectrons, const size_type numWantedEigenvalues, const double smearingTemperature, const double fermiEnergyTolerance, const double fracOccupancyTolerance, const double eigenSolveResidualTolerance, const double scfDensityResidualNormTolerance, const size_type maxChebyshevFilterPass, const size_type maxSCFIter, const bool evaluateEnergyEverySCF, const size_type mixingHistory, const double mixingParameter, const bool isAdaptiveAndersonMixingParameter, const atoms::AtomSuperpositionFunction< memorySpace > &atomicTotalElectroPotentialFunction, const atoms::AtomSuperpositionFunction< memorySpace > &atomicElectronicChargeDensityFunction, std::shared_ptr< const basis::FEBasisManager< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, memorySpaceHost, dim > > feBMTotalCharge, std::shared_ptr< const basis::FEBasisManager< ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim > > feBMWaveFn, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > feBDTotalChargeStiffnessMatrix, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > feBDNuclearChargeRhs, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > feBDElectronicChargeRhs, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > feBDKineticHamiltonian, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > feBDElectrostaticsHamiltonian, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > feBDEXCHamiltonian, const utils::ScalarSpatialFunctionReal &externalPotentialFunction, const std::string &xcType, std::shared_ptr< linearAlgebra::LinAlgOpContext< memorySpace > > linAlgOpContext, const OpContext &MContextForInv=linearAlgebra::IdentityOperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace >(), const OpContext &MContext=linearAlgebra::IdentityOperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace >(), const OpContext &MInvContext=linearAlgebra::IdentityOperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace >(), bool isResidualChebyshevFilter=true, const atoms::TCIADataParams ¶ms=TCIADataDefaults::TCIA_PARAMS) | |
| KohnShamDFT (const std::vector< utils::Point > &atomCoordinates, const std::vector< double > &atomCharges, const std::vector< std::string > &atomSymbolVec, const double &smearedChargeRadius, const size_type numElectrons, const size_type numWantedEigenvalues, const double smearingTemperature, const double fermiEnergyTolerance, const double fracOccupancyTolerance, const double eigenSolveResidualTolerance, const double scfDensityResidualNormTolerance, const size_type maxChebyshevFilterPass, const size_type maxSCFIter, const bool evaluateEnergyEverySCF, const size_type mixingHistory, const double mixingParameter, const bool isAdaptiveAndersonMixingParameter, const atoms::AtomSuperpositionFunction< memorySpace > &atomicElectronicChargeDensityFunction, std::shared_ptr< const basis::FEBasisManager< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, memorySpaceHost, dim > > feBMTotalCharge, std::shared_ptr< const basis::FEBasisManager< ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim > > feBMWaveFn, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > feBDTotalChargeStiffnessMatrix, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > feBDNuclearChargeRhs, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > feBDElectronicChargeRhs, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > feBDKineticHamiltonian, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > feBDElectrostaticsHamiltonian, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > feBDEXCHamiltonian, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > feBDAtomCenterNonLocalOperator, const std::map< std::string, std::string > &atomSymbolToPSPFilename, const std::string &xcType, std::shared_ptr< linearAlgebra::LinAlgOpContext< memorySpace > > linAlgOpContext, const OpContext &MContextForInv=linearAlgebra::IdentityOperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace >(), const OpContext &MContext=linearAlgebra::IdentityOperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace >(), const OpContext &MInvContext=linearAlgebra::IdentityOperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace >(), bool isResidualChebyshevFilter=true) | |
| KohnShamDFT (const std::vector< utils::Point > &atomCoordinates, const std::vector< double > &atomCharges, const std::vector< std::string > &atomSymbolVec, const double &smearedChargeRadius, const size_type numElectrons, const size_type numWantedEigenvalues, const double smearingTemperature, const double fermiEnergyTolerance, const double fracOccupancyTolerance, const double eigenSolveResidualTolerance, const double scfDensityResidualNormTolerance, const size_type maxChebyshevFilterPass, const size_type maxSCFIter, const bool evaluateEnergyEverySCF, const size_type mixingHistory, const double mixingParameter, const bool isAdaptiveAndersonMixingParameter, const atoms::AtomSuperpositionFunction< memorySpace > &atomicTotalElectroPotentialFunction, const atoms::AtomSuperpositionFunction< memorySpace > &atomicElectronicChargeDensityFunction, std::shared_ptr< const basis::FEBasisManager< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, memorySpaceHost, dim > > feBMTotalCharge, std::shared_ptr< const basis::FEBasisManager< ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim > > feBMWaveFn, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > feBDTotalChargeStiffnessMatrix, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > feBDNuclearChargeRhs, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > feBDElectronicChargeRhs, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > feBDKineticHamiltonian, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > feBDElectrostaticsHamiltonian, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > feBDEXCHamiltonian, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > feBDAtomCenterNonLocalOperator, const std::map< std::string, std::string > &atomSymbolToPSPFilename, const std::string &xcType, std::shared_ptr< linearAlgebra::LinAlgOpContext< memorySpace > > linAlgOpContext, const OpContext &MContextForInv=linearAlgebra::IdentityOperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace >(), const OpContext &MContext=linearAlgebra::IdentityOperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace >(), const OpContext &MInvContext=linearAlgebra::IdentityOperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace >(), bool isResidualChebyshevFilter=true, const atoms::TCIADataParams ¶ms=TCIADataDefaults::TCIA_PARAMS) | |
| ~KohnShamDFT () | |
| void | solve () |
| double | getGroundStateEnergy () |
| double | getFreeEnergy () |
| void | printTotalInScopeTimings () |
Private Attributes | |
| const size_type | d_numWantedEigenvalues |
| const double | d_SCFTol |
| std::vector< RealType > | d_jxwDataHost |
| std::shared_ptr< KohnShamEigenSolver< ValueTypeOperator, ValueTypeOperand, memorySpace > > | d_ksEigSolve |
| std::shared_ptr< RDM1Spectral< linearAlgebra::blasLapack::scalar_type< ValueTypeWaveFunctionBasis, ValueTypeWaveFunctionCoeff >, memorySpace > > | d_rdm1Spectral |
| std::shared_ptr< RDM1Mixing< linearAlgebra::blasLapack::scalar_type< ValueTypeWaveFunctionBasis, ValueTypeWaveFunctionCoeff >, memorySpace > > | d_rdm1Mix |
| std::shared_ptr< KohnShamOperatorContextFE< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim > > | d_hamitonianOperator |
| std::shared_ptr< ExchangeCorrelationFE< ValueTypeWaveFunctionBasis, ValueTypeWaveFunctionCoeff, memorySpace, dim > > | d_hamitonianXC |
| std::shared_ptr< ElectrostaticFE< ValueTypeElectrostaticsBasis, ValueTypeElectrostaticsCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim > > | d_hamitonianElec |
| std::shared_ptr< KineticFE< ValueTypeWaveFunctionBasis, ValueTypeWaveFunctionCoeff, memorySpace, dim > > | d_hamitonianKin |
| std::shared_ptr< const basis::FEBasisManager< ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim > > | d_feBMWaveFn |
| std::vector< RealType > | d_kohnShamEnergies |
| utils::ConditionalOStream | d_rootCout |
| bool | d_evaluateEnergyEverySCF |
| size_type | d_numMaxSCFIter |
| const OpContext * | d_MContext |
| const OpContext * | d_MInvContext |
| const utils::mpi::MPIComm & | d_mpiCommDomain |
| MixingScheme< RealType, RealType > | d_mixingScheme |
| std::shared_ptr< linearAlgebra::LinAlgOpContext< memorySpace > > | d_linAlgOpContext |
| const size_type | d_numElectrons |
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > | d_feBDEXCHamiltonian |
| RealType | d_groundStateEnergy |
| bool | d_isSolved |
| utils::Profiler< memorySpace > | d_p |
| utils::Profiler< memorySpace > | d_pTotal |
| bool | d_isPSPCalculation |
| std::shared_ptr< ElectrostaticExcFE< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim > > | d_hamiltonianElectroExc |
| bool | d_isResidualChebyshevFilter |
| bool | d_isOEFEBasis |
| std::shared_ptr< atoms::AtomSphericalDataContainer > | d_atomSphericalDataContainerPSP |
| bool | d_isONCVNonLocPSP |
| bool | d_isNlcc |
| std::shared_ptr< linearAlgebra::ElpaScalapackManager > | d_elpaScala |
| std::shared_ptr< linearAlgebra::LinAlgOpContext< memorySpaceHost > > | d_linAlgOpContextHost |
| double | d_smearingTemperature |
| double | d_freeEnergy |
| std::string | d_xcType |
| using dftefe::ksdft::KohnShamDFT< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim >::HamiltonianPtrVariant = std::variant< std::shared_ptr<Hamiltonian<float, memorySpace> >, std::shared_ptr<Hamiltonian<double, memorySpace> >, std::shared_ptr<Hamiltonian<std::complex<float>, memorySpace> >, std::shared_ptr<Hamiltonian<std::complex<double>, memorySpace> >> |
| using dftefe::ksdft::KohnShamDFT< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim >::OpContext = typename linearAlgebra::HermitianIterativeEigenSolver< ValueTypeOperator, ValueTypeOperand, memorySpace>::OpContext |
| using dftefe::ksdft::KohnShamDFT< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim >::RealType = linearAlgebra::blasLapack::real_type<ValueType> |
| using dftefe::ksdft::KohnShamDFT< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim >::ValueType = linearAlgebra::blasLapack::scalar_type<ValueTypeOperator, ValueTypeOperator> |
| using dftefe::ksdft::KohnShamDFT< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim >::ValueTypeOperand = linearAlgebra::blasLapack::scalar_type<ValueTypeElectrostaticsCoeff, ValueTypeWaveFunctionCoeff> |
| using dftefe::ksdft::KohnShamDFT< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim >::ValueTypeOperator = linearAlgebra::blasLapack::scalar_type<ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionBasis> |
| dftefe::ksdft::KohnShamDFT< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim >::KohnShamDFT | ( | const std::vector< utils::Point > & | atomCoordinates, |
| const std::vector< double > & | atomCharges, | ||
| const double & | smearedChargeRadius, | ||
| const size_type | numElectrons, | ||
| const size_type | numWantedEigenvalues, | ||
| const double | smearingTemperature, | ||
| const double | fermiEnergyTolerance, | ||
| const double | fracOccupancyTolerance, | ||
| const double | eigenSolveResidualTolerance, | ||
| const double | scfDensityResidualNormTolerance, | ||
| const size_type | maxChebyshevFilterPass, | ||
| const size_type | maxSCFIter, | ||
| const bool | evaluateEnergyEverySCF, | ||
| const size_type | mixingHistory, | ||
| const double | mixingParameter, | ||
| const bool | isAdaptiveAndersonMixingParameter, | ||
| const atoms::AtomSuperpositionFunction< memorySpace > & | atomicElectronicChargeDensityFunction, | ||
| std::shared_ptr< const basis::FEBasisManager< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, memorySpaceHost, dim > > | feBMTotalCharge, | ||
| std::shared_ptr< const basis::FEBasisManager< ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim > > | feBMWaveFn, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > | feBDTotalChargeStiffnessMatrix, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > | feBDNuclearChargeRhs, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > | feBDElectronicChargeRhs, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > | feBDKineticHamiltonian, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > | feBDElectrostaticsHamiltonian, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > | feBDEXCHamiltonian, | ||
| const utils::ScalarSpatialFunctionReal & | externalPotentialFunction, | ||
| const std::string & | xcType, | ||
| std::shared_ptr< linearAlgebra::LinAlgOpContext< memorySpace > > | linAlgOpContext, | ||
| const OpContext & | MContextForInv = linearAlgebra::IdentityOperatorContext<ValueTypeOperator, ValueTypeOperand, memorySpace>(), |
||
| const OpContext & | MContext = linearAlgebra::IdentityOperatorContext<ValueTypeOperator, ValueTypeOperand, memorySpace>(), |
||
| const OpContext & | MInvContext = linearAlgebra::IdentityOperatorContext<ValueTypeOperator, ValueTypeOperand, memorySpace>(), |
||
| bool | isResidualChebyshevFilter = true |
||
| ) |

| dftefe::ksdft::KohnShamDFT< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim >::KohnShamDFT | ( | const std::vector< utils::Point > & | atomCoordinates, |
| const std::vector< double > & | atomCharges, | ||
| const double & | smearedChargeRadius, | ||
| const size_type | numElectrons, | ||
| const size_type | numWantedEigenvalues, | ||
| const double | smearingTemperature, | ||
| const double | fermiEnergyTolerance, | ||
| const double | fracOccupancyTolerance, | ||
| const double | eigenSolveResidualTolerance, | ||
| const double | scfDensityResidualNormTolerance, | ||
| const size_type | maxChebyshevFilterPass, | ||
| const size_type | maxSCFIter, | ||
| const bool | evaluateEnergyEverySCF, | ||
| const size_type | mixingHistory, | ||
| const double | mixingParameter, | ||
| const bool | isAdaptiveAndersonMixingParameter, | ||
| const atoms::AtomSuperpositionFunction< memorySpace > & | atomicElectronicChargeDensityFunction, | ||
| std::shared_ptr< const basis::FEBasisManager< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, memorySpaceHost, dim > > | feBMTotalCharge, | ||
| std::shared_ptr< const basis::FEBasisManager< ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim > > | feBMWaveFn, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > | feBDTotalChargeStiffnessMatrix, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > | feBDNuclearChargeRhs, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > | feBDElectronicChargeRhs, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > | feBDNuclChargeStiffnessMatrixNumSol, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > | feBDNuclChargeRhsNumSol, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > | feBDKineticHamiltonian, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > | feBDElectrostaticsHamiltonian, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > | feBDEXCHamiltonian, | ||
| const utils::ScalarSpatialFunctionReal & | externalPotentialFunction, | ||
| const std::string & | xcType, | ||
| std::shared_ptr< linearAlgebra::LinAlgOpContext< memorySpace > > | linAlgOpContext, | ||
| const OpContext & | MContextForInv = linearAlgebra::IdentityOperatorContext<ValueTypeOperator, ValueTypeOperand, memorySpace>(), |
||
| const OpContext & | MContext = linearAlgebra::IdentityOperatorContext<ValueTypeOperator, ValueTypeOperand, memorySpace>(), |
||
| const OpContext & | MInvContext = linearAlgebra::IdentityOperatorContext<ValueTypeOperator, ValueTypeOperand, memorySpace>(), |
||
| bool | isResidualChebyshevFilter = true |
||
| ) |

| dftefe::ksdft::KohnShamDFT< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim >::KohnShamDFT | ( | const std::vector< utils::Point > & | atomCoordinates, |
| const std::vector< double > & | atomCharges, | ||
| const std::vector< std::string > & | atomSymbolVec, | ||
| const double & | smearedChargeRadius, | ||
| const size_type | numElectrons, | ||
| const size_type | numWantedEigenvalues, | ||
| const double | smearingTemperature, | ||
| const double | fermiEnergyTolerance, | ||
| const double | fracOccupancyTolerance, | ||
| const double | eigenSolveResidualTolerance, | ||
| const double | scfDensityResidualNormTolerance, | ||
| const size_type | maxChebyshevFilterPass, | ||
| const size_type | maxSCFIter, | ||
| const bool | evaluateEnergyEverySCF, | ||
| const size_type | mixingHistory, | ||
| const double | mixingParameter, | ||
| const bool | isAdaptiveAndersonMixingParameter, | ||
| const atoms::AtomSuperpositionFunction< memorySpace > & | atomicTotalElectroPotentialFunction, | ||
| const atoms::AtomSuperpositionFunction< memorySpace > & | atomicElectronicChargeDensityFunction, | ||
| std::shared_ptr< const basis::FEBasisManager< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, memorySpaceHost, dim > > | feBMTotalCharge, | ||
| std::shared_ptr< const basis::FEBasisManager< ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim > > | feBMWaveFn, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > | feBDTotalChargeStiffnessMatrix, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > | feBDNuclearChargeRhs, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > | feBDElectronicChargeRhs, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > | feBDKineticHamiltonian, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > | feBDElectrostaticsHamiltonian, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > | feBDEXCHamiltonian, | ||
| const utils::ScalarSpatialFunctionReal & | externalPotentialFunction, | ||
| const std::string & | xcType, | ||
| std::shared_ptr< linearAlgebra::LinAlgOpContext< memorySpace > > | linAlgOpContext, | ||
| const OpContext & | MContextForInv = linearAlgebra::IdentityOperatorContext<ValueTypeOperator, ValueTypeOperand, memorySpace>(), |
||
| const OpContext & | MContext = linearAlgebra::IdentityOperatorContext<ValueTypeOperator, ValueTypeOperand, memorySpace>(), |
||
| const OpContext & | MInvContext = linearAlgebra::IdentityOperatorContext<ValueTypeOperator, ValueTypeOperand, memorySpace>(), |
||
| bool | isResidualChebyshevFilter = true, |
||
| const atoms::TCIADataParams & | params = TCIADataDefaults::TCIA_PARAMS |
||
| ) |

| dftefe::ksdft::KohnShamDFT< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim >::KohnShamDFT | ( | const std::vector< utils::Point > & | atomCoordinates, |
| const std::vector< double > & | atomCharges, | ||
| const std::vector< std::string > & | atomSymbolVec, | ||
| const double & | smearedChargeRadius, | ||
| const size_type | numElectrons, | ||
| const size_type | numWantedEigenvalues, | ||
| const double | smearingTemperature, | ||
| const double | fermiEnergyTolerance, | ||
| const double | fracOccupancyTolerance, | ||
| const double | eigenSolveResidualTolerance, | ||
| const double | scfDensityResidualNormTolerance, | ||
| const size_type | maxChebyshevFilterPass, | ||
| const size_type | maxSCFIter, | ||
| const bool | evaluateEnergyEverySCF, | ||
| const size_type | mixingHistory, | ||
| const double | mixingParameter, | ||
| const bool | isAdaptiveAndersonMixingParameter, | ||
| const atoms::AtomSuperpositionFunction< memorySpace > & | atomicElectronicChargeDensityFunction, | ||
| std::shared_ptr< const basis::FEBasisManager< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, memorySpaceHost, dim > > | feBMTotalCharge, | ||
| std::shared_ptr< const basis::FEBasisManager< ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim > > | feBMWaveFn, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > | feBDTotalChargeStiffnessMatrix, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > | feBDNuclearChargeRhs, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > | feBDElectronicChargeRhs, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > | feBDKineticHamiltonian, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > | feBDElectrostaticsHamiltonian, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > | feBDEXCHamiltonian, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > | feBDAtomCenterNonLocalOperator, | ||
| const std::map< std::string, std::string > & | atomSymbolToPSPFilename, | ||
| const std::string & | xcType, | ||
| std::shared_ptr< linearAlgebra::LinAlgOpContext< memorySpace > > | linAlgOpContext, | ||
| const OpContext & | MContextForInv = linearAlgebra::IdentityOperatorContext<ValueTypeOperator, ValueTypeOperand, memorySpace>(), |
||
| const OpContext & | MContext = linearAlgebra::IdentityOperatorContext<ValueTypeOperator, ValueTypeOperand, memorySpace>(), |
||
| const OpContext & | MInvContext = linearAlgebra::IdentityOperatorContext<ValueTypeOperator, ValueTypeOperand, memorySpace>(), |
||
| bool | isResidualChebyshevFilter = true |
||
| ) |

| dftefe::ksdft::KohnShamDFT< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim >::KohnShamDFT | ( | const std::vector< utils::Point > & | atomCoordinates, |
| const std::vector< double > & | atomCharges, | ||
| const std::vector< std::string > & | atomSymbolVec, | ||
| const double & | smearedChargeRadius, | ||
| const size_type | numElectrons, | ||
| const size_type | numWantedEigenvalues, | ||
| const double | smearingTemperature, | ||
| const double | fermiEnergyTolerance, | ||
| const double | fracOccupancyTolerance, | ||
| const double | eigenSolveResidualTolerance, | ||
| const double | scfDensityResidualNormTolerance, | ||
| const size_type | maxChebyshevFilterPass, | ||
| const size_type | maxSCFIter, | ||
| const bool | evaluateEnergyEverySCF, | ||
| const size_type | mixingHistory, | ||
| const double | mixingParameter, | ||
| const bool | isAdaptiveAndersonMixingParameter, | ||
| const atoms::AtomSuperpositionFunction< memorySpace > & | atomicTotalElectroPotentialFunction, | ||
| const atoms::AtomSuperpositionFunction< memorySpace > & | atomicElectronicChargeDensityFunction, | ||
| std::shared_ptr< const basis::FEBasisManager< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, memorySpaceHost, dim > > | feBMTotalCharge, | ||
| std::shared_ptr< const basis::FEBasisManager< ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim > > | feBMWaveFn, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > | feBDTotalChargeStiffnessMatrix, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > | feBDNuclearChargeRhs, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeElectrostaticsBasis, memorySpaceHost > > | feBDElectronicChargeRhs, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > | feBDKineticHamiltonian, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > | feBDElectrostaticsHamiltonian, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > | feBDEXCHamiltonian, | ||
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFunctionBasis, memorySpace > > | feBDAtomCenterNonLocalOperator, | ||
| const std::map< std::string, std::string > & | atomSymbolToPSPFilename, | ||
| const std::string & | xcType, | ||
| std::shared_ptr< linearAlgebra::LinAlgOpContext< memorySpace > > | linAlgOpContext, | ||
| const OpContext & | MContextForInv = linearAlgebra::IdentityOperatorContext<ValueTypeOperator, ValueTypeOperand, memorySpace>(), |
||
| const OpContext & | MContext = linearAlgebra::IdentityOperatorContext<ValueTypeOperator, ValueTypeOperand, memorySpace>(), |
||
| const OpContext & | MInvContext = linearAlgebra::IdentityOperatorContext<ValueTypeOperator, ValueTypeOperand, memorySpace>(), |
||
| bool | isResidualChebyshevFilter = true, |
||
| const atoms::TCIADataParams & | params = TCIADataDefaults::TCIA_PARAMS |
||
| ) |

| dftefe::ksdft::KohnShamDFT< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim >::~KohnShamDFT |
| double dftefe::ksdft::KohnShamDFT< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim >::getFreeEnergy |

| double dftefe::ksdft::KohnShamDFT< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim >::getGroundStateEnergy |

| void dftefe::ksdft::KohnShamDFT< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim >::printTotalInScopeTimings |


| void dftefe::ksdft::KohnShamDFT< ValueTypeElectrostaticsCoeff, ValueTypeElectrostaticsBasis, ValueTypeWaveFunctionCoeff, ValueTypeWaveFunctionBasis, memorySpace, dim >::solve |

|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |