Skip to main content

Process Reference

This page documents the YAML configuration keys for the eCalc Asset model, covering the following top-level sections:

DEFINITIONS

Contains reusable definitions such as process units and fluids.

PROCESS_UNITS

Defines process units used in PROCESS_PIPELINES.

COMPRESSOR

A Compressor process unit

TYPE: COMPRESSOR
COMPRESSOR_MODEL: ...
KeyDescriptionStatus
TYPECOMPRESSORRequired
COMPRESSOR_MODELRequired
COMPRESSOR_MODEL
TYPE: COMPRESSOR_CHART
CHART: ...
CONTROL_MARGIN:
UNIT: FRACTION
VALUE: 0.0
KeyDescriptionStatus
TYPECOMPRESSOR_CHARTRequired
CHARTRequired
CONTROL_MARGINRequired
CHART
CURVES: ...
UNITS:
RATE: AM3_PER_HOUR
HEAD: M
EFFICIENCY: FRACTION
KeyDescriptionStatus
CURVESCompressor chart curves, one per speed.Required
UNITSDefines the unitsOptional
CURVES
SPEED: 10000.0
RATE:
- 500.0
- 3000.0
- 5000.0
- 8000.0
HEAD:
- 30000.0
- 25000.0
- 20000.0
- 15000.0
EFFICIENCY:
- 0.68
- 0.72
- 0.74
- 0.7
KeyDescriptionStatus
SPEEDDefault: 1
RATERequired
HEADRequired
EFFICIENCYRequired
UNITS

Defines the units

KeyDescriptionStatus
RATEUnit for rate in chart. Currently only AM3_PER_HOUR is supportedDefault: AM3_PER_HOUR
HEADUnit for head in chart. Supported units are M, KJ_PER_KG, JOULE_PER_KGDefault: M
EFFICIENCYUnit of efficiency in chart. Supported units are PERCENTAGE and FRACTION.Default: PERCENTAGE
CONTROL_MARGIN
KeyDescriptionStatus
UNITRequired
VALUERequired

PRESSURE_DROPPER

A pressure dropper unit — reduces stream pressure by a fixed amount.

TYPE: PRESSURE_DROPPER
PRESSURE_DROP: 1.0
KeyDescriptionStatus
TYPEPRESSURE_DROPPERRequired
PRESSURE_DROPPressure drop across the unit [bar].Required

TEMPERATURE_SETTER

A temperature setter unit — forces the stream to a specified temperature.

TYPE: TEMPERATURE_SETTER
TEMPERATURE: 30.0
KeyDescriptionStatus
TYPETEMPERATURE_SETTERRequired
TEMPERATURETarget temperature [Celsius].Required

LIQUID_REMOVER

A liquid remover (scrubber) unit — removes any condensed liquid from the stream, leaving only the gas phase.

No-op if the stream is already pure vapor.

TYPE: LIQUID_REMOVER
KeyDescriptionStatus
TYPELIQUID_REMOVERRequired

MIXER

Mixes an external sidestream into the through-stream at an intermediate point in the pipeline.

TYPE: MIXER
SIDESTREAM:
NAME: SidestreamDefault
FLUID:
TYPE: PREDEFINED
EOS_MODEL: SRK
GAS_TYPE: MEDIUM
TEMPERATURE: 30.0
PRESSURE: 20.0
RATE:
VALUE: 200000
UNIT: SM3_PER_DAY
TYPE: STREAM_DAY
KeyDescriptionStatus
TYPEMIXERRequired
INLET_STREAMSidestream to mix in. Either a reference to a named stream or an inline stream definition.Required
INLET_STREAM

Sidestream to mix in. Either a reference to a named stream or an inline stream definition.

KeyDescriptionStatus
NAMEUnique name of the inlet stream.Required
FLUIDReference to a fluid definition. Inline definition or reference. See DEFINITIONS.FLUIDS.Required
TEMPERATURETemperature in K.Required
PRESSUREPressure in BaraRequired
RATERate with unit + value.Required
RATE

Rate with unit + value.

KeyDescriptionStatus
VALUERequired
UNITRate unit. SM3_PER_DAY for standard volume.Required
TYPESTREAM_DAY | CALENDAR_DAYDefault: STREAM_DAY
CONDITIONA logical condition that determines whether the venting emitter emission rate is applicable. This condition must evaluate to true for the rate to be used.Optional
CONDITIONSA list of logical conditions that collectively determine whether the venting emitter emission rate is applicable. All conditions in the list must evaluate to true for the rate to be used.Optional

SPLITTER

Removes a fixed rate from the through-stream at an intermediate point in the pipeline (e.g. fuel gas offtake).

TYPE: SPLITTER
OFFTAKE_RATE:
VALUE: 50000
UNIT: SM3_PER_DAY
TYPE: STREAM_DAY
KeyDescriptionStatus
TYPESPLITTERRequired
OFFTAKE_RATEStandard rate to split off.Required
OFFTAKE_RATE

Standard rate to split off.

KeyDescriptionStatus
VALUERequired
UNITRate unit. SM3_PER_DAY for standard volume.Required
TYPESTREAM_DAY | CALENDAR_DAYDefault: STREAM_DAY
CONDITIONA logical condition that determines whether the venting emitter emission rate is applicable. This condition must evaluate to true for the rate to be used.Optional
CONDITIONSA list of logical conditions that collectively determine whether the venting emitter emission rate is applicable. All conditions in the list must evaluate to true for the rate to be used.Optional

FLUIDS

Defines fluids that can be referenced in inlet streams.

PREDEFINED

TYPE: PREDEFINED
EOS_MODEL: SRK
GAS_TYPE: MEDIUM
KeyDescriptionStatus
TYPEPREDEFINEDRequired
EOS_MODELDefault: SRK
GAS_TYPEDefault: MEDIUM

COMPOSITION

TYPE: COMPOSITION
EOS_MODEL: SRK
COMPOSITION:
methane: 90.0
ethane: 10.0
KeyDescriptionStatus
TYPECOMPOSITIONRequired
EOS_MODELDefault: SRK
COMPOSITIONRequired
COMPOSITION
KeyDescriptionStatus
WATERDefault: 0.0
NITROGENDefault: 0.0
CO2Default: 0.0
METHANERequired
ETHANEDefault: 0.0
PROPANEDefault: 0.0
I_BUTANEDefault: 0.0
N_BUTANEDefault: 0.0
I_PENTANEDefault: 0.0
N_PENTANEDefault: 0.0
N_HEXANEDefault: 0.0

INLET_STREAMS

Defines inlet streams that can be referenced by process system and stream distribution.

NAME: DefaultInletStream
FLUID:
TYPE: PREDEFINED
EOS_MODEL: SRK
GAS_TYPE: MEDIUM
TEMPERATURE: 30.0
PRESSURE: 20.0
RATE: ...
KeyDescriptionStatus
NAMEUnique name of the inlet stream.Required
FLUIDReference to a fluid definition. Inline definition or reference. See DEFINITIONS.FLUIDS.Required
TEMPERATURETemperature in K.Required
PRESSUREPressure in BaraRequired
RATERate with unit + value.Required
RATE

Rate with unit + value.

VALUE: 1000000.0
UNIT: SM3_PER_DAY
TYPE: STREAM_DAY
KeyDescriptionStatus
VALUERequired
UNITRate unit. SM3_PER_DAY for standard volume.Required
TYPESTREAM_DAY | CALENDAR_DAYDefault: STREAM_DAY
CONDITIONA logical condition that determines whether the venting emitter emission rate is applicable. This condition must evaluate to true for the rate to be used.Optional
CONDITIONSA list of logical conditions that collectively determine whether the venting emitter emission rate is applicable. All conditions in the list must evaluate to true for the rate to be used.Optional

PROCESS_PIPELINES

Defines process pipelines to use in process simulations.

NAME: DefaultPipeline
PROCESS_UNITS:
- TARGET:
TYPE: PRESSURE_DROPPER
PRESSURE_DROP: 1.0
NAME: default_pressure_dropper
- TARGET:
TYPE: TEMPERATURE_SETTER
TEMPERATURE: 30.0
NAME: default_temperature_setter
- TARGET:
TYPE: LIQUID_REMOVER
NAME: default_liquid_remover
- TARGET:
TYPE: COMPRESSOR
COMPRESSOR_MODEL:
TYPE: COMPRESSOR_CHART
CHART:
CURVES:
- SPEED: 10000.0
RATE:
- 500.0
- 3000.0
- 5000.0
- 8000.0
HEAD:
- 30000.0
- 25000.0
- 20000.0
- 15000.0
EFFICIENCY:
- 0.68
- 0.72
- 0.74
- 0.7
UNITS:
RATE: AM3_PER_HOUR
HEAD: M
EFFICIENCY: FRACTION
CONTROL_MARGIN:
UNIT: FRACTION
VALUE: 0.0
NAME: default_compressor
EVENTS: []
KeyDescriptionStatus
NAMERequired
PROCESS_UNITSRequired
EVENTSEvents that modify the pipeline over time, such as rebundling a compressor.Default: []
PROCESS_UNITS
KeyDescriptionStatus
TARGETInline definition or reference. See DEFINITIONS.PROCESS_UNITS.Required
NAMEOptional
EVENTS

Events that modify the pipeline over time, such as rebundling a compressor.

KeyDescriptionStatus
TYPEAction to perform: CHANGE, ADD, or REMOVE a process unit.Required
CHANGE_TARGETName of the process unit in the pipeline to change.Required
CHANGE_FROMReference to the existing process unit template being replaced. Inline definition or reference. See DEFINITIONS.PROCESS_UNITS.Required
CHANGE_TOReference to the new process unit template to use. Inline definition or reference. See DEFINITIONS.PROCESS_UNITS.Required
CHANGE_TYPENature of the change, e.g. REBUNDLE (chart change, same physical compressor).Required
REFReference to a PROCESS_EVENT by name.Required

PROCESS_SIMULATIONS

Defines one or more process simulations to be run.

NAME: DefaultProcessSimulation
TARGETS:
- DefaultPipeline
STREAM_DISTRIBUTION: ...
CONSTRAINTS:
DefaultPipeline:
- PROCESS_UNIT: default_compressor
OUTLET_PRESSURE: 100.0
PRESSURE_CONTROL: DOWNSTREAM_CHOKE
ANTI_SURGE: INDIVIDUAL_ASV
KeyDescriptionStatus
NAMERequired
TARGETSRequired
STREAM_DISTRIBUTIONRequired
CONSTRAINTSConstraints per target. Key is pipeline name, value is list of constraints.Required
STREAM_DISTRIBUTION
METHOD: COMMON_STREAM
INLET_STREAM:
NAME: DefaultInletStream
FLUID:
TYPE: PREDEFINED
EOS_MODEL: SRK
GAS_TYPE: MEDIUM
TEMPERATURE: 30.0
PRESSURE: 20.0
RATE:
VALUE: 1000000.0
UNIT: SM3_PER_DAY
TYPE: STREAM_DAY
SETTINGS:
- RATE_FRACTIONS:
- 1.0
OVERFLOW: null
KeyDescriptionStatus
METHODCOMMON_STREAMRequired
INLET_STREAMRequired
SETTINGSRequired
INLET_STREAM
KeyDescriptionStatus
NAMEUnique name of the inlet stream.Required
FLUIDReference to a fluid definition. Inline definition or reference. See DEFINITIONS.FLUIDS.Required
TEMPERATURETemperature in K.Required
PRESSUREPressure in BaraRequired
RATERate with unit + value.Required
RATE

Rate with unit + value.

KeyDescriptionStatus
VALUERequired
UNITRate unit. SM3_PER_DAY for standard volume.Required
TYPESTREAM_DAY | CALENDAR_DAYDefault: STREAM_DAY
CONDITIONA logical condition that determines whether the venting emitter emission rate is applicable. This condition must evaluate to true for the rate to be used.Optional
CONDITIONSA list of logical conditions that collectively determine whether the venting emitter emission rate is applicable. All conditions in the list must evaluate to true for the rate to be used.Optional
SETTINGS
KeyDescriptionStatus
RATE_FRACTIONSRequired
OVERFLOWOptional
OVERFLOW
KeyDescriptionStatus
FROM_REFERENCERequired
TO_REFERENCERequired
CONSTRAINTS

Constraints per target. Key is pipeline name, value is list of constraints.

KeyDescriptionStatus
PROCESS_UNITReference to a named unit within the pipeline. If omitted, the constraint applies to the last process unit in the pipeline section.Optional
OUTLET_PRESSURETarget outlet pressure [bara].Required
PRESSURE_CONTROLUPSTREAM_CHOKE | DOWNSTREAM_CHOKE | COMMON_ASV | INDIVIDUAL_ASV_RATE | INDIVIDUAL_ASV_PRESSURERequired
ANTI_SURGEAnti-surge strategy to keep the compressor train within safe operating capacity.Required