-
bubble_pressure,bubble_temperature,dew_pressure, anddew_temperaturecan now support custom methods. (subtypingBubblePointMethodorDewPointMethod). the default methods are now namedChemPotBubblePressure,ChemPotBubbleTemperature,ChemPotDewPressure,ChemPotDewTemperature. you can provide some or all necessary initial conditions to those new methods:res = bubble_pressure(model,T,x,ChemPotBubblePressure(;y0;p0;vol0)) -
New bubble/dew methods based on isofugacity conditions:
FugtBubblePressure,FugBubbleTemperature,FugDewPressure,FugtDewTemperature. -
All bubble methods now support leaving some components out of the bubble phase,via the
nonvolatileskeyword, supported by all available bubble solvers. similarly, all dew methods support thenoncondensableskeyword to leave some components out of the dew phase. -
MichelsenTPFlashcan support bothnonvolatilesandnoncondensables. -
SingleParamandPairParamsupport indexing and broadcasting.PairParamhas a modified indexing scheme, whereparam[i]will return the diagonal elements,param[i,j]will return off-diagonal elements.setindex!onPairParamis symmetric by default, that is,param[i,j] = kwill also setparam[j,i]. you can opt out of this by doingparam[i,j,false] = k -
New function:
diagvalues, for obtaining a vector view of the diagonal elements of a Pair or Single Parameter. -
New functions:
VT_gibbs_free_energy_resandVT_helmholtz_free_energy_res -
New saturation method:
saturation_temperature(model,p,::SuperAncSaturation) -
index_reduction(model,x::AbstractVector{Bool})will return a reduced model, according to the true values of the vectorx. Passing another vector will perform the index reduction based on non-empty values, as usual. -
Initial (and optional) support for solid phase volume solving, via
x0_volume_solid -
New EoS (experimental):
AnalyticalSLV, that supports solid, liquid and vapour phases in one continous helmholtz functional. -
the database parser is faster and has better verbose reporting.
-
SAFTVRMieandSAFTGammaMieshould be a little faster on single component evaluations
activity_coefficientandfugacity_coefficientnow works withSVector#104- there was a bug on calculating the length of GC models that went under
split_model
-
model.params.param.diagvaluesis not longer used in the codebase and it will be removed at the next breaking version. usediagvalues(model.params.param)ormodel.params.param[i]instead. -
model.icomponentsis not longer used in the codebase and it will be removed at the next breaking version.1:length(model)orClapeyron.@compsinstead.