Thresholds
Reactor Safety Thermohydraulic Thresholds
Ensuring the reactor’s safety is top priority. Thus, certain situations are to be avoided during normal operation and accidents. In the case of thermohydraulics, several conditions are telltale signs of incoming doom. Within this module different TH thresholds are contained, allowing for post-run analysis of their appearance:
Condition / Threshold |
Implemented Correlations |
|---|---|
ONB - Onset of Nucleate Boiling |
|
OFI - Onset of Flow Instability |
|
OSV - Onset of Significant Void |
|
CHF - Critical Heat Flux |
|
BP - Boiling Power |
References
- Fabrega_CHF(Tin, T_sat, Dh)[source]
The limit for CHF as measured and calculated by Fabrega[5] for slow flows (v < 0.5 m/s)
\[10^7 D_\text{h}(0.023(T_\text{sat} - T_\text{bulk in}) + 4.56)\]- Parameters:
Tin (Celsius) – Bulk coolant temperature at inlet
T_sat (Celsius) – Saturation temperature
Dh (Meter) – Channel hydraulic diameter
- Returns:
q’’ – Heat flux where Critical Heat Flux (CHF) begins
- Return type:
WPerM2
- Mirshak_CHF(T_bulk, T_sat, pressure, v)[source]
The limit for CHF as measured and calculated by Mirshak[4] for rapid flows (v > 1.5 m/s)
\[1.51\cdot 10^6 (1 + 0.1198v)(1 + 0.00914 (T_\text{sat} - T_\text{bulk}))(1+1.9\cdot 10^{-6} p)\]- Parameters:
T_bulk (Celsius) – Bulk coolant temperature
T_sat (Celsius) – Saturation temperature
pressure (Pa) – pressure in channel
v (MPerS) – Coolant flow velocity.
- Returns:
q’’ – Heat flux where Critical Heat Flux (CHF) begins
- Return type:
WPerM2
- Saha_Zuber_OSV(T_bulk, coolant, u, Dh)[source]
Calculates the minimal q’’ heat flux at which OSV occurs, according to Saha & Zuber (1974)[1]:
for \(\text{Pe} < 70,000\):
\[T_\text{sat} - T_\text{bulk} = 0.0022\frac{q''_\text{OSV}D_h}{k_\text{bulk}}\]for \(\text{Pe} > 70,000\):
\[T_\text{sat} - T_\text{bulk} = 153.8 \frac{q''_\text{OSV}}{c_{p, \text{bulk}}G}\]Danger
This method assumes that the coolant temperature does not change when the flux changes. This is not what people usually mean when they use OSV. See
Saha_Zuber_OSV_computed_bulkfor what you should probably use. This function is deprecated as the main usage and may change its name to reflect that in the future.- Parameters:
T_bulk (Celsius) – Coolant bulk temperature.
coolant (Liquid) – Coolant properties at T_bulk and appropriate pressure.
u (MPerS) – Coolant flow velocity.
Dh (Meter) – Hydraulic diameter
- Returns:
q’’ – OSV (Onset of Significant Void) heat flux.
- Return type:
WPerM2
- Saha_Zuber_OSV_computed_bulk(T_inlet, coolant, mdot, Dh, area, heated_perimeter, flux_shape, dz, flux_enworse=1.0)[source]
Calculates the minimal q’’ heat flux at which OSV occurs, according to Saha & Zuber (1974)[1] (see
Saha_Zuber_OSV), but the bulk temperature is computed as though the flux through the channel is indeed \(q''_{OSV}\).Saha & Zuber’s correlation may be written as:
\[T_\text{sat} - T_\text{bulk} = \frac{q''_{OSV}}{X}\]Where \(X\) is, for \(\text{Pe} < 70,000\):
\[X = \frac{\text{Nu}_c}{\text{Pe}}Gc_p = \frac{k}{D_h}\text{Nu}_c\]for \(\text{Pe} > 70,000\):
\[X = \text{St}_c G c_p\]and \(\text{St}_c = 0.0065, \text{Nu}_c = 455\).
Assuming \(q''(z)_{OSV} = \alpha q''(z)\), and the flux is given for the entire
heated_perimeter(\(H_p\)):\[T_\text{bulk} = T_{in} + \frac{H_p}{\dot{m}c_p}\alpha \int^z q'' dz'\]meaning:
\[\alpha = \frac{q''_{OSV}}{q''} = \frac{T_\text{sat} - T_{in}}{\frac{q''}{X} + \frac{H_p}{\dot{m}c_p}\int^z q'' dz'}\]and finally, \(q''_{OSV}\) is independent of the normalization of \(q''\):
\[q''_{OSV} = \frac{X(T_\text{sat} - T_{in})}{1 + \frac{XH_p}{\dot{m}c_p}\frac{\int^z q'' dz'}{q''(z)}}\]- Parameters:
T_inlet (Celsius) – Coolant bulk temperature.
coolant (Liquid) – Coolant properties at T_bulk and appropriate pressure.
mdot (KgPerS) – Mass flow rate
Dh (Meter) – Hydraulic diameter
area (Meter2) – Flow area
heated_perimeter (Meter) – Heated perimeter
flux_shape (Value) – A one dimensional heat flux distribution, which can be freely normalized.
dz (Meter) – Axial cell lengths
flux_enworse (float) – Factor to make the flux worse by. This is for local flux disturbance effects like fuel homogeneity.
- Returns:
q’’ – OSV (Onset of Significant Void) heat flux.
- Return type:
WPerM2
- Sudo_Kaminaga_CHF(T_bulk, sat_coolant, mdot, pipe, g=9.80665)[source]
The limit heat flux for CHF according to Kaminaga et al.[7].
- Parameters:
T_bulk (Celsius) – Bulk coolant temperature
sat_coolant (Liquid) – Coolant properties at saturation temperature
mdot (KgPerS) – Coolant mass flow rate
pipe (EffectivePipe) – Channel Geometry
g (MPerS2) – Gravitational acceleration constant
- Return type:
float | ndarray
Notes
The width of the channel is taken from the pipe from an attribute called width. This attribute is only ever really used here, and it is geometrically set for most channels, and can be manually set for custom pipes, or left as None.
This width should not be taken as the heated width, according to Mishima’s experiments. In the original works by Mishima[9], which Sudo & Kaminage cite[7], they use the hydraulic diameter for annular channels, and the channel width for their rectangular case, where the heated region was 30mm out of 40mm. Thus, heated width would be the wrong quantity to use here.
References
[9] K. Mishima, H. Nishihara, T. Shibata, “CHF Correlations Related to the Core Cooling of a Research Reactor”, JAERI-M 84-073, International Meeting on Reduced Enrichment for Research and Test Reactors, Tokai, Japan, 1983.
- Returns:
q’’ – CHF (Critical Heat Flux)
- Return type:
WPerM2
- Parameters:
T_bulk (float | ndarray)
sat_coolant (Liquid)
mdot (float | ndarray)
pipe (EffectivePipe)
g (float | ndarray)
- Whittle_Forgan_OFI(mdot, sat_temperature, inlet_temperature, pipe, cp)[source]
The limit for “Onset of Flow Instability” as per Whittle and Forgan[3], but with a correction by Fabréga[6]. In essence, power for OFI is given by:
\[P_\text{RD} = \frac{\dot{m} c_\text{p}(T_\text{sat} - T_\text{inlet})} {1 + 3.15 (D_\text{h} / L_\text{h}) (1.08G)^{0.29}}\]Where \(G= \rho u = \dot{m}/A\) is the mass flow flux, given in CGS. The reference says so: “G: vitesse massique à l’entrée et évaluée en CGS”
- Parameters:
mdot (KgPerS) – Mass flow rate
sat_temperature (Celsius) – Saturation temperature at the outlet.
inlet_temperature (Celsius) – Bulk temperature at the fuel inlet.
pipe (EffectivePipe) – The geometry of the flow region.
cp (Callable[[Celsius], JPerKgK]) – Strategy for computing the specific heat of the coolant.
- Returns:
PRD_OFI – OFI limit power
- Return type:
Watt
- boiling_power(mdot, T_sat, Tin, cp_in)[source]
The limit for “Boiling power ratio” as per TERMIC(CONVEC)[8] - ratio of the channel power leading to saturated water temperature at the channel outlet to the current channel power:
\[BP = \dot{m} c_\text{p}(T_\text{sat} - T_\text{inlet})\]- Parameters:
mdot (KgPerS) – Mass flow rate
Tin (Celsius) – Bulk coolant temperature @ inlet
cp_in (JPerKgK) – Specific heat of the coolant at Tin
T_sat (Celsius) – Saturation temperature
- Returns:
Power required to reach the saturation temperature in the channel.
- Return type:
Watt