接入test_mql pn_node3_12主压温支路

This commit is contained in:
huojiarong committed 2026-07-19 09:22:00 +00:00
1 parent 4242057bd8
commit 2afd5eeb11
3 files changed
+250 -24

No files matched your search

+68 -9
View File
@@ -456,8 +456,24 @@ class TestMqlPn3P4NodeChamberSegmentTests(unittest.TestCase):
closure.components.p4_port3_next_resistance_chamber_outlet_orifice.name,
"pn_orifice_23",
)
self.assertEqual(len(closure.initial_state_vector()), 96)
self.assertEqual(len(rhs), 96)
self.assertEqual(
closure.components.p4_port1_next_orifice.name,
"pn_morifice_11",
)
self.assertEqual(
closure.components.p4_port1_next_orifice_line.name,
"pneumatic_77",
)
self.assertEqual(
closure.components.p4_port1_next_orifice_node.alias,
"pn_node3_12",
)
self.assertEqual(
closure.components.p4_port1_next_orifice_output_line.name,
"pneumatic_79",
)
self.assertEqual(len(closure.initial_state_vector()), 102)
self.assertEqual(len(rhs), 102)
self.assertAlmostEqual(
snapshot.p4_balance.pressure_pa,
snapshot.p4_primary_line.p,
@@ -534,6 +550,25 @@ class TestMqlPn3P4NodeChamberSegmentTests(unittest.TestCase):
closure.components.p4_port1_next_port1_line.name,
port1_next_port1.line_alias,
)
self.assertEqual(
closure.components.p4_port1_next_orifice_output_line.name,
self.system._pnl0001_line_for_node_port(
closure.components.p4_port1_next_node.alias,
"port_4",
).name,
)
self.assertEqual(
closure.components.p4_port1_next_orifice_node.alias,
"pn_node3_12",
)
self.assertEqual(
closure.components.p4_port1_next_orifice_line.name,
self.system._pnl0003_line_for_node_port("pn_node3_12", "port_2").name,
)
self.assertEqual(
closure.components.p4_port1_next_orifice.name,
"pn_morifice_11",
)
self.assertEqual(
closure.components.p4_bridge_node.alias,
port1_next_port1.remote_node_alias,
@@ -781,7 +816,8 @@ class TestMqlPn3P4NodeChamberSegmentTests(unittest.TestCase):
self.assertAlmostEqual(
snapshot.p4_port1_next_node_to_primary_line_flow
+ snapshot.p4_port1_next_node_to_line_flow
+ snapshot.p4_port1_next_to_bridge_line_flow,
+ snapshot.p4_port1_next_to_bridge_line_flow
+ snapshot.p4_port1_next_orifice_p4_to_output_line_flow,
0.0,
delta=1.0e-12,
)
@@ -865,6 +901,12 @@ class TestMqlPn3P4NodeChamberSegmentTests(unittest.TestCase):
snapshot.p4_port3_next_resistance_to_output_line_flow,
delta=1.0e-12,
)
self.assertAlmostEqual(
snapshot.p4_port1_next_orifice_node_to_line_flow
+ snapshot.p4_port3_next_resistance_chamber_inlet_node_to_line_flow,
0.0,
delta=1.0e-12,
)
next_chamber_mass_sum = rhs[78] + rhs[80] + rhs[82]
self.assertAlmostEqual(
next_chamber_mass_sum,
@@ -878,19 +920,36 @@ class TestMqlPn3P4NodeChamberSegmentTests(unittest.TestCase):
self.assertAlmostEqual(
resistance_chamber_mass_sum,
(
snapshot.p4_port3_next_resistance_chamber_inlet_boundary_to_line_flow
snapshot.p4_port3_next_resistance_chamber_inlet_node_to_line_flow
+ snapshot.p4_port3_next_resistance_chamber_outlet_node_to_line_flow
),
delta=1.0e-12,
)
mass_derivative_sum = sum(rhs[index] for index in range(0, 96, 2))
p4_port1_next_orifice_line_mass_sum = rhs[96] + rhs[98]
self.assertAlmostEqual(
p4_port1_next_orifice_line_mass_sum,
(
snapshot.p4_port1_next_orifice_node_to_line_flow
- snapshot.p4_port1_next_orifice_to_output_line_flow
),
delta=1.0e-12,
)
self.assertAlmostEqual(
rhs[100],
(
snapshot.p4_port1_next_orifice_p4_to_output_line_flow
+ snapshot.p4_port1_next_orifice_to_output_line_flow
),
delta=1.0e-12,
)
mass_derivative_sum = sum(rhs[index] for index in range(0, 102, 2))
self.assertAlmostEqual(
mass_derivative_sum,
snapshot.p4_port3_next_resistance_chamber_inlet_boundary_to_line_flow,
0.0,
delta=1.0e-12,
)
def test_simulates_ninety_six_state_pn3_p4_node_chamber_segment(self) -> None:
def test_simulates_one_hundred_two_state_pn3_p4_node_chamber_segment(self) -> None:
solution = self.system.simulate_pn3_p4_node_chamber_segment_from_spec(
self.spec,
inlet_node_pressure_pa=15.31e6,
@@ -905,8 +964,8 @@ class TestMqlPn3P4NodeChamberSegmentTests(unittest.TestCase):
self.assertTrue(solution.success)
self.assertEqual(len(solution.t), 3)
self.assertEqual(len(solution.y), 96)
self.assertEqual([len(row) for row in solution.y], [3] * 96)
self.assertEqual(len(solution.y), 102)
self.assertEqual([len(row) for row in solution.y], [3] * 102)
if __name__ == "__main__":