Class PhaseElectrolyteCPAAdvanced
- All Implemented Interfaces:
Serializable, Cloneable, PhaseCPAInterface, PhaseEosInterface, PhaseInterface, ThermodynamicConstantsInterface
Implements an advanced electrolyte CPA model with the following Helmholtz energy contributions:
A_res = A_SRK + A_CPA + A_DH + A_Born_adv + A_SR_adv + A_IP
Key improvements over the standard e-CPA model:
- Ion-specific short-range parameters (W) instead of universal linear correlations
- Temperature-dependent Born radii with physical constraints from hydration data
- Quadratic temperature dependence in short-range interaction energies
- Ion-pair formation for 2:2 and select 2:1 electrolyte systems
References
- Maribo-Mogensen et al., Ind. Eng. Chem. Res. 2012, 51, 5353-5363
- Furst and Renon, AIChE J. 1993, 39(2), 335-343
- Born, Z. Physik 1920, 1, 45-48
- Debye and Huckel, Phys. Z. 1923, 24, 185-206
- Version:
- 1.0
- Author:
- Even Solbraa
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class PhaseModifiedFurstElectrolyteEos
PhaseModifiedFurstElectrolyteEos.DielectricMixingRule -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate doubleFlag to enable/disable the phase-level Born replacement.private doubleFlag to enable/disable the advanced short-range term.private doubleCached advanced Born solvation energy and derivatives.private doubleprivate doubleprivate doubleCached advanced short-range Helmholtz energy and derivatives.private doubleprivate doubleprivate doubleprivate doubleprivate doubleprivate doubleprivate doubleIon-pair correction to ionic strength.private doubleFlag to enable/disable ion-pair formation.private static final org.apache.logging.log4j.LoggerLogger object for class.private static final longSerialization version UID.Fields inherited from class PhaseElectrolyteCPA
assSiteNumber, corr2Matrix, corr3Matrix, corr4Matrix, cpamix, cpaon, cpaSelect, crossAccociationScheme, dFCPAdT, dFCPAdTdT, dFCPAdTdV, dFCPAdV, dFCPAdVdV, dFCPAdVdVdV, FCPA, gcpa, gcpavv, gcpavvv, hcpatot, moleculeNumber, oldTotalNumberOfAccociationSites, selfAccociationSchemeFields inherited from class PhaseModifiedFurstElectrolyteEos
alphaLR2, alphaLRdT, alphaLRdTdT, alphaLRdTdV, alphaLRdV, alphaLRdVdV, bornOn, bornX, diElectricConstantdT, diElectricConstantdTdT, diElectricConstantdTdV, diElectricConstantdV, diElectricConstantdVdV, electrolyteMixingRule, eps, epsdV, epsdVdV, epsIonic, epsIonicdV, epsIonicdVdV, gamma, gammaold, lrOn, shieldingParameter, shieldingParameterdT, solventDiElectricConstant, solventDiElectricConstantdT, solventDiElectricConstantdTdT, sr2On, W, WT, WTT, XLR, XLRdTFields inherited from class Phase
beta, calcMolarVolume, chemSyst, componentArray, diElectricConstant, mixingRuleType, molarVolume, numberOfComponents, numberOfMolesInPhase, phaseVolume, physicalPropertyHandler, pressure, pt, refPhase, temperature, thermoPropertyModelName, useVolumeCorrection, ZFields inherited from interface ThermodynamicConstantsInterface
atm, avagadroNumber, boltzmannConstant, electronCharge, faradayConstant, gravity, molarMassAir, normalStateTemperature, pi, planckConstant, R, referencePressure, referenceTemperature, standardStateTemperature, vacumPermittivity -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddComponent(String name, double moles, double molesInPhase, int compNumber) Add component to component array and update moles variables.private voidCalculate the advanced Born solvation term with temperature-dependent Born radii.private voidCalculate the advanced short-range term and all required derivatives.doubleCalculate the Born X parameter using advanced Born cavity radii.private voidCalculate ion-pair formation and its effect on ionic strength.doublecalcWi(int compNumb, PhaseInterface phase, double temperature, double pressure, int numbcomp) Calculate the composition-weighted short-range interaction parameter for a component using ion-specific parameters fromIonParametersAdvanced.doublecalcWiT(int compNumb, PhaseInterface phase, double temperature, double pressure, int numbcomp) Calculate the temperature derivative of the composition-weighted short-range interaction parameter using ion-specific parameters fromIonParametersAdvanced.clone()clone.doubledFdT()Calculate derivative of F per Temperature, i.e., dF/dT.doubledFdTdT()dFdTdT.doubledFdTdV()Calculate derivative of F per Temperature and Volume, i.e., dF/dT * 1/dV.doubledFdV()Calculate derivative of F per Volume, i.e., dF/dV.doubledFdVdV()dFdVdV.doubledFdVdVdV()dFdVdVdV.doubleGet the advanced Born solvation contribution to Helmholtz energy.doubleGet the advanced short-range contribution to Helmholtz energy.doublegetF()getF.doubleGet the fraction of ions forming ion pairs.voidsetAdvancedBornOn(double on) Enable or disable the advanced Born term.voidsetAdvancedSROn(double on) Enable or disable the advanced short-range term.voidsetIonPairOn(double on) Enable or disable ion-pair formation.voidvolInit()Initialize volume-dependent quantities including advanced terms.Methods inherited from class PhaseElectrolyteCPAstatoil
calc_g, calc_lngV, calc_lngVV, calc_lngVVVMethods inherited from class PhaseElectrolyteCPA
calcDelta, calcPressure, calcRootVolFinder, calcXsitedV, croeneckerProduct, dFCPAdT, dFCPAdTdT, dFCPAdTdV, dFCPAdV, dFCPAdVdV, dFCPAdVdVdV, FCPA, getCpaMixingRule, getCrossAssosiationScheme, getGcpa, getGcpav, getHcpatot, getTotalNumberOfAccociationSites, init, initCPAMatrix, molarVolume, molarVolume2, molarVolumeChangePhase, setGcpav, setHcpatot, setMixingRule, setTotalNumberOfAccociationSites, solveX, solveX2Methods inherited from class PhaseModifiedFurstElectrolyteEos
calcDiElectricConstant, calcDiElectricConstantdT, calcDiElectricConstantdTdT, calcDiElectricConstantdTdV, calcDiElectricConstantdV, calcDiElectricConstantdVdV, calcEps, calcEpsIonic, calcEpsIonicdV, calcEpsIonicdVdV, calcEpsV, calcEpsVV, calcGammaLRdV, calcShieldingParameter, calcShieldingParameterdT, calcSolventDiElectricConstant, calcSolventDiElectricConstantdT, calcSolventDiElectricConstantdTdT, calcW, calcWij, calcXLR, calcXLRdT, dFBorndT, dFBorndTdT, dFdAlphaLR, dFdAlphaLRdAlphaLR, dFdAlphaLRdGamma, dFdAlphaLRdV, dFdAlphaLRdX, dFLRdT, dFLRdTdT, dFLRdTdV, dFLRdV, dFLRdVdV, dFLRdVdVdV, dFSR2dT, dFSR2dTdT, dFSR2dTdV, dFSR2dV, dFSR2dVdV, dFSR2dVdVdV, FBorn, FBornD, FBornDD, FBornDX, FBornT, FBornTD, FBornTT, FBornTX, FBornX, FBornXX, FLR, FLRGammaLR, FLRV, FLRVV, FLRXLR, FSR2, FSR2eps, FSR2epseps, FSR2epsepseps, FSR2epsepsV, FSR2epsV, FSR2epsW, FSR2n, FSR2neps, FSR2nn, FSR2nT, FSR2nV, FSR2nW, FSR2T, FSR2Teps, FSR2Tn, FSR2TT, FSR2TV, FSR2TW, FSR2V, FSR2VV, FSR2VVeps, FSR2VVV, FSR2VW, FSR2W, FSR2WW, getAlphaLR2, getAlphaLRT, getAlphaLRV, getDielectricConstantdT, getDielectricConstantdV, getDielectricMixingRule, getDielectricT, getDielectricV, getElectrolyteMixingRule, getEps, getEpsdV, getEpsdVdV, getEpsIonic, getEpsIonicdV, getEpsIonicdVdV, getShieldingParameter, getSolventDiElectricConstant, getSolventDiElectricConstantdT, getSolventDiElectricConstantdTdT, getW, getWT, getXLR, reInitFurstParam, setDielectricMixingRule, setFurstIonicCoefficient, XBorndndn, XLRdGammaLR, XLRdndnMethods inherited from class PhaseEos
calcA, calcAi, calcAij, calcAiT, calcAT, calcATT, calcB, calcBi, calcBij, calcf, calcg, calcPressuredV, dFdN, dFdNdN, dFdNdT, dFdNdV, dFdxdxMatrix, dFdxdxMatrixSimple, dFdxMatrix, dFdxMatrixSimple, displayInteractionCoefficients, equals, F, fb, FB, fBB, FBB, FBD, FBT, fBV, FBV, FD, FDT, FDV, Fn, FnB, FnV, FT, FTT, FTV, fv, FV, fVV, FVV, fVVV, FVVV, gb, gBB, gBV, geta, geta, getA, getAresTV, getAT, getATT, getb, getb, getB, getCpres, getCvres, getdPdrho, getdPdTVn, getdPdVTn, getdrhodN, getdrhodP, getdrhodT, getdTVndSVnJaobiMatrix, getdUdSdSVn, getdUdSdVn, getdUdSVn, getdUdVdVSn, getdUdVSn, getdVdrho, getEosMixingRule, getf_loc, getg, getGradientVector, getGresTP, getHresdP, getHresTP, getJouleThomsonCoefficient, getKappa, getMixingRule, getMixingRuleName, getPressureAttractive, getPressureRepulsive, getSoundSpeed, getSresTP, getSresTV, getUSVHessianMatrix, gV, gVV, gVVV, resetMixingRule, setMixingRuleGEModelMethods inherited from class Phase
addComponent, addMoles, addMolesChemReac, calcA, calcAT, calcMolarVolume, calcR, getActivityCoefficient, getActivityCoefficient, getActivityCoefficient, getActivityCoefficientSymetric, getActivityCoefficientUnSymetric, getAiT, getAlpha0_EOSCG, getAlpha0_GERG2008, getAlpha0_Leachman, getAlpha0_Leachman, getAlpha0_Vega, getAlphares_EOSCG, getAlphares_GERG2008, getAlphares_Leachman, getAlphares_Leachman, getAlphares_Vega, getAntoineVaporPressure, getBeta, getBi, getComponent, getComponent, getcomponentArray, getComponentNames, getComponents, getComponentWithIndex, getComposition, getCompressibilityX, getCompressibilityY, getCorrectedVolume, getCp, getCp, getCp0, getCv, getCv, getDensity, getDensity, getDensity_AGA8, getDensity_EOSCG, getDensity_GERG2008, getDensity_Leachman, getDensity_Leachman, getDensity_Vega, getDielectricConstant, getEnthalpy, getEnthalpy, getEnthalpydP, getEnthalpydT, getEntropy, getEntropy, getEntropydP, getEntropydT, getExcessGibbsEnergy, getExcessGibbsEnergySymetric, getFlowRate, getFugacity, getFugacity, getGamma, getGibbsEnergy, getHelmholtzEnergy, getHID, getInfiniteDiluteFugacity, getInfiniteDiluteFugacity, getInitType, getInternalEnergy, getInternalEnergy, getIsobaricThermalExpansivity, getIsothermalCompressibility, getJouleThomsonCoefficient, getLogActivityCoefficient, getLogInfiniteDiluteFugacity, getLogInfiniteDiluteFugacity, getLogPureComponentFugacity, getLogPureComponentFugacity, getMass, getMeanIonicActivity, getMixGibbsEnergy, getMixingRuleType, getModelName, getMolalMeanIonicActivity, getMolarComposition, getMolarMass, getMolarMass, getMolarVolume, getMolarVolume, getMoleFraction, getNumberOfComponents, getNumberOfIonicComponents, getNumberOfMolecularComponents, getNumberOfMolesInPhase, getOsmoticCoefficient, getOsmoticCoefficientOfWater, getOsmoticCoefficientOfWaterMolality, getpH, getpH, getPhase, getPhysicalProperties, getPhysicalPropertyModel, getPressure, getPressure, getProperties_EOSCG, getProperties_GERG2008, getProperties_Leachman, getProperties_Leachman, getProperties_Vega, getPseudoCriticalPressure, getPseudoCriticalTemperature, getPureComponentFugacity, getPureComponentFugacity, getRefPhase, getRefPhase, getSoundSpeed, getTemperature, getTemperature, getThermalConductivity, getThermalConductivity, getThermoPropertyModelName, getTotalVolume, getType, getViscosity, getViscosity, getVolume, getVolume, getWaterDensity, getWtFrac, getWtFrac, getWtFraction, getWtFractionOfWaxFormingComponents, getZ, getZvolcorr, groupTBPfractions, hasComponent, hasPlusFraction, hasTBPFraction, initPhysicalProperties, initPhysicalProperties, initRefPhases, initRefPhases, isConstantPhaseVolume, isMixingRuleDefined, normalize, removeComponent, resetPhysicalProperties, setAttractiveTerm, setBeta, setComponentArray, setConstantPhaseVolume, setEmptyFluid, setInitType, setMolarVolume, setMoleFractions, setNumberOfComponents, setParams, setPhysicalProperties, setPhysicalPropertyModel, setPpm, setPressure, setProperties, setRefPhase, setRefPhase, setTemperature, setTotalVolume, setType, useVolumeCorrection, useVolumeCorrectionMethods inherited from class Object
finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface PhaseCPAInterface
calc_hCPAMethods inherited from interface PhaseEosInterface
calcPressuredV, dFdN, dFdNdN, dFdNdT, dFdNdV, displayInteractionCoefficients, F, getAresTV, getEosMixingRule, getMixingRuleName, getMolarVolume, getPressureAttractive, getPressureRepulsive, getSresTVMethods inherited from interface PhaseInterface
addMoles, addMolesChemReac, addMolesChemReac, calcA, calcAi, calcAij, calcAiT, calcAT, calcB, calcBi, calcBij, calcMolarVolume, calcR, fb, FB, fBB, FBB, FBD, FBT, fBV, FBV, FD, FDT, FDV, Fn, FnB, FnV, FT, FTT, FTV, fv, FV, fVV, FVV, gb, gBB, gBV, geta, getA, getActivityCoefficient, getActivityCoefficient, getActivityCoefficient, getActivityCoefficientSymetric, getActivityCoefficientUnSymetric, getAlpha0_EOSCG, getAlpha0_GERG2008, getAlpha0_Leachman, getAlpha0_Leachman, getAlpha0_Vega, getAlphares_EOSCG, getAlphares_GERG2008, getAlphares_Leachman, getAlphares_Leachman, getAlphares_Vega, getAntoineVaporPressure, getAT, getATT, getb, getB, getBeta, getComponent, getComponent, getcomponentArray, getComponentNames, getComponents, getComponentWithIndex, getComposition, getCompressibilityX, getCompressibilityY, getCorrectedVolume, getCp, getCp, getCp0, getCpres, getCv, getCv, getDensity, getDensity, getDensity_AGA8, getDensity_EOSCG, getDensity_GERG2008, getDensity_Leachman, getDensity_Leachman, getDensity_Vega, getdPdrho, getdPdTVn, getdPdVTn, getdrhodN, getdrhodP, getdrhodT, getEnthalpy, getEnthalpy, getEnthalpydP, getEnthalpydT, getEntropy, getEntropy, getEntropydP, getEntropydT, getExcessGibbsEnergy, getExcessGibbsEnergySymetric, getFlowRate, getFugacity, getFugacity, getg, getGamma, getGamma2, getGibbsEnergy, getGresTP, getHelmholtzEnergy, getHresTP, getInfiniteDiluteFugacity, getInitType, getInternalEnergy, getInternalEnergy, getIsobaricThermalExpansivity, getIsothermalCompressibility, getJouleThomsonCoefficient, getJouleThomsonCoefficient, getKappa, getLogActivityCoefficient, getLogInfiniteDiluteFugacity, getLogInfiniteDiluteFugacity, getLogPureComponentFugacity, getMass, getMeanIonicActivity, getMixGibbsEnergy, getMixingRule, getMixingRuleType, getModelName, getMolalMeanIonicActivity, getMolarComposition, getMolarMass, getMolarMass, getMolarVolume, getMoleFraction, getNumberOfComponents, getNumberOfIonicComponents, getNumberOfMolecularComponents, getNumberOfMolesInPhase, getOsmoticCoefficient, getOsmoticCoefficientOfWater, getOsmoticCoefficientOfWaterMolality, getpH, getpH, getPhase, getPhaseFraction, getPhaseTypeName, getPhysicalProperties, getPhysicalPropertyModel, getPressure, getPressure, getProperties_EOSCG, getProperties_GERG2008, getProperties_Leachman, getProperties_Leachman, getProperties_Vega, getPseudoCriticalPressure, getPseudoCriticalTemperature, getPureComponentFugacity, getPureComponentFugacity, getRefPhase, getRefPhase, getSoundSpeed, getSoundSpeed, getSresTP, getTemperature, getTemperature, getThermalConductivity, getThermalConductivity, getTotalVolume, getType, getViscosity, getViscosity, getVolume, getVolume, getWaterDensity, getWtFrac, getWtFrac, getWtFraction, getWtFractionOfWaxFormingComponents, getZ, getZvolcorr, gV, gVV, hasComponent, hasComponent, hasIons, hasPlusFraction, hasTBPFraction, init, init, initPhysicalProperties, initPhysicalProperties, initPhysicalProperties, initRefPhases, isAsphalteneRich, isConstantPhaseVolume, isMixingRuleDefined, normalize, removeComponent, resetMixingRule, resetPhysicalProperties, setAttractiveTerm, setBeta, setComponentArray, setConstantPhaseVolume, setEmptyFluid, setInitType, setMixingRule, setMixingRuleGEModel, setMolarVolume, setMoleFractions, setNumberOfComponents, setParams, setPhaseTypeName, setPhysicalProperties, setPhysicalProperties, setPhysicalPropertyModel, setPpm, setPressure, setProperties, setRefPhase, setRefPhase, setTemperature, setTotalVolume, setType, useVolumeCorrection, useVolumeCorrection
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDSerialization version UID.- See Also:
-
logger
private static final org.apache.logging.log4j.Logger loggerLogger object for class. -
advSROn
private double advSROnFlag to enable/disable the advanced short-range term. Disabled by default until ion-specific W parameters are fitted in the correct NeqSim unit system (wij ~ 1e-5). -
advBornOn
private double advBornOnFlag to enable/disable the phase-level Born replacement. Disabled because the advanced Born radii are now applied through the component-level XBorni override and the overridden calcBornX() method, which makes the parent's Born term automatically use advanced radii. -
ionPairOn
private double ionPairOnFlag to enable/disable ion-pair formation. -
fAdvSR
private double fAdvSRCached advanced short-range Helmholtz energy and derivatives. -
fAdvSRdT
private double fAdvSRdT -
fAdvSRdV
private double fAdvSRdV -
fAdvSRdTdT
private double fAdvSRdTdT -
fAdvSRdTdV
private double fAdvSRdTdV -
fAdvSRdVdV
private double fAdvSRdVdV -
fAdvSRdVdVdV
private double fAdvSRdVdVdV -
fAdvBorn
private double fAdvBornCached advanced Born solvation energy and derivatives. -
fAdvBorndT
private double fAdvBorndT -
fAdvBorndTdT
private double fAdvBorndTdT -
ionPairFractionReduction
private double ionPairFractionReductionIon-pair correction to ionic strength.
-
-
Constructor Details
-
PhaseElectrolyteCPAAdvanced
public PhaseElectrolyteCPAAdvanced()Constructor for PhaseElectrolyteCPAAdvanced.
-
-
Method Details
-
addComponent
Add component to component array and update moles variables.
- Specified by:
addComponentin interfacePhaseInterface- Overrides:
addComponentin classPhaseElectrolyteCPAstatoil- Parameters:
name- Name of component.moles- Total number of moles of component.molesInPhase- Number of moles in phase.compNumber- Index number of component in phase object component array.
-
clone
clone.
- Specified by:
clonein interfacePhaseInterface- Overrides:
clonein classPhaseElectrolyteCPAstatoil- Returns:
- a
PhaseInterfaceobject
-
calcBornX
public double calcBornX()Calculate the Born X parameter using advanced Born cavity radii.The parent implementation hardcodes bornX = sum(n_i * z_i^2 / sigma_i), using the Lennard-Jones diameter. This override computes bornX directly from the temperature-dependent Born cavity radii in
IonParametersAdvanced, without depending on component Finit() having been called (avoiding the init-order chicken-and-egg problem).For ions without advanced parameters, the calculation falls back to the parent's formula using the Lennard-Jones diameter.
- Overrides:
calcBornXin classPhaseModifiedFurstElectrolyteEos- Returns:
- bornX sum for the phase
-
calcWi
public double calcWi(int compNumb, PhaseInterface phase, double temperature, double pressure, int numbcomp) Calculate the composition-weighted short-range interaction parameter for a component using ion-specific parameters fromIonParametersAdvanced.For ions with advanced parameters, this replaces the universal linear correlation (W = a*sigma + b) with ion-specific W(T) = W0 + WT*(T-298.15) + WTT*(T-298.15)^2 for their interaction with water. For non-water solvents and ions without advanced parameters, the parent mixing rule is used.
- Overrides:
calcWiin classPhaseModifiedFurstElectrolyteEos- Parameters:
compNumb- component indexphase- phase objecttemperature- temperature in Kelvinpressure- pressure in baranumbcomp- number of components- Returns:
- composition-weighted W parameter for component compNumb
-
calcWiT
public double calcWiT(int compNumb, PhaseInterface phase, double temperature, double pressure, int numbcomp) Calculate the temperature derivative of the composition-weighted short-range interaction parameter using ion-specific parameters fromIonParametersAdvanced.- Overrides:
calcWiTin classPhaseModifiedFurstElectrolyteEos- Parameters:
compNumb- component indexphase- phase objecttemperature- temperature in Kelvinpressure- pressure in baranumbcomp- number of components- Returns:
- temperature derivative of composition-weighted W parameter
-
volInit
public void volInit()Initialize volume-dependent quantities including advanced terms.- Overrides:
volInitin classPhaseModifiedFurstElectrolyteEos
-
calcAdvancedSRTerms
private void calcAdvancedSRTerms()Calculate the advanced short-range term and all required derivatives.This replaces the universal SR correlation with ion-specific parameters from IonParametersAdvanced. The term accounts for non-electrostatic ion-solvent interactions including hydration effects, cavity formation, and dispersion forces.
-
calcAdvancedBornTerms
private void calcAdvancedBornTerms()Calculate the advanced Born solvation term with temperature-dependent Born radii.This extends the standard Born term by allowing Born radii to vary with temperature. The physical basis is that the ion-solvent cavity expands with temperature as the hydration shell becomes more loosely structured.
All values are in reduced form (divided by RT) consistent with NeqSim conventions.
-
calcIonPairReduction
private void calcIonPairReduction()Calculate ion-pair formation and its effect on ionic strength.For 2:2 electrolyte pairs (e.g., MgSO4, CaSO4), explicit ion-pair formation reduces the effective number of free ions. This correction is applied to the long-range (DH) term by reducing the ion concentration used in the shielding parameter calculation.
-
getF
-
dFdT
public double dFdT()Calculate derivative of F per Temperature, i.e., dF/dT.
- Specified by:
dFdTin interfacePhaseInterface- Overrides:
dFdTin classPhaseElectrolyteCPA- Returns:
- a double
-
dFdTdT
public double dFdTdT()dFdTdT.
- Specified by:
dFdTdTin interfacePhaseInterface- Overrides:
dFdTdTin classPhaseElectrolyteCPA- Returns:
- a double
-
dFdV
public double dFdV()Calculate derivative of F per Volume, i.e., dF/dV.
- Specified by:
dFdVin interfacePhaseInterface- Overrides:
dFdVin classPhaseElectrolyteCPA- Returns:
- a double
-
dFdVdV
public double dFdVdV()dFdVdV.
- Specified by:
dFdVdVin interfacePhaseInterface- Overrides:
dFdVdVin classPhaseElectrolyteCPA- Returns:
- a double
-
dFdVdVdV
public double dFdVdVdV()dFdVdVdV.
- Overrides:
dFdVdVdVin classPhaseElectrolyteCPA- Returns:
- a double
-
dFdTdV
public double dFdTdV()Calculate derivative of F per Temperature and Volume, i.e., dF/dT * 1/dV.
- Specified by:
dFdTdVin interfacePhaseInterface- Overrides:
dFdTdVin classPhaseElectrolyteCPA- Returns:
- a double
-
setAdvancedSROn
public void setAdvancedSROn(double on) Enable or disable the advanced short-range term.- Parameters:
on- 1.0 to enable, 0.0 to disable
-
setAdvancedBornOn
public void setAdvancedBornOn(double on) Enable or disable the advanced Born term.- Parameters:
on- 1.0 to enable, 0.0 to disable
-
setIonPairOn
public void setIonPairOn(double on) Enable or disable ion-pair formation.- Parameters:
on- 1.0 to enable, 0.0 to disable
-
getIonPairFractionReduction
public double getIonPairFractionReduction()Get the fraction of ions forming ion pairs.- Returns:
- ion pair fraction reduction (0 to 0.95)
-
getAdvancedBornEnergy
public double getAdvancedBornEnergy()Get the advanced Born solvation contribution to Helmholtz energy.- Returns:
- F_Born_adv
-
getAdvancedSREnergy
public double getAdvancedSREnergy()Get the advanced short-range contribution to Helmholtz energy.- Returns:
- F_SR_adv
-