Skip to content

Unit catalogue

Every unit model the revision binder admits, with the property bases it binds on and what its signature declares. A model is named in a revision by its id (instances[].model.id); a model that is not listed here, or one placed on a basis it does not bind on, is refused at binding with model_unsupported(<id>). The same information is served at run time by list_models (Python, CLI, HTTP and MCP), which also gives each pin's accepted specification encodings.

Optional parameters a builder reads beyond its signature — for example the thermal.* units' outlet_vapor_fraction (the quality mode) and the column's feed stages and stage pressures — are described on the pages for those units (property bases, distillation column).

Basis id Basis
coolprop-heos-v1 CoolProp HEOS (one pure fluid)
iapws95-v1 IAPWS-95 water
pr-c1-v1 Peng–Robinson C1 (H2, N2, NH3, Ar, CH4)
syn001 SYN-001 (synthetic A, B, C)
wilson-ig-v2 Wilson γ–φ (CH3OH, C2H5OH, H2O)

Pure-fluid units (thermal.*)

thermal.compressor

Bases coolprop-heos-v1, iapws95-v1, wilson-ig-v2
Ports inlet (inlet, material), outlet (outlet, material), work (inlet, energy)
Required parameters efficiency
Pins outlet_pressure (pressure: connection state.P, instance outlet.P)

thermal.flash

Bases coolprop-heos-v1, iapws95-v1
Ports inlet (inlet, material), vapor (outlet, material), liquid (outlet, material), duty (inlet, energy)
Required parameters pressure_drop
Pins duty (duty: instance duty.Q)

thermal.heater

Bases coolprop-heos-v1, iapws95-v1
Ports inlet (inlet, material), outlet (outlet, material), duty (inlet, energy)
Required parameters —
One of (specification) outlet_temperature (temperature: connection state.T); duty (duty: instance duty.Q)

thermal.mixer

Bases coolprop-heos-v1, iapws95-v1
Ports inlet (inlet, material), outlet (outlet, material)
Required parameters —

thermal.pump

Bases coolprop-heos-v1, iapws95-v1
Ports inlet (inlet, material), outlet (outlet, material), work (inlet, energy)
Required parameters efficiency
Pins outlet_pressure (pressure: connection state.P, instance outlet.P)

thermal.turbine

Bases coolprop-heos-v1, iapws95-v1, wilson-ig-v2
Ports inlet (inlet, material), outlet (outlet, material), work (inlet, energy)
Required parameters efficiency
Pins outlet_pressure (pressure: connection state.P, instance outlet.P)

thermal.valve

Bases coolprop-heos-v1, iapws95-v1
Ports inlet (inlet, material), outlet (outlet, material)
Required parameters —
Pins outlet_pressure (pressure: connection state.P, instance outlet.P)

Mixture units (syn001.*)

syn001.adiabatic_mixer

Bases syn001, wilson-ig-v2
Ports inlet (inlet, material), outlet (outlet, material)
Required parameters —
Parameters admitted only as 0 pressure_drop

syn001.column

Bases syn001, wilson-ig-v2
Ports feed (inlet, material), top (inlet, material), bottom (inlet, material), distillate (outlet, material), bottoms (outlet, material)
Required parameters stage_count

syn001.component_separator

Bases syn001
Ports inlet (inlet, material), top (outlet, material), bottom (outlet, material), duty (inlet, energy)
Required parameters split.{component}

syn001.conversion_reactor

Bases syn001
Ports inlet (inlet, material), outlet (outlet, material), duty (inlet, energy)
Required parameters nu.{component}, conversion.{key}, pressure_drop
One of (energy_specification) outlet_temperature (temperature: connection state.T); duty (duty: instance duty.Q)

syn001.feed_source

Bases coolprop-heos-v1, iapws95-v1, syn001, wilson-ig-v2
Ports outlet (outlet, material)
Required parameters —
Pins flows (flow: connection state.n); temperature (temperature: connection state.T, instance outlet.T); pressure (pressure: connection state.P, instance outlet.P)

syn001.heat_exchanger

Bases syn001
Ports hot_inlet (inlet, material), hot_outlet (outlet, material), cold_inlet (inlet, material), cold_outlet (outlet, material)
Required parameters —
One of (specification) hot_outlet_temperature (temperature: connection state.T); cold_outlet_temperature (temperature: connection state.T); duty (duty: instance duty.Q)

syn001.kinetic_cstr

Bases syn001
Ports inlet (inlet, material), outlet (outlet, material), duty (inlet, energy)
Required parameters nu.{component}, damkohler.{key}, T_ref, T_scale, coolant_flow, coolant_cp, T_coolant, pressure_drop

syn001.liquid_pump

Bases syn001
Ports inlet (inlet, material), outlet (outlet, material), work (inlet, energy)
Required parameters efficiency
Pins outlet_pressure (pressure: connection state.P, instance outlet.P)

syn001.ph_flash

Bases syn001, wilson-ig-v2
Ports inlet (inlet, material), vapor (outlet, material), liquid (outlet, material), duty (inlet, energy)
Required parameters pressure_drop
Pins duty (duty: instance duty.Q)

syn001.product_sink

Bases coolprop-heos-v1, iapws95-v1, syn001, wilson-ig-v2
Ports inlet (inlet, material)
Required parameters —

syn001.stream_splitter

Bases coolprop-heos-v1, iapws95-v1, syn001, wilson-ig-v2
Ports inlet (inlet, material), recycle (outlet, material), purge (outlet, material)
Required parameters split_fraction

syn001.tp_flash

Bases syn001, wilson-ig-v2
Ports inlet (inlet, material), vapor (outlet, material), liquid (outlet, material), duty (inlet, energy)
Required parameters —
Parameters admitted only as 0 pressure_drop
Pins temperature (temperature: connection state.T, instance outlet.T); pressure (pressure: connection state.P, instance outlet.P); liquid_temperature (temperature: connection state.T, instance outlet.T); liquid_pressure (pressure: connection state.P, instance outlet.P)

syn001.tp_heater

Bases syn001, wilson-ig-v2
Ports inlet (inlet, material), outlet (outlet, material), duty (inlet, energy)
Required parameters —
Parameters admitted only as 0 pressure_drop
Pins outlet_temperature (temperature: connection state.T, instance outlet.T)

syn001.valve

Bases syn001, wilson-ig-v2
Ports inlet (inlet, material), outlet (outlet, material)
Required parameters —
Pins outlet_pressure (pressure: connection state.P, instance outlet.P)

Ammonia-loop units (c1.*)

c1.adiabatic_mixer

Bases pr-c1-v1
Ports inlet (inlet, material), outlet (outlet, material)
Required parameters —
Parameters admitted only as 0 pressure_drop

c1.feed_source

Bases pr-c1-v1
Ports outlet (outlet, material)
Required parameters —
Pins flows (flow: connection state.n); temperature (temperature: connection state.T, instance outlet.T); pressure (pressure: connection state.P, instance outlet.P)

c1.product_sink

Bases pr-c1-v1
Ports inlet (inlet, material)
Required parameters —

c1.reactor

Bases pr-c1-v1
Ports inlet (inlet, material), outlet (outlet, material), duty (inlet, energy)
Required parameters n_tubes

c1.reactor_standin

Bases pr-c1-v1
Ports inlet (inlet, material), outlet (outlet, material), duty (inlet, energy)
Required parameters n_tubes

c1.reactor_surrogate

Bases pr-c1-v1
Ports inlet (inlet, material), outlet (outlet, material), duty (inlet, energy)
Required parameters n_tubes

c1.stream_splitter

Bases pr-c1-v1
Ports inlet (inlet, material), recycle (outlet, material), purge (outlet, material)
Required parameters split_fraction

c1.tp_flash

Bases pr-c1-v1
Ports inlet (inlet, material), vapor (outlet, material), liquid (outlet, material), duty (inlet, energy)
Required parameters —
Parameters admitted only as 0 pressure_drop
Pins temperature (temperature: connection state.T, instance outlet.T); pressure (pressure: connection state.P, instance outlet.P); liquid_temperature (temperature: connection state.T, instance outlet.T); liquid_pressure (pressure: connection state.P, instance outlet.P)

c1.tp_heater

Bases pr-c1-v1
Ports inlet (inlet, material), outlet (outlet, material), duty (inlet, energy)
Required parameters —
Parameters admitted only as 0 pressure_drop
Pins outlet_temperature (temperature: connection state.T, instance outlet.T)