抽象test_mql固定气室段流量计算
This commit is contained in:
1 parent
cdd17d29c8
commit
be1eec1348
1 file changed
+131
-75
@@ -280,6 +280,14 @@ class TestMqlPn3P4NodeChamberSegmentComponents:
|
||||
spec: TestMqlPneumaticChamberSegmentSpec
|
||||
|
||||
|
||||
@dataclass(frozen=True)
|
||||
class TestMqlFixedChamberSegmentFlows:
|
||||
inlet_node_to_line_flow: float
|
||||
inlet_line_to_chamber_flow: float
|
||||
outlet_node_to_line_flow: float
|
||||
outlet_line_to_chamber_flow: float
|
||||
|
||||
|
||||
@dataclass(frozen=True)
|
||||
class TestMqlPn3NodeBalancePort:
|
||||
flow_kg_s: float
|
||||
@@ -716,24 +724,21 @@ class TestMqlPn3P4NodeChamberSegmentClosure:
|
||||
resistance_boundary = self.resistance_boundary.properties(
|
||||
self.components.node_resistance.gas
|
||||
)
|
||||
inlet_node_to_line_flow = self.components.inlet_line.resistance_mass_flow(
|
||||
port_1_pressure_pa=p4_port3_remote_orifice_line_port_1.p,
|
||||
port_1_temperature_k=p4_port3_remote_orifice_line_port_1.T,
|
||||
)
|
||||
outlet_node_to_line_flow = self.components.outlet_line.resistance_mass_flow(
|
||||
port_1_pressure_pa=node_line_port_1.p,
|
||||
port_1_temperature_k=node_line_port_1.T,
|
||||
)
|
||||
inlet_line_to_chamber_flow = self._line_to_chamber_flow(
|
||||
line=inlet_line,
|
||||
chamber=chamber,
|
||||
orifice=self.components.inlet_orifice,
|
||||
)
|
||||
outlet_line_to_chamber_flow = self._line_to_chamber_flow(
|
||||
line=outlet_line,
|
||||
chamber=chamber,
|
||||
orifice=self.components.outlet_orifice,
|
||||
chamber_segment_flows = self._fixed_chamber_segment_flows(
|
||||
chamber_properties=chamber,
|
||||
inlet_line=self.components.inlet_line,
|
||||
inlet_line_properties=inlet_line,
|
||||
inlet_node_properties=p4_port3_remote_orifice_line_port_1,
|
||||
inlet_orifice=self.components.inlet_orifice,
|
||||
outlet_line=self.components.outlet_line,
|
||||
outlet_line_properties=outlet_line,
|
||||
outlet_node_properties=node_line_port_1,
|
||||
outlet_orifice=self.components.outlet_orifice,
|
||||
)
|
||||
inlet_node_to_line_flow = chamber_segment_flows.inlet_node_to_line_flow
|
||||
inlet_line_to_chamber_flow = chamber_segment_flows.inlet_line_to_chamber_flow
|
||||
outlet_node_to_line_flow = chamber_segment_flows.outlet_node_to_line_flow
|
||||
outlet_line_to_chamber_flow = chamber_segment_flows.outlet_line_to_chamber_flow
|
||||
node_to_resistance_flow = self.components.node_resistance.mass_flow(
|
||||
port_1_pressure_pa=node_line_port_1.p,
|
||||
port_1_temperature_k=node_line_port_1.T,
|
||||
@@ -846,12 +851,43 @@ class TestMqlPn3P4NodeChamberSegmentClosure:
|
||||
port_1_temperature_k=p4_bridge_primary_chamber.T,
|
||||
)
|
||||
)
|
||||
p4_port1_next_orifice_resistance_chamber_inlet_node_to_line_flow = (
|
||||
self.components.p4_port1_next_orifice_resistance_chamber_inlet_line.resistance_mass_flow(
|
||||
port_1_pressure_pa=p4_port1_remote_orifice_line_port_1.p,
|
||||
port_1_temperature_k=p4_port1_remote_orifice_line_port_1.T,
|
||||
p4_port1_next_orifice_resistance_chamber_flows = (
|
||||
self._fixed_chamber_segment_flows(
|
||||
chamber_properties=p4_port1_next_orifice_resistance_chamber,
|
||||
inlet_line=(
|
||||
self.components.p4_port1_next_orifice_resistance_chamber_inlet_line
|
||||
),
|
||||
inlet_line_properties=(
|
||||
p4_port1_next_orifice_resistance_chamber_inlet_line
|
||||
),
|
||||
inlet_node_properties=p4_port1_remote_orifice_line_port_1,
|
||||
inlet_orifice=(
|
||||
self.components.p4_port1_next_orifice_resistance_chamber_inlet_orifice
|
||||
),
|
||||
outlet_line=(
|
||||
self.components.p4_port1_next_orifice_resistance_chamber_outlet_line
|
||||
),
|
||||
outlet_line_properties=(
|
||||
p4_port1_next_orifice_resistance_chamber_outlet_line
|
||||
),
|
||||
outlet_node_properties=p4_port1_next_orifice_resistance_line_port_1,
|
||||
outlet_orifice=(
|
||||
self.components.p4_port1_next_orifice_resistance_chamber_outlet_orifice
|
||||
),
|
||||
)
|
||||
)
|
||||
p4_port1_next_orifice_resistance_chamber_inlet_node_to_line_flow = (
|
||||
p4_port1_next_orifice_resistance_chamber_flows.inlet_node_to_line_flow
|
||||
)
|
||||
p4_port1_next_orifice_resistance_chamber_inlet_line_to_chamber_flow = (
|
||||
p4_port1_next_orifice_resistance_chamber_flows.inlet_line_to_chamber_flow
|
||||
)
|
||||
p4_port1_next_orifice_resistance_chamber_outlet_node_to_line_flow = (
|
||||
p4_port1_next_orifice_resistance_chamber_flows.outlet_node_to_line_flow
|
||||
)
|
||||
p4_port1_next_orifice_resistance_chamber_outlet_line_to_chamber_flow = (
|
||||
p4_port1_next_orifice_resistance_chamber_flows.outlet_line_to_chamber_flow
|
||||
)
|
||||
p4_port1_remote_orifice_node_balance = self._pn3_node_balance(
|
||||
node=self.components.p4_port1_remote_orifice_node,
|
||||
primary_properties=p4_port1_remote_orifice_line_port_1,
|
||||
@@ -947,27 +983,28 @@ class TestMqlPn3P4NodeChamberSegmentClosure:
|
||||
port_temperature_k=p4_port3_next_primary_line.T,
|
||||
)
|
||||
)
|
||||
p4_port3_next_chamber_flows = self._fixed_chamber_segment_flows(
|
||||
chamber_properties=p4_port3_next_chamber,
|
||||
inlet_line=self.components.p4_port3_next_chamber_inlet_line,
|
||||
inlet_line_properties=p4_port3_next_chamber_inlet_line,
|
||||
inlet_node_properties=p4_port3_next_orifice_line_port_1,
|
||||
inlet_orifice=self.components.p4_port3_next_chamber_inlet_orifice,
|
||||
outlet_line=self.components.p4_port3_next_chamber_outlet_line,
|
||||
outlet_line_properties=p4_port3_next_chamber_outlet_line,
|
||||
outlet_node_properties=p4_port3_remote_resistance_node_line_port_1,
|
||||
outlet_orifice=self.components.p4_port3_next_chamber_outlet_orifice,
|
||||
)
|
||||
p4_port3_next_chamber_inlet_node_to_line_flow = (
|
||||
self.components.p4_port3_next_chamber_inlet_line.resistance_mass_flow(
|
||||
port_1_pressure_pa=p4_port3_next_orifice_line_port_1.p,
|
||||
port_1_temperature_k=p4_port3_next_orifice_line_port_1.T,
|
||||
p4_port3_next_chamber_flows.inlet_node_to_line_flow
|
||||
)
|
||||
)
|
||||
p4_port3_next_chamber_inlet_line_to_chamber_flow = self._line_to_chamber_flow(
|
||||
line=p4_port3_next_chamber_inlet_line,
|
||||
chamber=p4_port3_next_chamber,
|
||||
orifice=self.components.p4_port3_next_chamber_inlet_orifice,
|
||||
p4_port3_next_chamber_inlet_line_to_chamber_flow = (
|
||||
p4_port3_next_chamber_flows.inlet_line_to_chamber_flow
|
||||
)
|
||||
p4_port3_next_chamber_outlet_node_to_line_flow = (
|
||||
self.components.p4_port3_next_chamber_outlet_line.resistance_mass_flow(
|
||||
port_1_pressure_pa=p4_port3_remote_resistance_node_line_port_1.p,
|
||||
port_1_temperature_k=p4_port3_remote_resistance_node_line_port_1.T,
|
||||
p4_port3_next_chamber_flows.outlet_node_to_line_flow
|
||||
)
|
||||
)
|
||||
p4_port3_next_chamber_outlet_line_to_chamber_flow = self._line_to_chamber_flow(
|
||||
line=p4_port3_next_chamber_outlet_line,
|
||||
chamber=p4_port3_next_chamber,
|
||||
orifice=self.components.p4_port3_next_chamber_outlet_orifice,
|
||||
p4_port3_next_chamber_outlet_line_to_chamber_flow = (
|
||||
p4_port3_next_chamber_flows.outlet_line_to_chamber_flow
|
||||
)
|
||||
p4_port3_next_resistance_node_to_next_flow = (
|
||||
self.components.p4_port3_next_orifice_resistance.mass_flow(
|
||||
@@ -1007,31 +1044,36 @@ class TestMqlPn3P4NodeChamberSegmentClosure:
|
||||
p4_port3_next_orifice_output_to_p4_flow = (
|
||||
p4_port3_next_orifice_to_output_line_flow
|
||||
)
|
||||
p4_port3_next_resistance_chamber_inlet_node_to_line_flow = (
|
||||
self.components.p4_port3_next_resistance_chamber_inlet_line.resistance_mass_flow(
|
||||
port_1_pressure_pa=p4_port1_next_orifice_line_port_1.p,
|
||||
port_1_temperature_k=p4_port1_next_orifice_line_port_1.T,
|
||||
p4_port3_next_resistance_chamber_flows = (
|
||||
self._fixed_chamber_segment_flows(
|
||||
chamber_properties=p4_port3_next_resistance_chamber,
|
||||
inlet_line=self.components.p4_port3_next_resistance_chamber_inlet_line,
|
||||
inlet_line_properties=p4_port3_next_resistance_chamber_inlet_line,
|
||||
inlet_node_properties=p4_port1_next_orifice_line_port_1,
|
||||
inlet_orifice=(
|
||||
self.components.p4_port3_next_resistance_chamber_inlet_orifice
|
||||
),
|
||||
outlet_line=(
|
||||
self.components.p4_port3_next_resistance_chamber_outlet_line
|
||||
),
|
||||
outlet_line_properties=p4_port3_next_resistance_chamber_outlet_line,
|
||||
outlet_node_properties=p4_port3_next_resistance_node_line_port_1,
|
||||
outlet_orifice=(
|
||||
self.components.p4_port3_next_resistance_chamber_outlet_orifice
|
||||
),
|
||||
)
|
||||
)
|
||||
p4_port3_next_resistance_chamber_inlet_node_to_line_flow = (
|
||||
p4_port3_next_resistance_chamber_flows.inlet_node_to_line_flow
|
||||
)
|
||||
p4_port3_next_resistance_chamber_inlet_line_to_chamber_flow = (
|
||||
self._line_to_chamber_flow(
|
||||
line=p4_port3_next_resistance_chamber_inlet_line,
|
||||
chamber=p4_port3_next_resistance_chamber,
|
||||
orifice=self.components.p4_port3_next_resistance_chamber_inlet_orifice,
|
||||
)
|
||||
p4_port3_next_resistance_chamber_flows.inlet_line_to_chamber_flow
|
||||
)
|
||||
p4_port3_next_resistance_chamber_outlet_node_to_line_flow = (
|
||||
self.components.p4_port3_next_resistance_chamber_outlet_line.resistance_mass_flow(
|
||||
port_1_pressure_pa=p4_port3_next_resistance_node_line_port_1.p,
|
||||
port_1_temperature_k=p4_port3_next_resistance_node_line_port_1.T,
|
||||
)
|
||||
p4_port3_next_resistance_chamber_flows.outlet_node_to_line_flow
|
||||
)
|
||||
p4_port3_next_resistance_chamber_outlet_line_to_chamber_flow = (
|
||||
self._line_to_chamber_flow(
|
||||
line=p4_port3_next_resistance_chamber_outlet_line,
|
||||
chamber=p4_port3_next_resistance_chamber,
|
||||
orifice=self.components.p4_port3_next_resistance_chamber_outlet_orifice,
|
||||
)
|
||||
p4_port3_next_resistance_chamber_flows.outlet_line_to_chamber_flow
|
||||
)
|
||||
p4_port1_next_orifice_resistance_node_to_next_flow = (
|
||||
self.components.p4_port1_next_orifice_resistance.mass_flow(
|
||||
@@ -1041,26 +1083,6 @@ class TestMqlPn3P4NodeChamberSegmentClosure:
|
||||
port_2_temperature_k=p4_port1_next_orifice_line_port_1.T,
|
||||
)
|
||||
)
|
||||
p4_port1_next_orifice_resistance_chamber_inlet_line_to_chamber_flow = (
|
||||
self._line_to_chamber_flow(
|
||||
line=p4_port1_next_orifice_resistance_chamber_inlet_line,
|
||||
chamber=p4_port1_next_orifice_resistance_chamber,
|
||||
orifice=self.components.p4_port1_next_orifice_resistance_chamber_inlet_orifice,
|
||||
)
|
||||
)
|
||||
p4_port1_next_orifice_resistance_chamber_outlet_node_to_line_flow = (
|
||||
self.components.p4_port1_next_orifice_resistance_chamber_outlet_line.resistance_mass_flow(
|
||||
port_1_pressure_pa=p4_port1_next_orifice_resistance_line_port_1.p,
|
||||
port_1_temperature_k=p4_port1_next_orifice_resistance_line_port_1.T,
|
||||
)
|
||||
)
|
||||
p4_port1_next_orifice_resistance_chamber_outlet_line_to_chamber_flow = (
|
||||
self._line_to_chamber_flow(
|
||||
line=p4_port1_next_orifice_resistance_chamber_outlet_line,
|
||||
chamber=p4_port1_next_orifice_resistance_chamber,
|
||||
orifice=self.components.p4_port1_next_orifice_resistance_chamber_outlet_orifice,
|
||||
)
|
||||
)
|
||||
p4_port1_next_orifice_node_balance = self._pn3_node_balance(
|
||||
node=self.components.p4_port1_next_orifice_node,
|
||||
primary_properties=p4_port1_next_orifice_line_port_1,
|
||||
@@ -1752,6 +1774,40 @@ class TestMqlPn3P4NodeChamberSegmentClosure:
|
||||
connected_h=connected_h,
|
||||
)
|
||||
|
||||
def _fixed_chamber_segment_flows(
|
||||
self,
|
||||
*,
|
||||
chamber_properties: ThermodynamicProperties,
|
||||
inlet_line: AmesimPnl0001Pipe,
|
||||
inlet_line_properties: ThermodynamicProperties,
|
||||
inlet_node_properties: ThermodynamicProperties,
|
||||
inlet_orifice: AmesimPneumaticOrifice,
|
||||
outlet_line: AmesimPnl0001Pipe,
|
||||
outlet_line_properties: ThermodynamicProperties,
|
||||
outlet_node_properties: ThermodynamicProperties,
|
||||
outlet_orifice: AmesimPneumaticOrifice,
|
||||
) -> TestMqlFixedChamberSegmentFlows:
|
||||
return TestMqlFixedChamberSegmentFlows(
|
||||
inlet_node_to_line_flow=inlet_line.resistance_mass_flow(
|
||||
port_1_pressure_pa=inlet_node_properties.p,
|
||||
port_1_temperature_k=inlet_node_properties.T,
|
||||
),
|
||||
inlet_line_to_chamber_flow=self._line_to_chamber_flow(
|
||||
line=inlet_line_properties,
|
||||
chamber=chamber_properties,
|
||||
orifice=inlet_orifice,
|
||||
),
|
||||
outlet_node_to_line_flow=outlet_line.resistance_mass_flow(
|
||||
port_1_pressure_pa=outlet_node_properties.p,
|
||||
port_1_temperature_k=outlet_node_properties.T,
|
||||
),
|
||||
outlet_line_to_chamber_flow=self._line_to_chamber_flow(
|
||||
line=outlet_line_properties,
|
||||
chamber=chamber_properties,
|
||||
orifice=outlet_orifice,
|
||||
),
|
||||
)
|
||||
|
||||
def _pn3_node_balance(
|
||||
self,
|
||||
*,
|
||||
|
||||
Reference in new issue
Block a user