JDFTx  1.4.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Fex Class Referenceabstract

Abstract base class for excess functionals. More...

#include <Fex.h>

Inheritance diagram for Fex:
Fex_H2O_BondedVoids Fex_H2O_FittedCorrelations Fex_LJ Fex_ScalarEOS

Public Member Functions

 Fex (const FluidMixture *, const FluidComponent *)
 
virtual double compute (const ScalarFieldTilde *Ntilde, ScalarFieldTilde *Phi_Ntilde) const =0
 
virtual double computeUniform (const double *N, double *Phi_N) const =0
 

Public Attributes

const Moleculemolecule
 
const GridInfogInfo
 
const double T
 

Detailed Description

Abstract base class for excess functionals.

Member Function Documentation

virtual double Fex::compute ( const ScalarFieldTilde Ntilde,
ScalarFieldTilde Phi_Ntilde 
) const
pure virtual

Return the excess free energy given the reciprocal space site densities and accumulate the gradient (functional derivative) w.r.t them in Phi_Ntilde

Implemented in Fex_ScalarEOS, Fex_LJ, Fex_H2O_BondedVoids, and Fex_H2O_FittedCorrelations.

virtual double Fex::computeUniform ( const double *  N,
double *  Phi_N 
) const
pure virtual

Return the uniform fluid excess free energy density given the site densities N and accumulate the derivative w.r.t them in Phi_N. This MUST return the result corresponding to calling compute() with a uniform scalar field. This is called several times during FluidMixture::initialize() to get the desired bulk properties

Implemented in Fex_ScalarEOS, Fex_LJ, Fex_H2O_BondedVoids, and Fex_H2O_FittedCorrelations.


The documentation for this class was generated from the following file: