Coverage for backend/ahuora-builder/src/ahuora_builder/methods/adapter_library.py: 100%
61 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 idaes.models.unit_models import (
2 Pump,
3 Heater,
4 Mixer,
5 StateJunction,
6 HeatExchanger,
7 Turbine,
8 PressureChanger,
9)
10from idaes.models.unit_models.heat_exchanger import delta_temperature_underwood_callback
11from idaes.models.unit_models.pressure_changer import ThermodynamicAssumption
12from idaes.models.unit_models.separator import SplittingType, EnergySplittingType
13from ahuora_builder.custom.heat_exchanger_1d_wrapper import HeatExchanger1DWrapper
14from . import adapter_methods as methods
15from ..custom.custom_heat_exchanger import CustomHeatExchanger
16from ..custom.PySMOModel import PySMOModel
17from ..custom.energy.link import Link
18from ..custom.energy.power_property_package import PowerParameterBlock
19from ..custom.energy.ac_property_package import acParameterBlock
20from ..custom.energy.transformer_property_package import transformerParameterBlock
21from ..custom.updated_pressure_changer import Compressor
22from ..custom.energy.solar import Solar
23from ..custom.custom_valve import Valve
24from ..custom.energy.wind import Wind
25from ..custom.energy.energy_mixer import EnergyMixer
26from ..custom.energy.bus import Bus
27from ..custom.energy.acBus import acBus
28from ..custom.energy.transmissionLine import transmissionLine
29from ..custom.valve_wrapper import ValveWrapper
30from ..custom.energy.load import Load
31from ..custom.energy.hydro import Hydro
32from ..custom.energy.transformer import Transformer
33from ..custom.energy.storage import Storage
34from ..custom.direct_steam_injection import Dsi
35from ..custom.translator import GenericTranslator
36from idaes.models.control.controller import ControllerType, ControllerMVBoundType
37from ..custom.PIDController import PIDController2
38from ..custom.energy.grid import Grid
39from ..custom.custom_heater import DynamicHeater
40from ..custom.custom_tank import CustomTank
41from ..custom.custom_compressor import CustomCompressor
42from ..custom.custom_pump import CustomPump
43from ..custom.integration_block import IntegrationBlock
44from idaes.models.unit_models.cstr import CSTR
45from ..custom.energy.energy_splitter import EnergySplitter
46from ..custom.custom_turbine import CustomTurbine
47from ..custom.energy.mainDistributionBoard import MDB
48from ..custom.custom_separator import CustomSeparator
49from ..custom.custom_variable import CustomVariable
50from ..custom.thermal_utility_systems.steam_header import SteamHeader
51from ..custom.thermal_utility_systems.header import simple_header
52from ..custom.reactions.hda_stoich import HDAStoichiometricReactor
53from ..custom.custom_heat_exchanger_1d import CustomHeatExchanger1D
54from ..custom.thermal_utility_systems.simple_heat_pump import SimpleHeatPump
55from ..custom.thermal_utility_systems.steam_user import SteamUser
56from ..custom.thermal_utility_systems.heat_user import HeatUser
57from ..custom.thermal_utility_systems.desuperheater import Desuperheater
58from idaes.models_extra.power_generation.unit_models.waterpipe import WaterPipe
59from ..custom.SimpleEffectivenessHX_DH import HeatExchangerEffectiveness
60from idaes.models.unit_models.heat_exchanger_lc import HeatExchangerLumpedCapacitance
61from idaes.models_extra.column_models.plate_heat_exchanger import PlateHeatExchanger
62from ..custom.custom_cooler import CustomCooler
63from ..custom.watertap.reverse_osmosis_0d import ReverseOsmosis0D
64from ..custom.watertap.pressure_exchanger import PressureExchanger
65from ..custom.salt.crystallizer import Crystallizer
66from collections.abc import Callable
68type ModelConstructor = Callable
70"""
71A dictionary of adapters for the idaes model constructors
72"""
73AdapterLibrary: dict[str, ModelConstructor] = {
74 "pump": CustomPump,
75 "heater": DynamicHeater,
76 "heat_user": HeatUser,
77 "compressor": CustomCompressor,
78 "turbine": CustomTurbine,
79 "willans_turbine": CustomTurbine,
80 "pl_turbine": CustomTurbine,
81 "dts_turbine": CustomTurbine,
82 "bs_turbine": CustomTurbine,
83 "cs_turbine": CustomTurbine,
84 "mixer": Mixer,
85 "Tank": CustomTank,
86 "heatExchanger": CustomHeatExchanger,
87 "heatPump": SimpleHeatPump,
88 "valve": ValveWrapper,
89 "cooler": CustomCooler,
90 "splitter": CustomSeparator,
91 "phaseSeparator": CustomSeparator,
92 "compoundSeparator": CustomSeparator,
93 "machineLearningBlock": PySMOModel,
94 "link": Link,
95 "solar": Solar,
96 "wind": Wind,
97 "energy_mixer": EnergyMixer,
98 "bus": Bus,
99 "acBus": acBus,
100 "transmissionLine": transmissionLine,
101 "load": Load,
102 "hydro": Hydro,
103 "transformer": Transformer,
104 "storage": Storage,
105 "direct_steam_injection": Dsi,
106 "translator": GenericTranslator,
107 "pid_controller": PIDController2,
108 "custom_variable": CustomVariable,
109 "grid": Grid,
110 "integration": IntegrationBlock,
111 "stoich_hda": HDAStoichiometricReactor,
112 "RCT_CSTR": CSTR,
113 "energy_splitter": EnergySplitter,
114 "mdb": MDB,
115 "header": SteamHeader,
116 "simple_header": simple_header,
117 "heat_exchanger_1d": HeatExchanger1DWrapper,
118 "steam_user": SteamUser,
119 "desuperheater": Desuperheater,
120 "heat_exchanger_ntu": HeatExchangerEffectiveness,
121 "waterpipe": WaterPipe,
122 "heat_exchanger_lc": HeatExchangerLumpedCapacitance,
123 "plate_heat_exchanger": PlateHeatExchanger,
124 "reverse_osmosis_0d": ReverseOsmosis0D,
125 "pressure_exchanger": PressureExchanger,
126 "crystallizer": Crystallizer,
127}