5.3. Specific Components: Contributions to Flow and Pressure Equations¶
In this section, we shall consider the contributions to the mass flow-rate and pressure equations from the various components in the primary and intermediate loops. Each compressible volume contributes a \(b_0\), a \(b_1\), and a \(b_2\) in Eq. 5.2-19, and each element in each segment connecting two compressible volumes contributes a \(\Delta a_0\), a \(\Delta a_1\), a \(\Delta a_2\), and a \(\Delta a_3\) in Eqs. 5.2-10, 5.2-12, 5.2-14, and 5.2-16. We shall consider compressible volumes without cover gas, compressible volumes with cover gas, pipes, intermediate heat exchangers, and pumps.
5.3.1. Compressible Volumes Without Cover Gas¶
A compressible volume with no cover gas is treated as a compressible liquid in an expandable container. The volume \(V\) is assumed to vary linearly with pressure p and temperature \(T\):
where \(V_{\text{r}}\) is the volume at a reference pressure \(p_{\text{r}}\) and reference temperature \(T_{\text{r}}\). Also the coolant density \(\rho\) is assumed to vary linearly with \(p\) and \(T\):
where
\(\alpha_{\text{p}}\) = the volume pressure expansion coefficient, \(\frac{1}{V} \frac{\partial \text{V}}{\partial \text{p}}\)
\(\alpha_{\text{T}}\) = the volume thermal expansion coefficient, \(\frac{1}{V} \frac{\partial \text{V}}{\partial \text{T}}\)
\(\beta_{\text{p}}\) = the sodium compressibility, \(\frac{1}{\rho} \frac{\partial \mathrm{\rho}}{\partial \text{p}}\)
\(\beta_{\text{T}}\) = the sodium thermal expansion coefficient, \(\frac{1}{\rho} \frac{\partial \mathrm{\rho}}{\partial \text{T}}\)
The mass of the liquid in the compressible volume is
Using Eq. (5.3-1) and Eq. (5.3-2) in Eq. (5.3-3) and dropping second-order terms gives
which can be rewritten as
where
\(\delta m = m - m_{\text{r}}\)
\(\delta p = p - p_{\text{r}}\)
\(\delta T = T - T_{\text{r}}\)
Eq. (5.3-5) is a general relationship for the pressure change in a compressible volume with no cover gas as a result of mass and temperature changes.
To obtain expressions for \(b_0 \left( j \right)\), \(b_1 \left( j \right)\), and \(b_2 \left( j \right)\), which characterize this compressible volume \(j\), we apply conservation of mass and conservation of energy principles to the volume with flow in and flow out during a time step. Conservation of mass gives
where \(\Delta m\) is the change in the liquid mass in the compressible volume during the time step \(\Delta t\), \(\sum{\overline{w}}_{\text{in}}\) is the sum of the average mass flow rates into the compressible volume during \(\Delta t\), and \(\sum{\overline{w}}_{\text{out}}\) is the sum of the average mass flow rates out during \(\Delta t\).
Conservation of energy gives
where \(m_3\) and \(T_3\) are the mass and temperature of the liquid in the compressible volume at the beginning of the time step, \(\Delta T\) is the change in temperature of the liquid in the compressible volume during the time step, \(\sum{\overline{w}}_{\text{in}}T_{\text{in}}\) in the sum of the average mass flow rates into the volume multiplied by the incoming temperature, \(\sum{{\overline{w}}_{\text{out}}T_{\text{out}}}\) is the sum of the average mass flow rates out of the volume multiplied by the outgoing temperature, \(Q\) is the heat flow rate from the compressible volume walls and from other components in contact with the compressible volume liquid, and \(c_{\text{l}}\) is the heat capacity of the liquid in the compressible volume. Eq. (5.3-7) expresses the fact that the energy in the liquid in the compressible volume at the end of the time step is the sum of the energy present at the beginning of the time step, the excess of the energy flowing in over that flowing out during the time step, and the energy contributed to the liquid from the walls of the compressible volume during the time step.
Solving Eq. (5.3-7) for the change in the liquid temperature during the time step, gives
To first order, the \(m_3 + \Delta m\) in the denominator is approximated as \(m_3\). Inserting Eq. (5.3-6) and Eq. (5.3-8) into Eq. (5.3-5) gives
Comparison of this equation with Eq. 5.2-19 shows that for the compressible volume with no cover gas
and
The \(Q \Delta t\) term in Eq. (5.3-10) is calculated in a manner similar to that described in Section 5.4.4, except that the value for \(b_0\) is calculated before the temperatures at the end of the step are calculated, so \(q\) is calculated on the basis of temperatures at the beginning of the time step. In the present version of the code, the reference mass \(m_{\text{r}}\) and the reference temperature \(T_{\text{r}}\) are taken as the mass and temperature at the beginning of the time step.
5.3.2. Compressible Volumes With Cover Gas¶
A compressible volume with cover gas is treated in a fashion similar to that without cover gas except that the compression of the liquid is neglected compared with the compression of the gas, so that all of the expansion or compression is attributed entirely to the gas. The cover gas is assumed to expand or compress adiabatically, and an increase in the gas volume is equal to the decrease in the liquid volume. The accompanying rise or fall in the level of the gas-liquid interface is taken as the volume change divided by the area of the compressible volume. In addition, the conservation of mass and the conservation of energy principles are observed. The conservation of mass is applied by taking the increase in the mass of the liquid in a compressible volume as the difference between the liquid flowing in and that flowing out during a time step, and the conservation of energy is taken as the increase in the mass of the liquid in the compressible volume times its temperature as the difference between the mass times temperature flowing in and that flowing out during a time step.
The liquid pressure at an elevation, \(z_{\text{r}}\), in the compressible volume is given by
where
\(p_{\text{l}}\) = the pressure in the liquid
\(p_{\text{g}}\) = the pressure of the cover gas above the liquid
\(\rho_{\text{l}}\) = the liquid density
\(g\) = the acceleration of gravity
\(z_{\text{i}}\) = the height of the liquid gas interface
\(z_{\text{r}}\) = the reference height for the compressible volume
and the change in the liquid pressure in the compressible volume is obtained by taking differentials of Eq. (5.3-13):
Adiabatic compression of the cover gas is taken as
where
\(V_{\text{g}}\) = the volume of the cover gas
\(\gamma\) = the ratio of the specific heat at constant pressure to that at constant volume for the cover gas
and in differential form becomes:
The conservation of liquid mass for a compressible volume gives
where
\(\Delta m_{\text{l}}\) = the liquid mass increase in the compressible volume during the time step
\(\Delta t\) = the time-step size
\(\sum{\overline{w}}_{\text{in}}\) = the sum of the average liquid mass flow rates into the compressible volumes during the time step
\(\sum{\overline{w}}_{\text{out}}\) = the sum of the average liquid mass flow rates out from the compressible volume during the time step.
The conservation of energy for a compressible volume yields
where
\(m_{\text{l}}\) = the liquid mass at the beginning of the time step
\(\Delta T_{\text{l}}\) = the increase in liquid temperature in the compressible volume during the time step
\(\sum{{\overline{w}}_{\text{in}} T_{\text{in}}}\) = the sum of the average liquid mass flow rates times temperatures entering the compressible volume during the time step
\(\sum{\overline{w}}_{\text{out}} T_{\text{out}}\) = sum of the average liquid mass flow rates times temperatures leaving the compressible volume during the time step.
In the present version of the code, \(\Delta m_{\text{l}}\) is neglected in comparison with \(m\), giving
In addition to the above equations, we take
where
\(V_{\text{l}}\) = the volume of the liquid in the compressible volume at the beginning of a time step
\(m_{\text{l}}\) = the mass of the liquid in the compressible volume at the beginning of a time step
\(\rho_{\text{l}}\) = the density of the liquid
\(A\) = the area of the compressible volume.
Differencing Eq. (5.3-21), we have
and taking
we can write the following expression for the change in the liquid pressure during a time step as
Inserting Eq. (5.3-17) for \(\Delta m_{\text{l}}\)and Eq. (5.3-19) for \(\Delta T_{\text{l}}\) and then comparing with Eq. 5.2-19, we see that the values of the \(b\)’s for a compressible volume with a cover gas are
5.3.3. Pipes and Intermediate Heat Exchangers¶
In considering the flow through a pipe or through an intermediate heat exchanger, several factors are taken into consideration. The contribution of the element to \(a_{\text{o}}\) in Eq. 5.2-9 is taken as
where
\(L\) = the length of the element
\(A\) = the flow area of the element
The pressure drop contribution of the element to \(a_1\) in Eq. 5.2-11 is composed of a number of terms. One of these terms is the frictional pressure drop, which is written as
where
\(\Delta p_{\text{fr}}\) = the frictional pressure drop
\(f\) = the Moody friction factor
\(L\) = the length of the element
\(D_{\text{h}}\) = the hydraulic diameter of the element
\(\rho\) = the density of the liquid
\(v\) = the liquid velocity
\(w\) = the liquid mass flow rate
\(A\) = the flow area of the element
The Moody friction factor \(f\) for turbulent flow in pipes [5-2] is taken as
where
\(C_1 = 0.0055\)
\(C_2 = 20,000\)
\(C_3 = 1.0 \times 10^{6}\)
\(C_4 = 1/3\)
\(\varepsilon\) = the user-supplied roughness of the element
\(\text{Re}\) = the Reynolds number
For laminar flow, the friction factor \(f\) is taken as
The Reynolds number in either case is
where \(\mu\) is the viscosity of the fluid.
A second term is the pressure drop caused by bends in the flow path, and these are modeled as an additional frictional drop term, written as
where
\(L_{\text{B}}/D_{\text{B}}\) = a user-supplied input number for an effective length-to-diameter ratio per bend
\(N_{\text{B}}\) =the number of bends in the element
A third term is the pressure drop to account for baffles or restrictive orifices which cause greater pressure drops than would be accounted for by friction or bends above. This term is taken as
where \(G_2'\) is the minor loss coefficient, defined as
based on the user-provided nominal loss coefficient, \(G_2\) (G2PRDR
).
A fourth item is the second term in Eq. 5.2-1, which is proportional to the square of the mass flow rate, and is due to the difference in the fluid densities at the inlet and outlet ends of the element. It has the form
where
\(\rho_{\text{O}}\) = the fluid density at the element outlet
\(\rho_{\text{I}}\) = the fluid density at the element inlet
A final term is the gravity-head term for the element, taken as
where
\(z_{\text{out}}\) = the height of the element outlet
\(z_{\text{in}}\) = the height of the element inlet
\(g\) = the acceleration of gravity
\(\overline{\rho}\) = the average of the inlet and outlet fluid densities
Taking the above five terms together, the contribution from the element to \(a_1\) is
The contribution of the element to \(a_2\), which is the derivative of the pressure drops with respect to time, as shown in Eq. 5.2-14, is zero, since the friction factors and the geometry are assumed not to change independently with time. Hence
The contribution of the element to \(a_3\), however, which is the derivative of the pressure drops with respect to the mass flow rate, as shown in Eq. 5.2-16, is obtained by differentiation. For laminar flow, differentiating Eq. (5.3-32) gives
For turbulent flow, differentiating Eq. (5.3-31) gives
Taking the derivative with respect to \(w\) of each term in Eq. (5.3-39), we have for the contribution to \(a_3\)
5.3.4. Pumps¶
Pump components are an extension of the pipe components, in terms of hydraulic contributions. Pump components add the impact of the pump head to the pipe hydraulic contributions, \(\Delta a_{0}^{\text{pipe}}\), \(\Delta a_{1}^{\text{pipe}}\), \(\Delta a_{2}^{\text{pipe}}\), and \(\Delta a_{3}^{\text{pipe}}\), defined in Eq. (5.3-29), Eq. (5.3-39), Eq. (5.3-40) and Eq. (5.3-43), respectively. There are three pump choices available in the PRIMAR-4 module: a user-supplied table look-up, a centrifugal pump, and an electromagnetic pump. There are a number of options for the centrifugal and electromagnetic pumps.
5.3.4.1. Table Look-Up¶
The user supplies a table of relative pump head vs. time, and the code interpolates linearly between points in the table. The pump head as a function of time is given by
where \(f \left( t \right)\) is the user-supplied table, with \(f \left( t = 0 \right) = 1.0\), and \(H_{\text{r}}\) is the reference pump head for the particular pump. The contribution to the coefficients in Eqs. 5.2-10, 5.2-12, 5.2-14, and 5.2-16 are
where
\(\Delta t\) = the time interval
\(t_3\), \(t_4\) = the times at the beginning and end of the time interval
5.3.4.2. Centrifugal Pumps¶
5.3.4.2.1. Option 1¶
In this option, the pump head and the pump torque are represented either by constant values or by polynomial fits, depending upon the pump flow rates or upon the pump speeds. The flow rates and speeds, and also the pump head and torque, are expressed as multiples of rated quantities, which are user-supplied. The constant values and the coefficients in the polynomial fits are also user-supplied.
The pump head and torque are expressed as functions of the parameter \(\chi\), which is
with
where
\(w\) = the pump flow rate
\(w_{\text{R}}\) = the rated pump flow rate
\(s\) = the pump speed
\(s_{\text{R}}\) = the rated pump speed
Pump Head
For positive pump speeds the pump head is taken as
where
\(\Delta p_{\text{p}}\) = the pump head
\(H_{\text{R}}\) = the reference pump head
\(A_1\) ,… \(A_8\) = user-supplied coefficients
For negative pump speeds, or flow reversal, the pump head is taken as
with
where
\(A_{10}\) = user-supplied coefficient
Pump Torque
Next, for positive pump speeds, the pump torque is
with
where
\(\tau\) = the pump torque
\(\tau_{\text{R}}\) = the reference pump torque
\(\chi,\ \overline{w},\ \overline{s}\) = the same as for the pump head
\(A_{11}\), … \(A_{15}\) = user-supplied coefficient
For negative pump speeds, the pump torque is taken as
Pump Speed
The pump speed and pump torque are related by the equation is
where
\(I\) = the moment of inertia of the pump and motor
\(s\) = the pump speed
\(\tau_{\text{m}}\) = the motor torque
\(\tau_{\text{p}}\) = the pump torque
\(k_1\) = constant of proportionality
\(w\) = the pump flow rate
The term \(- k_1\) w is a drag term proportional to the flow rate. The motor torque \(\tau_{\text{m}}\) is a user-supplied table look-up.
Rotor Lock-Up
If the normalized pump speed, \(\overline{s}\), falls below the value \(A_9\), and if \(A_9 > 0\), then the rotor locks; and the speed is held at zero after that.
Flow Rate Coefficients
The contribution to the \(a\)’s in Eqs. 5.2-10, 5.2-12, 5.2-14 and 5.2-16 are then as follows:
\(\Delta p_{\text{p}}\) = the pump head
\(\frac{\partial\mathrm{\Delta p_{\text{p}}}}{\partial \text{t}}, \frac{\partial \text{s}}{\partial \text{t}} \frac{\partial \mathrm{\Delta p_{\text{p}}}}{\partial \text{w}}\) = the partial derivatives of pump head and pump speed described above under the various conditions of speed and flow
5.3.4.2.2. Option 2¶
This pump option makes use of the homologous pump curves and should permit operation of the pump in all four quandrants of pump operations–normal pump mode, energy dissipation mode, turbine mode, and reverse pump mode. The actual curves used for the pump head and torque are, at present, built into the model using data statements and are the three-region curve fit taken from a memo by J. F. Koenig [5-1].
The pump head and torque values are obtained from
where
\(H\) = pump head
\(T\) = pump torque
\(w\) = flow rate
\(s\) = pump speed
\(x = \pi + \left( \frac{\overline{w}}{\overline{s}} \right) = \pi + \mathrm{atan2}\left( \overline{w},\overline{s} \right)\)
and the bar denotes normalization with respect to reference quantities\(\left( \text{i.e.}, \overline{w} = w/w_{\text{r}} \right)\) and the subscript \(r\) denotes reference quantities. The coefficients \(C_{\text{ji}}\) and \(D_{ji}\) represent the three-region curve fit with
The value for \(H_{\text{r}}\) is an input while \(T_{\text{r}}\) is obtained from
where \(\eta\) is the pump efficiency at reference conditions and \(\rho\) is the fluid density.
At low flow conditions with \(\left| \overline{w} \right| < w_{\text{c}}\) where \(w_{\text{c}}\) represents a cutoff value specified by the user, the pump head is calculated as a linear interpolation between the pump head at zero flow and at the \(w_{\text{c}}\) flow:
The value \(w_{\text{c}}\) is specified as an input value in APMPHD (13,IPMP) in input block 18. The frictional torque losses, \(T_{\text{f}}\), are taken as a three-region quadratic fit over \(\overline{s}\)
where
The nine coefficients, \(A_{\text{ji}}\), are specified as input values in APMPHD (L,IPMP) in input block 18. The cutoff speeds \(s_1\) and \(s_2\) are also input values in APMPHD (L, IPMP).
For the steady-state, the subroutine SSPUMP makes use of a root finder to locate the pump speed necessary for a specified pump head. It is assumed that steady-state will be at a flow level above \(w_{\text{c}}\).
The subroutine PUMPFL includes the following calculations for \(\Delta a_{\text{o}}\), \(\Delta a_1\), \(\Delta a_2\) and \(\Delta a_3\), with
where \(H\) and \(\Delta t\) represent the pump head and time interval, respectively. The terms \(\Delta a_{\text{o}}\) and \(\Delta a_1\) are calculated as in the centrifugal pump option 1; \(\Delta a_2\) is found using:
where
\(T_{\text{m}}\) = motor torque
\(I\) = pump inertia
and from Eq. (5.3-68) and Eq. (5.3-71)
for \(\left| \overline{w} \right| > w_{c}\text{and}\)
for \(\left| \overline{w} \right| < w_{\text{c}}~.\)
\(\Delta a_3\) is found using Eq. (5.3-77) and
for \(\left| \overline{w} \right| > w_{\text{c}}\) and from
for \(\left| \overline{w} \right| < w_{\text{c}},\) and
The subroutine PUMPFN includes the pump torque curves in integrating Eq. (5.3-79) to determine \(s\). Approximating Eq. (5.3-79) as
Note where the subscripts 3 and 4 denote the beginning and ending times of the \(\Delta t\) interval and approximating
in Eq. (5.3-84), \(\Delta s\) may be obtained as
Locked Rotor
If \(\overline{s} < A_{20}\), where \(A_{20}\) is the input variable APMPHD(20, IPMP), and if \(\overline{w} < A_{19}\), then the rotor locks and the pump speed is set to zero and held at zero. For a locked rotor the pump head is calculated as
where \(A_{12}\) and \(A_{13}\) are input in the APMPHD(K, IPMP) array.
Pump Cavitation
In a centrifugal pump, cavitation will occur if the applied net positive suction head (ANPSH), or pump inlet pressure, is less than the required net positive suction head (RNPSH). This can occur if there is a break in the outlet pipe from the pump, leading to an increase in the pump flow rate and an increase in the RNPSH. If pump cavitation occurs, there will be a drop in pump head. Although there is reasonably good RNPSH data for many pumps, there is little data on pump behavior in the cavitation range, mainly because cavitation tends to destroy a pump, so no one wants to operate in that range. On the other hand, transient pump cavitation can occur for a short time after a pipe rupture, and the resulting decrease in pump head can have a significant impact on the flow out the rupture and on the flow rate through the core. The homologous pump model in PRIMAR-4 tests for pump cavitation and reduces the pump head if cavitation occurs.
The required net positive suction head is calculated as
where
Then, if RNPSH > ANPSH, the cavitated head, \(H_{\text{c}}\), is calculated as
where \(H\) is the normal head, calculated as described in the previous sections, and the cavitation factor \(f_{\text{c}}\) is calculated as
where
The cavitation factor of Eq. (5.3-92) is somewhat arbitrary; but, as previously mentioned, there is little data for behavior in the cavitation range, and this expression results in a rapid drop in pump head as the pump goes farther into the cavitation range. With this treatment, the expressions used in Eq. (5.3-77) and Eq. (5.3-78) for \(\Delta a_2\) and \(\Delta a_3\) are
5.3.4.2.3. EBR-II Pump Model¶
The third centrifugal pump option in PRIMAR-4 is essentially the pump model used in the NATDEMO code [5-5] for EBR-II. By adjusting the coefficients in the pump characteristics curves, this model could probably also be used for other reactors. This model is somewhat simpler than the option 2 model, in that the EBR-II pump model is mainly applicable to the first quadrant (positive flow, positive pump speed). This model can be used for negative flow, but it is probably not applicable to negative pump speed. Also, for the EBR-II pump model, the user specifies the pump speed as a function of time; whereas in options 1 and 2, the code calculated the pump speed.
In this option, the pump head is calculated from
where
\(H\) = pump head
\(s\) = pump speed
and
\(w\) = coolant flow rate
The \(r\) subscript refers to the rated value. The coefficients \(b_1\) and \(b_2\) are constant, but the values of \(b_3\) and \(b_4\) depend on the speed and flow rate:
Eq. (5.3-100) and Eq. (5.3-103) are based on the idea of using a stopped-rotor pressure drop if \(\overline{s} < \varepsilon_{\text{m}} \overline{w}\). Also, the stopped-rotor pressure drop is a laminar value if \(\overline{w} < {\overline{w}}_{\text{t}}\), or a turbulent value if \(\overline{w} \geq {\overline{w}}_{\text{t}}\). The default values for the coefficients are:
and
This correlation produces a discontinuity in pump head at the switch from spinning rotor to stopped rotor. With the default values, the pump head is continuous at the transition from turbulent to laminar flow.
For the steady-state initialization in SSPUMP, the initial normalized pump head, \(\overline{H_{0}}\) and flow rate, \(\overline{w_{0}}\) , are known, and Eq. (5.3-96) is solved to find \(\overline{s_{0}}\), the initial steady-state pump speed:
It is assumed that \({\overline{s}}_{0} > \varepsilon_{\text{m}} {\overline{w}}_{0}\), and the values used for \(b_3\) and \(b_4\) in SSPUMP are \(b_{3\text{m}} b_{4\text{t}}\). The user supplies a table of normalized pump speed vs. time, normalized to the initial steady-state speed. The code then interpolates linearly from this table to get pump speeds for the transient calculation.
In PUMPFL where \(\Delta a_0\), \(\Delta a_1\), \(\Delta a_2\), and \(\Delta a_3\) are calculated, \(\Delta a_0\) and \(\Delta a_1\), are calculated using Eq. (5.3-65) and Eq. (5.3-66) or Eq. (5.3-74) and Eq. (5.3-75), as in the other pump options. For this option
with
and \(ds/dt\) obtained from the user-specified table of normalized pump speed vs. time:
also,
5.3.4.2.4. Pump Head vs. Flow Option¶
One pump option in SAS4A/SASSYS‑1 allows the user to specify the normalized pump head as a function only of normalized flow rate. In this option, the normalization is to the initial steady-state values. The user supplies a table of normalized pump head vs. normalized flow rate, and the code uses linear interpolation between the entries in the table.
For this option, \(\Delta a_0\) and \(\Delta a_1\) for the pump are calculated in the same way as for the other pump options. Then
and
with \(\text{dH}/\text{dw}\) being evaluated numerically from the table of \(\overline{H}\) vs. \(\overline{w}\):
where \(w_0\) is the initial steady state flow rate, \(w\) is the current flow rate, and \(H\) is the pump head.
5.3.4.3. Electromagnetic Pumps¶
5.3.4.3.1. Electromagnetic Pump¶
The electromagnetic pump is modeled as a pipe element. The expression for the pump head for the electromagnetic pump is
with
where
\(\Delta p_{\text{p}}\) = the pump head
\(H_{\text{s}} \left( t \right)\) = the pump stall head
\(v_{\text{Na}}\) = the sodium velocity at the beginning of the time interval
\(w\) = the pipe flow rate
\(A\) = the pipe area
\(\rho\) = the sodium density
\(v_{\text{sy}}\) = user-supplied synchronous magnetic field velocity
The quantity
is a user-supplied table of normalized stall head as a function of time.
The contributions to the \(a\)’s in Eqs. 5.2-10 through 5.2-16 for the electromagnetic pump are
where
\(\Delta p_{\text{p}} \left( t_3 \right)\) = the pump head evaluated at the beginning of the time interval
\(\Delta t\) = the time interval
\(H_{\text{s}} \left( t_3 \right)\) = the stall head at the beginning of the time interval
\(H_{\text{s}} \left( t_4 \right)\) = the stall head at the end of the time interval
5.3.4.3.2. ALMR EM Pumps¶
In the ALMR design, the primary pumps contain motor-generators that extend the coastdown times of these EM pumps. Since this combination of EM pumps and motor-generators cannot be modeled well with previous SAS4A/SASSYS‑1 pump options, the ALMR program developed a new pump model to handle this configuration. The new model uses a model similar to that used by General Electric in their ARIES-P code. It is based on head and efficiency data obtained by GE and transmitted to ANL (5-29).
In the ALMR design, a synchronous motor is running all of the time during normal operation, but the power to the EM pump does not go through the motor as long as the normal pump power is available. If normal pump power is lost, then the motor becomes a generator, and a switch is thrown automatically to supply voltage from the motor-generator to the pump. The pump coastdown rate is then determined by the inertia of the motor. The motor is designed such that it will initially supply 60% of nominal voltage to the pump. Thus, when normal power is lost and the motor-generator power is switched on there is a sudden drop in pump head and flow followed by a gradual coastdown.
Controlling the Trip Time
There are two options for controlling the time at which the ALMR EM Pump cuts over to the motor-generator. The first method is to set the trip time in input variable APMPHD(7,IPMP) in block PMR4IN. The second method is to set a dynamic trip time using a function. In this case, the Function Block ID is set in input variable ILRPMP
. A single argument is passed to the function containing the value of the time at the end of the current PRIMAR-4 time step. If the time exceeds the value returned by the function, then pump cuts-over to the motor generators, and remains in a tripped state for the remainder of the simulation.
Pump Head
The pump head is correlated with an expression of the form
where the normalized terms are defined as
where
\(H\) = pump head
\(H_{\text{r}}\) = rated head
\(V\) = pump voltage
\(V_{\text{r}}\) = rated voltage
\(f\) = frequency
\(f_{\text{r}}\) = rated frequency
\(w\) = mass flow rate
\(w_{\text{r}}\) = rated mass flow rate
\(L_{\text{f}}\) = friction loss coefficient
and \(h_{\text{n}}\) is a head curve correlated as
with the coefficients \(a_{\text{j}}\) determined by a least-squares fit to the data.
Pump Efficiency
The pump efficiency, \(\varepsilon_{\text{f}}\), is correlated as
with
and \(\varepsilon_{\text{fr}}\) is the rated efficiency
Pump Voltage
Before the cut-over to the motor-generator, the pump voltage is assumed to be constant at its rated value. Also, the frequency is constant at its rated value. Immediately after cut-over, the voltage drops to a fraction, \(V_{\text{fr}}\), of its initial value. Then the voltage is proportional to the square of the frequency, so after cut-over the voltage is
Motor Speed
The equation for the motor speed, \(s\), is
where
\(\tau_{\text{p}}\) = pump torque
\(\tau_{\text{l}}\) = friction loss
\(I\) = moment of inertia
Note that the motor speed and the pump frequency are the same:
The pump torque is given by
where
\(\rho\) = liquid density
The friction loss in the motor is assumed to have the form
where \(L_{\text{m}}\) is a loss coefficient and \(\tau_{\text{r}}\), the rated torque, is given by Eq. (5.3-144) with rated values used for all terms.
Correlations to Pump Data
Reference 5-29 transmitted the data taken for the pump. This data has been fit by a least-squares fitting program to give the parameters listed in Table 5.3-1 for use in Eq. (5.3-137), Eq. (5.3-139), and Eq. (5.3-140). Also a value of .07592 is used for \(L_{\text{f}}\) in Eq. (5.3-132). Table 5.3.2 lists the data from Ref. 5-29, as well as the head and efficiency values calculated using the correlations of equations Eq. (5.3-132), Eq. (5.3-137), Eq. (5.3-138), and Eq. (5.3-140) with the coefficients in Table 5.3.1. Also, some of this data is plotted in Figure 5.3.1 and Figure 5.3.2. It can be seen that the correlations match the data well except for a couple of points.
\(j\) |
\(a_{\text{j}}\) |
\(b_{\text{j}}\) |
\(c_{\text{j}}\) |
---|---|---|---|
1 |
1.133 |
-.148 |
|
2 |
.996 |
7.110 |
-51.235 |
3 |
-2.498 |
-15.972 |
684.934 |
4 |
6.056 |
9.942 |
-3483.628 |
5 |
-4.611 |
12.024 |
9119.690 |
6 |
-18.536 |
-13449.761 |
|
7 |
6.577 |
11279.948 |
|
8 |
-5014.503 |
||
9 |
915.555 |
Normalized Voltage |
Normalized Frequency |
Normalized Flow |
Measured Normalized Head |
Fit Normalized Head |
Measured Efficiency |
Fit Efficiency |
---|---|---|---|---|---|---|
1.000 |
1.000 |
1.148 |
0.042 |
0.041 |
0.115 |
0.133 |
1.000 |
1.000 |
1.124 |
0.250 |
0.242 |
0.505 |
0.469 |
1.000 |
1.000 |
1.086 |
0.500 |
0.524 |
0.781 |
0.807 |
1.000 |
1.000 |
1.000 |
1.000 |
1.000 |
1.000 |
0.997 |
1.000 |
1.000 |
0.800 |
1.483 |
1.494 |
0.928 |
0.915 |
1.000 |
1.000 |
0.600 |
1.508 |
1.514 |
0.710 |
0.709 |
1.000 |
1.000 |
0.400 |
1.399 |
1.389 |
0.469 |
0.468 |
1.000 |
1.000 |
0.200 |
1.265 |
1.270 |
0.229 |
0.229 |
1.000 |
1.000 |
0.0 |
1.134 |
1.133 |
0.0 |
0.0 |
0.627 |
0.778 |
0.886 |
0.042 |
0.042 |
0.183 |
0.256 |
0.627 |
0.778 |
0.862 |
0.167 |
0.158 |
0.551 |
0.600 |
0.627 |
0.778 |
0.824 |
0.333 |
0.314 |
0.817 |
0.879 |
0.627 |
0.778 |
0.762 |
0.581 |
0.500 |
0.970 |
0.932 |
0.628 |
0.778 |
0.762 |
0.581 |
0.505 |
0.970 |
0.932 |
0.312 |
0.472 |
0.532 |
0.042 |
0.052 |
0.318 |
0.381 |
0.312 |
0.472 |
0.520 |
0.083 |
0.097 |
0.529 |
0.608 |
0.312 |
0.472 |
0.495 |
0.167 |
0.178 |
0.773 |
0.848 |
0.312 |
0.472 |
0.476 |
0.227 |
0.226 |
0.863 |
0.884 |
1.202 |
1.111 |
1.143 |
1.306 |
1.144 |
1.008 |
1.009 |
0.929 |
0.944 |
0.952 |
0.905 |
0.912 |
0.998 |
1.003 |
0.820 |
0.833 |
0.857 |
0.734 |
0.835 |
0.986 |
0.981 |
0.519 |
0.667 |
0.667 |
0.444 |
0.415 |
0.954 |
0.932 |
0.437 |
0.556 |
0.571 |
0.327 |
0.383 |
0.917 |
0.920 |
0.251 |
0.500 |
0.476 |
0.227 |
0.096 |
0.855 |
0.789 |
0.219 |
0.389 |
0.381 |
0.145 |
0.143 |
0.757 |
0.757 |
0.153 |
0.278 |
0.286 |
0.082 |
0.111 |
0.567 |
0.602 |
0.071 |
0.222 |
0.190 |
0.037 |
0.025 |
0.268 |
0.255 |
0.027 |
0.111 |
0.095 |
0.009 |
0.010 |
0.026 |
0.031 |
5.3.4.3.3. Equivalent Circuit EM Pump¶
Equivalent circuit theory enables generalized systems-level modeling of EM pumps based on an electric circuit with components that represent the main responses of the pump. By representing the various dissipative and inertial aspects of the pump with resistors and inductors within a hypothetical electrical circuit, traditional circuit analysis techniques are used to approximate the pump’s internal energy flow. Benefits of equivalent circuit theory within SAS include generic pump control as functions of voltage and frequency, flexibility to model a range of pump designs and operating conditions, and computational efficiency.
Two pump models are available on the basis of equivalent circuit theory, referred to as the “detailed” and “simple” models. With the exception of the governing circuit and consequent governing equations, the two models share the same framework, features, and calculation procedures. The common features are discussed here, while the details that differ between the two models are discussed in the subsections below and Section 5.16.7.
The equivalent circuit models assume that the pump is a three-phase, wye-connected, linear electromagnetic pump (annular or non-annular, depending on the specification of ITYPEL). Assuming each phase is equally loaded, all phases are represented using a single circuit of either detailed or simple type. Equating the circuit prediction for electrical power dissipation in resistors representing fluid mechanical power with the hydraulic power imparted to the fluid, the pressure developed by the pump (not including friction, gravity, or form losses) is predicted as
where
\(\Delta p_P\) = pump developed pressure
\(I\) = total phase current
\(Q\) = fluid volumetric flowrate
\(\Psi(s)\) = model-dependent circuit transform function
\(s\) = \(1 - \frac{v_f}{v_s}\) = slip
\(v_f\) = fluid velocity
\(v_s\) = pump synchronous speed
Due to the limited inertia of EM pumps, a quasi-static assumption is employed in solving for \(I\) and \(\Psi\). Therefore the steady-state circuit equations are solved at each transient time step.
Based on this expression, the contributions to the \(\Delta a_i(k)\)’s in Equations 5.2-10, 5.2-12, 5.2-14, and 5.2-16 are:
Pump efficiency is calculated by dividing fluid power in the forward direction by the electrical power dissipated in the entire pump (including all three phases) as
where
\(\eta\) = efficiency
\(\Delta p_f\) = friction losses in the pump element
\(V_s\) = power source phase voltage
\(\phi\) = phase angle
Arbitrary control of the pump’s power supply is enabled through the use of FUNCTION blocks to individually control voltage and frequency with time.
The steady-state initialization process is outlined in Figure 5.3.3.
The resistance representing Joule heating is adjusted for fluid temperature using TR. In the case that TR is specified, the Joule resistance is assumed to be proportional to the temperature-dependent fluid electrical resistance as discussed specifically for each model. The default correlation for sodium electrical resistivity is given in Eq. (5.3-152), with \(371 \text{ K} \leq T \leq 1373 \text{ K}\) [5-10].
where
\(C_1\) = 7.756E-8 Ω-m
\(C_2\) = 2.054E-10 Ω-m/C
\(C_3\) = 3.481E-13 Ω-m/C^2
\(T\) = fluid temperature
The user may also enter their own correlation coefficients to be used in Eq. (5.3-152) as described in Table 5.3.4 for either sodium or when other coolants are employed (see ICLPRP and INAS3D).
Once circuit parameters are deduced, initialization uses the flow rate and pressure across the pump element as determined by PRIMAR-4 to determine the pump’s current, power factor, voltage, and efficiency at steady-state. The steady-state pump voltage is then stored as the amplitude of the normalized voltage used during transient steps.
Pump heating may be modeled for equivalent circuit pumps using the scaling factor fH. This feature is discussed within the temperature calculation section.
5.3.4.3.3.1. Detailed Circuit Model¶
The equivalent circuit used in the detailed model is shown in Figure 5.3.4 where
\(R_1\) = primary electrical resistance
\(R_D\) = electrical resistance of ducts
\(R_J\) = Joule heating resistance
\(R_M\) = fluid mechanical work resistance
\(X_1\) = \(2 \pi f L_1\) = coil leakage reactance
\(X_2\) = \(2 \pi f L_2\) = magnetizing reactance
\(L_1\) = coil leakage inductance
\(L_2\) = magnetizing inductance
\(f\) = power source frequency
Note that all circuit parameters in the detailed circuit model can be functions of both \(s\) and \(f\). These functionalities are specified using FUNCTION blocks.
Using this circuit, \(\Psi\) in Eq. (5.3-146) is
Steady-state initialization of the detailed circuit model starts by evaluating the initial frequency specified through fFuncID. Using this, the initial slip is calculated with the user-provided synchronous speed. Having both frequency and slip, the respective FUNCTION blocks for each of the circuit parameters are evaluated at \(t\) = 0.
If temperature adjustment of circuit parameters is requested, \(R_J\) at each timestep is adjusted to \(R_J'\) using the proportionality relation
where \(C\) is a proportionality constant determined using the value of \(R_J\) at \(t\) = 0 along with TR.
5.3.4.3.3.2. Simple Circuit Model¶
The equivalent circuit used in the simple model is shown in Figure 5.3.5 where \(R_2\) is a resistance representing both Joule and mechanical power. Note that all circuit parameters in the simple circuit model are assumed constant.
Using this circuit, \(\Psi\) in Eq. (5.3-146) is
Determination of circuit parameters during steady-state initialization of the simple circuit model consists of an inversion process using “rated” conditions specified by the user. In this way, the user is not required to know specific electrical/geometric details of the pump, but rather specifies only operating characteristics instead, making the simple model easier to use when pump details are unknown. In this case, “rated” conditions can be any operating state of the pump, though all specified rated conditions for a given pump should be for a fixed operation point (i.e. it is not permissible to specify rated flow at one voltage and rated current at another).
The equations used for determining the circuit parameters are
where the subscripts \(R\) and \(S\) indicate rated and stall (i.e. zero flow) conditions, respectfully.
iDPOPT is used to adjust \(\Delta p_R\) for friction losses if requested by the user. Then all values in Eq. (5.3-156) - Eq. (5.3-159) can be deduced from user input except for \(I_S\). Therefore these equations are solved using a fixed-point iteration on \(I_S\) until convergence to within epsIs is achieved. Once converged, \(L_1\) and \(L_2\) are deduced using \(f_R\). Steady-state circuit reactances are then calculated using frequency at \(t\) = 0 specified through f0. Note that the inversion process used to arrive at Eq. (5.3-156) - Eq. (5.3-159) makes the determinination of circuit parameters in the simple circuit model highly sensitive to the rated conditions specified. For this reason, a set of suggested values to represent a realistic pump are provided Table 5.3.6.
If temperature adjustment of circuit parameters is requested, \(R_2\) at each timestep is adjusted to \(R_2'\) using the proportionality relation
where \(C\) is determined as outlined for the detailed circuit model.
5.3.4.3.3.3. Model Inputs¶
Inputs for equivalent circuit models consist of data entered in both EMPUMP blocks and in standard input records. In addition to those inputs required for all liquid elements in INPMR4 and PMR4IN, standard input records related specifically to equivalent circuit pumps are highlighted in Table 5.3.3.
Variable |
Description |
---|---|
|
Liquid element type of element IELL, specify 5 for a non-annular pump or 15 for an annular . |
|
Element number corresponding to pump IPMP. |
|
Option to specify that pump IPMP uses the equivalent circuit EM pump model (IEMPMP = -3). |
|
EMPUMP block number containing information for equivalent circuit pump IPMP. |
For pumps specified as annular (ITYPEL = 15), a number of additional inputs are required in INPMR4 and PMR4IN.
The required EMPUMP block inputs are highlighted below by those which are common to all models, those which are specific to the detailed circuit model, and those which are specific to the simple circuit model. For the simple circuit model, suggested values are provided to represent the pump from Ref. [5-11].
Keyword |
Description |
Units |
Type |
Range |
---|---|---|---|---|
VFuncID |
FUNCTION block number corresponding to \(V_s(t)\), the normalized pump voltage with time. If omitted, voltage is held constant at steady-state value. If \(V_s(0)\) ≠ 1, table will be normalized to the steady-state value. |
– |
Integer, optional |
0 < VFuncID |
fFuncID |
FUNCTION block number corresponding to \(f(t)\), the normalized pump frequency with time. |
– |
Integer |
0 < fFuncID |
f0 |
Initial frequency of the pump. |
Hz |
Float |
0 < f0 |
fH |
Fraction of pump heating to be included in thermal calculations. If omitted, pump heating is turned off. |
– |
Float, optional |
0 ≤ fH |
fOD |
Fraction of pump heating to be deposited in outer wall of an annular pump element. Ignored for pipe-type pumps. If omitted, \(F_{OD}=\frac{MC_{OD}}{MC_{OD}+MC_{ID}}\), where \(MC_{OD}\) is |
– |
Float, optional |
0 ≤ fOD ≤ 1 |
TR |
Temperature of fluid flow through the pump at rated conditions. If omitted, temperature dependence of circuit parameters is turned off. |
K |
Float, optional |
0 ≤ TR |
C1 |
Constant coefficient in Eq. (5.3-152). If any of C1, C2, or C3 are provided, all three defaults are overwritten. |
Ω-m |
Float, optional |
– |
C2 |
Linear coefficient in Eq. (5.3-152). If any of C1, C2, or C3 are provided, all three defaults are overwritten. |
Ω-m/C |
Float, optional |
– |
C3 |
Quadratic coefficient in Eq. (5.3-152). If any of C1, C2, or C3 are provided, all three defaults are overwritten. |
Ω-m/C^2 |
Float, optional |
– |
Keyword |
Description |
Units |
Type |
Range |
---|---|---|---|---|
R1FuncID |
FUNCTION block number corresponding to 𝑅1(𝑠,𝑓). |
– |
Integer |
0 < R1FuncID |
RDFuncID |
FUNCTION block number corresponding to 𝑅D(𝑠,𝑓). |
– |
Integer |
0 < RDFuncID |
RJFuncID |
FUNCTION block number corresponding to 𝑅J(𝑠,𝑓). |
– |
Integer |
0 < RJFuncID |
RMFuncID |
FUNCTION block number corresponding to 𝑅M(𝑠,𝑓). |
– |
Integer |
0 < RMFuncID |
L1FuncID |
FUNCTION block number corresponding to 𝐿1(𝑠,𝑓). |
– |
Integer |
0 < L1FuncID |
L2FuncID |
FUNCTION block number corresponding to 𝐿2(𝑠,𝑓). |
– |
Integer |
0 < L2FuncID |
vs |
Synchronous pump speed corresponding to \(f(0)\). |
m/s |
Float |
0 < vs |
Keyword |
Description |
Units |
Type |
Range |
Suggested Value |
---|---|---|---|---|---|
dPR |
Developed pressure over the pump at rated conditions. |
Pa |
Float |
0 < dPR |
2.0E5 |
dPS |
Developed pressure over the pump at stall conditions (i.e. zero flow) at rated voltage and frequency. |
Pa |
Float |
0 < dPS |
3.0E5 |
etaR |
Fractional pump efficiency at rated conditions. |
– |
Float |
0 < etaR ≤ 1 |
0.45 |
IR |
Phase current at rated conditions. |
A |
Float |
0 < IR |
1700 |
VR |
Phase voltage at rated conditions. |
V |
Float |
0 < VR |
510 |
fR |
Power supply frequency at rated conditions. |
1/s |
Float |
0 < fR |
12 |
WR |
Mass flow rate through the pump at rated conditions. |
kg/s |
Float |
0 < WR |
1333 |
sR |
Slip at rated conditions. |
– |
Float |
0 < sR < 1 |
0.2 |
iDPOPT |
If iDPOPT ≠ 0, rated and stall input parameters have been adjusted to account for pressure losses. If iDPOPT = 0 or omitted, rated and stall input parameters are based on net pressure rise. |
– |
Integer, optional |
– |
1 |
espIs |
Fractional convergence tolerance of the fixed-point iteration to determine stall current. If omitted, epsIS = 10E-8. |
– |
Float, optional |
0 < epsIs |
– |
Example input showing a detailed-circuit annular pump along with a simple-circuit non-annular pump:
INPMR4 3 1 0
#
# NELEMT
10 : 2 # only two elements
# ITYPEL
49 : 5 15 # first is a pump, second is annular pump
# NANEL
1243 : 1 # one element is annular
# IELANE
1244 : 2 # element 2 is the annular element
# NPUMP
405 : 2 # two pumps
# IELPMP
406 : 1 2 # elements 1 and 2 are pumps
# IEMPMP
418 : -3 -3 # pumps 1 and 2 are equivalent circuit pumps
# ILRPMP
430 : 1 2 # eq circ pumps correspond to EMPUMP blocks 1 and 2, respectively
#
# other integer inputs, including segments, CVs, temperature groups, etc...
#
-1
#
PMR4IN 18 1 0
#
# element float inputs, including ZOUTEL, XLENEL, AREAEL, etc...
#
# annular element float inputs, including WALMC2, WALLH2, etc...
#
-1
#
EMPUMP 1 SIMPLE
VFuncID = 1
fFuncID = 1
f0 = 12
fH = 0.5 # pump heat is modeled at half strength
TR = 0 # do not adjust R2 for temperature
dPR = 0.2E6
dPS = 0.3E6
etaR = 0.45
IR = 1700.
VR = 850.
fR = 12.
WR = 1333
sR = 0.2
epsIs = 1E-10
iDPOPT = 1
FUNCTION 1 "VoltageAndFrequencyFunction"
TYPE = TABLE
SOURCE = 1
END
# voltage and frequency hold constant
TABLE 1 VoltageTable
x y
0 1
1 1
END
END
EMPUMP 2 DETAILED
fFuncID = 1
VFuncID = 10
f0 = 12
fOD = 0.5
fH = 0 # pump heat is not modeled
TR = 573.15 # adjust RJ for temperature, using 573.15 K to determine proportionality constant
vs = 12.
R1FuncID = 2
RDFuncID = 3
RJFuncID = 4
RMFuncID = 5
L1FuncID = 6
L2FuncID = 7
# voltage is halved after 100 seconds
FUNCTION 10 "VoltageFunction"
TYPE = TABLE
TABLE 1 VoltageTable
x y
0 1
100 0.5
END
END
# frequency doubles after 100 seconds
FUNCTION 1 "FrequencyFunction"
TYPE = TABLE
TABLE 1 FrequencyTable
x y
0 1
100 2
END
END
# R1 holds constant
FUNCTION 2 "R1Function"
TYPE = TABLE
TABLE 1 SuperLocalTable
x y
0 0.08
1 0.08
END
END
# RD holds constant
FUNCTION 3 "RDFunction"
TYPE = TABLE
TABLE 1 RDTable
x y
0 10.
1 10.
END
END
# RD holds constant
FUNCTION 4 "RJFunction2"
TYPE = TABLE
TABLE 1 RJTable
x y
0 0.44
1 0.44
END
END
# RM holds constant
FUNCTION 5 "RMFunction"
TYPE = TABLE
TABLE 1 RMTable
x y
0 0.7
1 0.7
END
END
# L1 holds constant
FUNCTION 6 "L1Function"
TYPE = TABLE
TABLE 1 L1Table
x y
0 0.004
1 0.004
END
END
# L2 holds constant
FUNCTION 7 "L2Function"
TYPE = TABLE
TABLE 1 L2Table
x y
0 0.01
1 0.01
END
END
END
5.3.5. Valves¶
SAS4A/SASSYS‑1 contains a simple valve treatment in which the user can specify the valve pressure loss coefficient as a function of time. The pressure drop, \(\Delta p_{\text{v}}\), through a valve is calculated as
where
\(w\) = coolant flow rate through the valve
\(\rho\) = coolant density
\(A\) = nominal valve flow area
\(G_2\) = valve coefficient
The user supplies a table of \(G_2\) as a function of time. The table is used to obtain an average value of \(G_2\) for each step of the transient. With this treatment, a valve is never entirely shut; although \(G_2\) can be made very large so that the flow through the valve becomes very small.
Some care must be taken in setting the input for a valve. The table of \(G_2\) vs. \(t\) goes in the DTMPTB and TMPMTB input arrays, but in addition \(G_2 \left( t=0 \right)\) goes in the input variable G2PRDR (ELL) for the element IELL corresponding to the valve. During the steady-state initialization, G2PRDR may be adjusted by the code if necessary to achieve a steady-state pressure balance. At the end of the steady-state initialization, if G2PRDR does not match the table entry for \(t=0\), then a constant value is added to all of the entries in the DTMPTB table for the valve so that the table does match G2PRDR at \(t=0\). Up to eight valves can be used. Each valve can use its own separate valve coefficient table. It is also possible to use the same table for two or more valves but this option must be used with care. All valves using the same table should have the same steady-state valve coefficients and the same time dependence. Also, if a valve table is adjusted to achieve a steady-state pressure balance for one valve, the adjustment may not be appropriate for other valves using the same table.
5.3.6. Check Valves¶
SAS4A/SASSYS‑1 contains a simple check valve treatment in which the user can specify the valve orifice coefficient as a function of coolant flow rate. Every time step an orifice coefficient (\(G_2\) in Eq. (5.3-35)) is re-set using a user-supplied table of orifice coefficient vs. normalized flow rate, with a flow rate normalized to its steady-state value. Other than the variable orifice coefficient, a check valve is treated the same as a pipe, as described in Section 5.3.3.