Separator Unit¶
The IDAES Separator unit model is a general purpose model for different types of equipment for separating or splitting material flows. The Separator unit model supports different methods for separating the material flow to represent different types of equipment. For separations based on total flow, see Splitter.
Degrees of Freedom¶
Separator units generally have degrees of freedom related to the number of outlet streams and the split type chosen.
- If split_type = ‘phase’, degrees of freedom are generally \((no. outlets-1) \times no. phases\)
- If split_type = ‘component’, degrees of freedom are generally \((no. outlets-1) \times no. components\)
- If split_type = ‘total’, degrees of freedom are generally \((no. outlets-1) \times no. phases \times no. components\)
Typical fixed variables are:
- split fractions.
Model Structure¶
The structure of a Separator unit depends on the construction options chosen. A Separator unit contains a single Holdup Block (named holdup), the type of which depends on the options as follows;
- If include_holdup, has_equilibrium_reactions or has_mass_transfer is True, a Holdup0D Block is used,
- Otherwise, a HoldupStatic Block is used.
Additionally, a Separator has one Inlet Port object (named inlet) and one Outlet Port object (named outlet and indexed by a list of names).
Construction Arguments¶
The Splitter model has the following construction arguments:
separation_type - indicates which method to use when separating the outlet material flow. Options are:
- ‘phase’ - outlet streams are split by phase fractions. A specified portion of each phase is sent to each outlet.
- ‘component’ - outlet streams are split by component. A specified fraction of each component is sent to each outlet.
- ‘total’ - outlet streams are split based on phase and component. A specified fraction of each phase-component pair is sent to each outlet.
property_package - property package to use when constructing Property Blocks (default = ‘use_parent_value’). This is provided as a Property Parameter Block by the Flowsheet when creating the model. If a value is not provided, the Holdup Block will try to use the default property package if one is defined.
property_package_args - set of arguments to be passed to the Property Blocks when they are created.
inlet_list - list of names to be passed to the build_inlets method (default = None).
num_inlets - number of inlets argument to be passed to the build_inlets method (default = None).
outlet_list - list of names to be passed to the build_outlets method (default = None).
num_outlets - number of outlets argument to be passed to the build_outlets method (default = 2).
Additionally, Separator Blocks have the following construction arguments which are passed to the Holdup Block for determining which terms to construct in the balance equations.
Argument | Default Value |
---|---|
material_balance_type | ‘component_phase’ |
energy_balance_type | ‘total’ |
momentum_balance_type | ‘total’ |
dynamic | False |
include_holdup | False |
has_rate_reactions | False |
has_equilibrium_reactions | False |
has_phase_equilibrium | False |
has_mass_transfer | False |
has_heat_transfer | False |
has_work_transfer | False |
has_pressure_change | False |
Additional Constraints¶
Separator Blocks write no additional constraints to the model.
Variables¶
Separator Blocks add one additional Variable beyond those created by the Holdup Block.
Name | Notes |
---|---|
split_fraction | Reference to holdup.outlet_splitter.split_fraction |