Coverage for backend/django/flowsheetInternals/unitops/config/objects/phase_seperator_config.py: 100%
4 statements
« prev ^ index » next coverage.py v7.10.7, created at 2026-05-13 02:47 +0000
« prev ^ index » next coverage.py v7.10.7, created at 2026-05-13 02:47 +0000
1from common.config_types import *
2from common.config_utils import *
3from ..spec_helpers import *
5phase_seperator_config: ObjectType = ObjectType(
6 displayType="Phase Separator",
7 displayName="Phase Separator",
8 ports={
9 "inlet": PortType(
10 displayName="Inlet",
11 type=ConType.Inlet,
12 streamName="S",
13 ),
14 "outlet": PortType(
15 many=True,
16 displayName="Outlet",
17 type=ConType.Outlet,
18 default=2, # default number of outlets
19 minimum=2, # minimum number of outlets
20 streamName="S",
21 ),
22 },
23 propertyPackagePorts=default_property_package_ports(),
24 graphicObject=unitop_graphic(),
25 indexSets=["splitter_fraction","phase"],
26 properties=PropertiesType({
27 "split_fraction": PropertyType(
28 displayName="Vapour Split Ratio",
29 type="numeric",
30 unitType="ratio",
31 indexSets=["splitter_fraction","phase"],
32 sumToOne=True,
33 ),
34 }),
35 splitter_fraction_name="Outlet",
36 propertySetGroups={
37 "default": {
38 "type": "exceptLast",
39 "displayName": "Properties",
40 "stateVars": ("split_fraction",),
41 }
42 },
43 idaes_adapter=UnitModelAdapter(
44 args=ArgAdapter({
45 "property_package": PropertyPackageAdapter(),
46 "num_outlets": NumOutletsAdapter(),
47 "split_basis": ConstantArg(SplittingType.phaseFlow),
48 "energy_split_basis": ConstantArg(EnergySplittingType.enthalpy_split),
49 }),
50 properties=SerialisePropertiesAdapter(),
51 ports=SplitterPortListAdapter()
52 ),
53)