Clamp loop pressure to baseline when pumps are off

This commit is contained in:
Codex Agent
2025-11-22 23:53:46 +01:00
parent 98ff4227a1
commit 733ddf7692

View File

@@ -269,20 +269,12 @@ class Reactor:
state.primary_loop.pressure, 0.5, dt, self.primary_pump.spool_time
)
else:
state.primary_loop.mass_flow_rate = self._ramp_value(
state.primary_loop.mass_flow_rate, 0.0, dt, self.primary_pump.spool_time
)
state.primary_loop.pressure = self._ramp_value(
state.primary_loop.pressure, 0.5, dt, self.primary_pump.spool_time
)
state.primary_loop.mass_flow_rate = 0.0
state.primary_loop.pressure = 0.5
for pump_state in state.primary_pumps:
pump_state.active = False
pump_state.flow_rate = self._ramp_value(
pump_state.flow_rate, 0.0, dt, self.primary_pump.spool_time
)
pump_state.pressure = self._ramp_value(
pump_state.pressure, state.primary_loop.pressure, dt, self.primary_pump.spool_time
)
pump_state.flow_rate = 0.0
pump_state.pressure = state.primary_loop.pressure
pump_state.status = "STOPPING" if pump_state.flow_rate > 1.0 else "OFF"
if self.secondary_pump_active:
total_flow = 0.0
@@ -321,20 +313,12 @@ class Reactor:
state.secondary_loop.pressure, 0.5, dt, self.secondary_pump.spool_time
)
else:
state.secondary_loop.mass_flow_rate = self._ramp_value(
state.secondary_loop.mass_flow_rate, 0.0, dt, self.secondary_pump.spool_time
)
state.secondary_loop.pressure = self._ramp_value(
state.secondary_loop.pressure, 0.5, dt, self.secondary_pump.spool_time
)
state.secondary_loop.mass_flow_rate = 0.0
state.secondary_loop.pressure = 0.5
for pump_state in state.secondary_pumps:
pump_state.active = False
pump_state.flow_rate = self._ramp_value(
pump_state.flow_rate, 0.0, dt, self.secondary_pump.spool_time
)
pump_state.pressure = self._ramp_value(
pump_state.pressure, state.secondary_loop.pressure, dt, self.secondary_pump.spool_time
)
pump_state.flow_rate = 0.0
pump_state.pressure = state.secondary_loop.pressure
pump_state.status = "STOPPING" if pump_state.flow_rate > 1.0 else "OFF"
self.thermal.step_core(state.core, state.primary_loop, total_power, dt)