21 #ifndef JDFTX_ELECTRONIC_VDWCOUPLING_H 22 #define JDFTX_ELECTRONIC_VDWCOUPLING_H 24 #include <fluid/Fmix.h> 25 #include <fluid/Molecule.h> 26 #include <fluid/FluidMixture.h> 27 #include <electronic/common.h> 28 #include <electronic/VanDerWaals.h> 40 double computeUniform(
const std::vector<double>& N, std::vector<double>& Phi_N)
const;
45 const std::vector< std::vector< vector3<> > >& atpos;
46 const std::shared_ptr<VanDerWaals>& vdW;
48 std::vector<int> atomicNumber;
51 #endif // JDFTX_ELECTRONIC_VDWCOUPLING_H double computeUniform(const std::vector< double > &N, std::vector< double > &Phi_N) const
Mixture of fluids that provides the total free energy functional for minimization Constructing Fex an...
Definition: FluidMixture.h:32
string getName() const
A string identifier for this mixing functional (used in EnergyComponent label)
Abstract base class for mixing functionals: interactions between fluids (beyond hard sphere and scale...
Definition: Fmix.h:29
double compute(const ScalarFieldTildeArray Ñ, ScalarFieldTildeArray &Phi_Ntilde) const
double energyAndGrad(const ScalarFieldTildeArray Ñ, ScalarFieldTildeArray *Phi_Ntilde=0, IonicGradient *forces=0) const
Main energy and gradients function.
Van der Waals coupling between atoms from electronic DFT and fluid density fields.
Definition: VDWCoupling.h:31
Object to hold all the forces.
Definition: IonicMinimizer.h:31
std::vector< ScalarFieldTilde > ScalarFieldTildeArray
dynamic size collection of reciprocal space scalar fields
Definition: ScalarFieldArray.h:33