DFT-FE 1.1.0-pre
Density Functional Theory With Finite-Elements
Loading...
Searching...
No Matches
energyCalculator.h File Reference
#include <headers.h>
#include <dftd.h>
#include <excManager.h>
#include "dftParameters.h"
#include <FEBasisOperations.h>
#include <AuxDensityMatrix.h>

Go to the source code of this file.

Classes

class  dftfe::energyCalculator< memorySpace >
 Calculates the ksdft problem total energy and its components. More...
 

Namespaces

namespace  dftfe
 
namespace  dftfe::internalEnergy
 

Functions

template<typename T>
double dftfe::internalEnergy::computeFieldTimesDensity (const std::shared_ptr< dftfe::basis::FEBasisOperations< T, double, dftfe::utils::MemorySpace::HOST > > &basisOperationsPtr, const unsigned int quadratureId, const std::map< dealii::CellId, std::vector< double > > &fieldValues, const dftfe::utils::MemoryStorage< double, dftfe::utils::MemorySpace::HOST > &densityQuadValues)
 
template<typename T>
double dftfe::internalEnergy::computeFieldTimesDensityResidual (const std::shared_ptr< dftfe::basis::FEBasisOperations< T, double, dftfe::utils::MemorySpace::HOST > > &basisOperationsPtr, const unsigned int quadratureId, const std::map< dealii::CellId, std::vector< double > > &fieldValues, const dftfe::utils::MemoryStorage< double, dftfe::utils::MemorySpace::HOST > &densityQuadValuesIn, const dftfe::utils::MemoryStorage< double, dftfe::utils::MemorySpace::HOST > &densityQuadValuesOut)
 
template<typename T>
double dftfe::internalEnergy::computeFieldTimesDensity (const std::shared_ptr< dftfe::basis::FEBasisOperations< T, double, dftfe::utils::MemorySpace::HOST > > &basisOperationsPtr, const unsigned int quadratureId, const dftfe::utils::MemoryStorage< double, dftfe::utils::MemorySpace::HOST > &fieldValues, const dftfe::utils::MemoryStorage< double, dftfe::utils::MemorySpace::HOST > &densityQuadValues)
 
template<typename T>
double dftfe::internalEnergy::computeFieldTimesDensityResidual (const std::shared_ptr< dftfe::basis::FEBasisOperations< T, double, dftfe::utils::MemorySpace::HOST > > &basisOperationsPtr, const unsigned int quadratureId, const dftfe::utils::MemoryStorage< double, dftfe::utils::MemorySpace::HOST > &fieldValues, const dftfe::utils::MemoryStorage< double, dftfe::utils::MemorySpace::HOST > &densityQuadValuesIn, const dftfe::utils::MemoryStorage< double, dftfe::utils::MemorySpace::HOST > &densityQuadValuesOut)
 
void dftfe::internalEnergy::printEnergy (const double bandEnergy, const double totalkineticEnergy, const double totalexchangeEnergy, const double totalcorrelationEnergy, const double totalElectrostaticEnergy, const double dispersionEnergy, const double totalEnergy, const unsigned int numberAtoms, const dealii::ConditionalOStream &pcout, const bool reproducibleOutput, const bool isPseudo, const unsigned int verbosity, const dftParameters &dftParams)
 
double dftfe::internalEnergy::localBandEnergy (const std::vector< std::vector< double > > &eigenValues, const std::vector< std::vector< double > > &partialOccupancies, const std::vector< double > &kPointWeights, const double fermiEnergy, const double fermiEnergyUp, const double fermiEnergyDown, const double TVal, const unsigned int spinPolarized, const dealii::ConditionalOStream &scout, const MPI_Comm &interpoolcomm, const unsigned int lowerBoundKindex, const unsigned int verbosity, const dftParameters &dftParams)
 
double dftfe::internalEnergy::nuclearElectrostaticEnergyLocal (const distributedCPUVec< double > &phiTotRhoOut, const std::vector< std::vector< double > > &localVselfs, const std::map< dealii::CellId, std::vector< double > > &smearedbValues, const std::map< dealii::CellId, std::vector< unsigned int > > &smearedbNonTrivialAtomIds, const dealii::DoFHandler< 3 > &dofHandlerElectrostatic, const dealii::Quadrature< 3 > &quadratureElectrostatic, const dealii::Quadrature< 3 > &quadratureSmearedCharge, const std::map< dealii::types::global_dof_index, double > &atomElectrostaticNodeIdToChargeMap, const bool smearedNuclearCharges=false)
 
double dftfe::internalEnergy::nuclearElectrostaticEnergyResidualLocal (const distributedCPUVec< double > &phiTotRhoIn, const distributedCPUVec< double > &phiTotRhoOut, const std::map< dealii::CellId, std::vector< double > > &smearedbValues, const std::map< dealii::CellId, std::vector< unsigned int > > &smearedbNonTrivialAtomIds, const dealii::DoFHandler< 3 > &dofHandlerElectrostatic, const dealii::Quadrature< 3 > &quadratureSmearedCharge, const std::map< dealii::types::global_dof_index, double > &atomElectrostaticNodeIdToChargeMap, const bool smearedNuclearCharges=false)
 
double dftfe::internalEnergy::computeRepulsiveEnergy (const std::vector< std::vector< double > > &atomLocationsAndCharge, const bool isPseudopotential)