Quantize manual rod steps to 0.025
This commit is contained in:
@@ -177,10 +177,10 @@ class ReactorDashboard:
|
||||
self._toggle_turbine_unit(idx)
|
||||
elif ch in (ord("+"), ord("=")):
|
||||
# Insert rods (increase fraction)
|
||||
self._queue_command(ReactorCommand(rod_position=self._clamped_rod(0.05)))
|
||||
self._queue_command(ReactorCommand(rod_position=self._clamped_rod(constants.ROD_MANUAL_STEP)))
|
||||
elif ch == ord("-"):
|
||||
# Withdraw rods (decrease fraction)
|
||||
self._queue_command(ReactorCommand(rod_position=self._clamped_rod(-0.05)))
|
||||
self._queue_command(ReactorCommand(rod_position=self._clamped_rod(-constants.ROD_MANUAL_STEP)))
|
||||
elif ch == ord("["):
|
||||
demand = self._current_demand() - 50.0
|
||||
self._queue_command(ReactorCommand(consumer_demand=max(0.0, demand)))
|
||||
@@ -710,7 +710,9 @@ class ReactorDashboard:
|
||||
|
||||
def _clamped_rod(self, delta: float) -> float:
|
||||
new_fraction = self.reactor.control.rod_fraction + delta
|
||||
return max(0.0, min(0.95, new_fraction))
|
||||
step = constants.ROD_MANUAL_STEP
|
||||
quantized = round(new_fraction / step) * step
|
||||
return max(0.0, min(0.95, quantized))
|
||||
|
||||
def _install_log_capture(self) -> None:
|
||||
if self._log_handler:
|
||||
|
||||
Reference in New Issue
Block a user