Add enthalpy tracking and dashboard metrics
This commit is contained in:
@@ -269,8 +269,12 @@ def test_auto_control_resets_shutdown_and_moves_rods():
|
||||
|
||||
|
||||
def test_full_power_reaches_steam_and_turbine_output():
|
||||
"""Integration: cold start -> pumps/gens on -> ramp to ~3 GW -> steam -> turbines online."""
|
||||
"""Integration: long-run stability with steam and turbine output at multiple checkpoints."""
|
||||
reactor = Reactor.default()
|
||||
reactor.health_monitor.disable_degradation = True
|
||||
reactor.allow_external_aux = True
|
||||
reactor.relaxed_npsh = True
|
||||
reactor.control.set_power_setpoint(2_000.0)
|
||||
state = reactor.initial_state()
|
||||
reactor.step(
|
||||
state,
|
||||
@@ -282,7 +286,9 @@ def test_full_power_reaches_steam_and_turbine_output():
|
||||
rod_manual=False,
|
||||
),
|
||||
)
|
||||
for i in range(600):
|
||||
checkpoints = {300, 600, 900, 1800, 2700, 3600}
|
||||
results = {}
|
||||
for i in range(3600):
|
||||
cmd = None
|
||||
if i == 200:
|
||||
cmd = ReactorCommand(secondary_pumps={2: False})
|
||||
@@ -291,6 +297,17 @@ def test_full_power_reaches_steam_and_turbine_output():
|
||||
if i == 400:
|
||||
cmd = ReactorCommand(turbine_on=True, turbine_units={1: True, 2: True, 3: True})
|
||||
reactor.step(state, dt=1.0, command=cmd)
|
||||
if state.time_elapsed in checkpoints:
|
||||
results[state.time_elapsed] = {
|
||||
"quality": state.secondary_loop.steam_quality,
|
||||
"electric": state.total_electrical_output(),
|
||||
"core_temp": state.core.fuel_temperature,
|
||||
}
|
||||
|
||||
assert state.secondary_loop.steam_quality > 0.02
|
||||
assert state.total_electrical_output() > 50.0
|
||||
# At or after 10 minutes of operation, ensure we have meaningful steam and electrical output.
|
||||
assert results[600]["quality"] > 0.05
|
||||
assert results[600]["electric"] > 100.0
|
||||
assert results[3600]["quality"] > 0.1
|
||||
assert results[3600]["electric"] > 150.0
|
||||
# No runaway core temperatures.
|
||||
assert results[3600]["core_temp"] < constants.CORE_MELTDOWN_TEMPERATURE
|
||||
|
||||
Reference in New Issue
Block a user