21 #ifndef JDFTX_ELECTRONIC_CONVCOUPLING_H 22 #define JDFTX_ELECTRONIC_CONVCOUPLING_H 24 #include <fluid/Fmix.h> 25 #include <fluid/Molecule.h> 26 #include <fluid/FluidMixture.h> 27 #include <electronic/common.h> 43 double computeUniform(
const std::vector<double>& N, std::vector<double>& Phi_N)
const;
50 const std::vector<const FluidComponent*>& component;
54 #endif // JDFTX_ELECTRONIC_CONVCOUPLING_H double compute(const ScalarFieldTildeArray Ñ, ScalarFieldTildeArray &Phi_Ntilde) const
Mixture of fluids that provides the total free energy functional for minimization Constructing Fex an...
Definition: FluidMixture.h:32
std::shared_ptr< ScalarFieldTildeData > ScalarFieldTilde
A smart reference-counting pointer to ScalarFieldTildeData.
Definition: ScalarField.h:45
double energyAndGrad(const ScalarFieldTildeArray Ñ, ScalarFieldTildeArray *Phi_Ntilde=0, ScalarFieldTilde *Phi_nCavityTilde=0) const
Main energy and gradients function.
Abstract base class for mixing functionals: interactions between fluids (beyond hard sphere and scale...
Definition: Fmix.h:29
Convolution coupling between electrons and fluids.
Definition: ConvCoupling.h:30
string getName() const
A string identifier for this mixing functional (used in EnergyComponent label)
void setExplicit(const ScalarFieldTilde &nCavityTilde)
double computeUniform(const std::vector< double > &N, std::vector< double > &Phi_N) const
std::shared_ptr< ScalarFieldData > ScalarField
A smart reference-counting pointer to ScalarFieldData.
Definition: ScalarField.h:41
std::vector< ScalarFieldTilde > ScalarFieldTildeArray
dynamic size collection of reciprocal space scalar fields
Definition: ScalarFieldArray.h:33