Optional inputs
In addition to the mandatory inputs required for the various flash calculations, three additional inputs may also be present to control the calculation or for requesting additional data in the output. These are:-
included/excluded solids
optional properties
output units
In this example, let's assume the chemistry model file contains H2O, NACL, CO2 and BENZENE as inflows and is using the MSE thermodynamic framework.
include or exclude solid species from precipitating
OLI flash computations by default account for the formation of all solid species in the chemistry model. However, users can choose a subset of solid species in the computation by specifying them in the params.excludedSolids or params.includedSolids array. Example input and description are given below.
Note: Solids must be specified using the fully qualified tag. This is returned as the trueName when using the Chemistry Information API.
params
type
description
excludedSolids
[string]
list of excluded solid species in the flash computation
includedSolids
[string]
list of included solid species in flash computation, if an empty array is specified, all solids will be excluded
params.excludedSolids and params.includedSolids cannot be specified at the same time.
Optional properties
After the equilibrium solution is obtained, the user has the option to specify a number of optional properties to be computed along with this output. These can be turned on or off using a Boolean flag (true/false) in the params.optionalProperties object. Example input and description is given below
params.optionalProperties
type
desc
electricalConductivity
bool
Electrical conductivity of the liquid phase
viscosity
bool
Viscosity for any liquid or gas phases
selfDiffusivityAndMobility
bool
Self diffusivity and mobility for any liquid or gas phases
heatCapacity
bool
Heat capacity for any phases
thermalConductivity
bool
Thermal conductivity for any phases
surfaceTension
bool
Surface tension for any liquid phases
interfacialTension
bool
Interfacial tension between liquid1 and liquid2 phases
volumeStdConditions
bool
liquid1, liquid2, and vapor phase volume at standard conditions
prescalingTendenciesEstimated
bool
prescaling tendencies of solids using the estimated method
prescalingIndexEstimated
bool
prescaling indices of solids using the estimated method
prescalingTendenciesRigorous
bool
prescaling tendencies of solids using the rigorous method
prescalingIndexRigorous
bool
prescaling indices of solids using the rigorous method
scalingTendencies
bool
scaling tendencies of solids
scalingIndex
bool
scaling indices of solids
hardness
bool
hardness of liquid1 phase
ionicStrengthXBased
bool
x-based ionic strength of any liquid phases
ionicStrengthMBased
bool
m-based ionic strength of any liquid phases
totalDissolvedSolids
bool
total dissolved solids in the liquid1 phase
vaporToInflowMoleFraction
bool
vapor to inflow mole fraction
partialPressure
bool
vapor phase partial pressures of all species
vaporDiffusivityMatrix
bool
vapor diffusivity matrix
entropyStream
bool
entropy of stream for all phases
entropySpecies
bool
entropy of each species for all phases
entropyStreamStandardState
bool
entropy of stream at standard state for all phases
entropySpeciesStandardState
bool
entropy of each species at standard state for all phases
gibbsEnergyStream
bool
Gibbs free energy of stream for all phases
gibbsEnergySpecies
bool
Gibbs free energy of each species for all phases
gibbsEnergyStreamStandardState
bool
Gibbs free energy of stream at standard state for all phases
gibbsEnergySpeciesStandardState
bool
Gibbs free energy of each species at standard state for all phases
activityCoefficientsMBased
bool
m-based activity coefficients of each species for all liquid phases
activityCoefficientsXBased
bool
x-based activity coefficients of each species for all liquid phases
fugacityCoefficients
bool
fugacity coefficients of each species for liquid2 and vapor phases
vaporFugacity
bool
fugacities of each species for vapor phase
kValuesXBased
bool
x-based K-values for all equilibrium reactions
kValuesMBased
bool
x-based M-values for all equilibrium reactions
materialBalanceGroup
bool
material balance group compositions for all phases
params.optionalProperties.volumeStdConditions calculate liquid1, liquid2, and vapor phase volume at default standard conditions, which can be specified in here.
params.optionalProperties.scalingInductionTime calculates induction time for scaling solids. Additional inputs are needed for this calculation and explained here. This property is only supported for MSE and MSE-SRK thermodynamic properties.
Scaling Induction Time
Induction time is estimated based on the supersaturation level of the scaling solid. Therefore, such solids need to be excluded to calculate their induction times, as specified below.
Standard conditions
Standard conditions can be specified to calculate the optional property params.optionalProperties.volumeStdConditions.
params.standardConditions[i]
type
description
phase
string
name of the phase, which can be oil, aqueous, or gas
phase
default temperature in °C
default pressure in atm
oil
15.5556
1.0
gas
16.8500
1.48038
aqueous
25.0
1.0
Output units
Users can optionally specify units of the output values in the Stream output. More details are explained in User-defined output unit set.
params.unitSetInfo is optional. OLIEngine default units will be used if this object is not specified.
Molecular conversion
There are two types of speciation information in the stream output: true concentration and molecular concentration. While the true concentration reflects the speciation of the real species which is unique, the molecular concentration is one of many representations for the true species in molecular/inflow forms. Users have the option to specify three weighting methods for this molecular conversion:
automatic
no weightage preference
inflowRateBased
weightage is proportional to input inflow values
userSpecified
user-specified weight factors for any inflows
molecularConversion.weightFactors object is only specified when molecularConversion.option is "userSpecified". The weight factor of each inflow is specified as "inflow_name": number, in the range from 0.0 to 100.0
params.molecularConversion object is optional. By default, "inflowRateBased" option is used.
JSON input (sample)
Below is the sample JSON input covering all three options using isothermal flash as an example.
Last updated