组合test_mql 132状态总闭包
This commit is contained in:
1 parent
3d1de6d5d0
commit
716a1c572a
3 files changed
+182
-1
No files matched your search
@@ -526,6 +526,48 @@ class TestMqlPn3P4NodeChamberSegmentTests(unittest.TestCase):
|
||||
snapshot.p4_primary_line.T,
|
||||
)
|
||||
|
||||
def test_full_state_closure_combines_pneumatic_and_mechanical_states(self) -> None:
|
||||
closure = self.system.full_state_closure_from_spec(
|
||||
self.spec,
|
||||
inlet_node_pressure_pa=15.31e6,
|
||||
resistance_boundary_pressure_pa=15.29e6,
|
||||
)
|
||||
|
||||
state = closure.initial_state_vector()
|
||||
snapshot = closure.snapshot(state)
|
||||
rhs = closure.rhs(state)
|
||||
|
||||
self.assertEqual(closure.pneumatic_state_count, 112)
|
||||
self.assertEqual(closure.mechanical_state_count, 20)
|
||||
self.assertEqual(closure.state_count, 132)
|
||||
self.assertEqual(len(state), 132)
|
||||
self.assertEqual(snapshot.state_count, 132)
|
||||
self.assertEqual(snapshot.mechanical.state_count, 20)
|
||||
self.assertEqual(len(rhs), 132)
|
||||
self.assertAlmostEqual(
|
||||
snapshot.pneumatic.p4_balance.pressure_pa,
|
||||
snapshot.pneumatic.p4_primary_line.p,
|
||||
)
|
||||
self.assertEqual(
|
||||
snapshot.mechanical.states[0].alias,
|
||||
"mass_friction_endstops_10",
|
||||
)
|
||||
self.assertAlmostEqual(rhs[112], -0.8167936695810917)
|
||||
|
||||
def test_simulates_full_132_state_closure(self) -> None:
|
||||
solution = self.system.simulate_full_state_from_spec(
|
||||
self.spec,
|
||||
inlet_node_pressure_pa=15.31e6,
|
||||
resistance_boundary_pressure_pa=15.29e6,
|
||||
config=SolveIVPConfig(t_start=0.0, t_stop=1.0e-5, max_step=1.0e-6),
|
||||
t_eval=[0.0, 1.0e-5],
|
||||
)
|
||||
|
||||
self.assertTrue(solution.success)
|
||||
self.assertEqual(len(solution.t), 2)
|
||||
self.assertEqual(len(solution.y), 132)
|
||||
self.assertEqual([len(row) for row in solution.y], [2] * 132)
|
||||
|
||||
def test_p4_closure_uses_structured_neighborhood(self) -> None:
|
||||
closure = self.system.pn3_p4_node_chamber_segment_closure_from_spec(
|
||||
self.spec,
|
||||
|
||||
Reference in new issue
Block a user