"""Physical constants and engineering limits for the simulation.""" from __future__ import annotations SECONDS_PER_MINUTE = 60.0 MEGAWATT = 1_000_000.0 NEUTRON_LIFETIME = 0.1 # seconds, prompt neutron lifetime surrogate FUEL_ENERGY_DENSITY = 200.0 * MEGAWATT # J/kg released as heat COOLANT_HEAT_CAPACITY = 4_200.0 # J/(kg*K) for water/steam COOLANT_DENSITY = 700.0 # kg/m^3 averaged between phases MAX_CORE_TEMPERATURE = 1_800.0 # K MAX_PRESSURE = 15.0 # MPa typical PWR primary loop limit CONTROL_ROD_SPEED = 0.03 # fraction insertion per second STEAM_TURBINE_EFFICIENCY = 0.34 GENERATOR_EFFICIENCY = 0.96 ENVIRONMENT_TEMPERATURE = 295.0 # K AMU_TO_KG = 1.660_539_066_60e-27 MEV_TO_J = 1.602_176_634e-13 ELECTRON_FISSION_CROSS_SECTION = 5e-16 # cm^2, tuned for simulation scale PUMP_SPOOL_TIME = 5.0 # seconds to reach commanded flow TURBINE_SPOOL_TIME = 12.0 # seconds to reach steady output # Threshold inventories (event counts) for flagging common poisons in diagnostics. KEY_POISON_THRESHOLDS = { "Xe": 1e20, # xenon "I": 1e20, # iodine precursor to xenon "Sm": 5e19, # samarium }