Source code for gemini_framework.modules.esp.unit

"""ESP unit: ESP-related calculation modules."""

from gemini_framework.abstract.unit_abstract import UnitAbstract
from gemini_framework.modules.esp.calculate_theoretical_head import CalculateTheoreticalHead
from gemini_framework.modules.esp.calculate_theoretical_outlet_pressure import (
    CalculateTheoreticalOutletPressure,
)
from gemini_framework.modules.esp.calculate_theoretical_power import CalculateTheoreticalPower
from gemini_framework.modules.esp.calculate_vlp_head import CalculateVLPHead
from gemini_framework.modules.esp.calculate_vlp_ipr_inlet_pressure import (
    CalculateVLPIPRInletPressure,
)
from gemini_framework.modules.esp.calculate_vlp_outlet_pressure import CalculateVLPOutletPressure


[docs] class ESPUnit(UnitAbstract): """ESP unit that includes theoretical and VLP calculations.""" def __init__(self, unit_id, unit_name, plant): """Initialize ESP unit.""" super().__init__(unit_id=unit_id, unit_name=unit_name, plant=plant) # define unit modules self.modules["preprocessor"] = [] self.modules["model"].append(CalculateTheoreticalHead(self)) self.modules["model"].append(CalculateTheoreticalPower(self)) self.modules["model"].append(CalculateTheoreticalOutletPressure(self)) self.modules["model"].append(CalculateVLPIPRInletPressure(self)) self.modules["model"].append(CalculateVLPOutletPressure(self)) self.modules["model"].append(CalculateVLPHead(self)) self.modules["postprocessor"] = []