- A_refReference area [m^2]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Reference area [m^2]
- density_ratedRated pump fluid density [kg/m^3]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Rated pump fluid density [kg/m^3]
- headFunction to compute data for pump head [-]
C++ Type:FunctionName
Unit:(no unit assumed)
Controllable:No
Description:Function to compute data for pump head [-]
- head_ratedRated pump head [m]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Rated pump head [m]
- inertia_coeffPump inertia coefficients [kg-m^2]
C++ Type:std::vector<double>
Unit:(no unit assumed)
Controllable:No
Description:Pump inertia coefficients [kg-m^2]
- inertia_constPump inertia constant [kg-m^2]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Pump inertia constant [kg-m^2]
- inletPump inlet
C++ Type:BoundaryName
Unit:(no unit assumed)
Controllable:No
Description:Pump inlet
- omega_ratedRated pump speed [rad/s]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Rated pump speed [rad/s]
- outletPump outlet
C++ Type:BoundaryName
Unit:(no unit assumed)
Controllable:No
Description:Pump outlet
- positionSpatial position of the center of the junction [m]
C++ Type:libMesh::Point
Unit:(no unit assumed)
Controllable:No
Description:Spatial position of the center of the junction [m]
- speed_cr_IPump speed threshold for inertia [-]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Pump speed threshold for inertia [-]
- speed_cr_frPump speed threshold for friction [-]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Pump speed threshold for friction [-]
- tau_fr_coeffPump friction coefficients [N-m]
C++ Type:std::vector<double>
Unit:(no unit assumed)
Controllable:No
Description:Pump friction coefficients [N-m]
- tau_fr_constPump friction constant [N-m]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Pump friction constant [N-m]
- torque_hydraulicFunction to compute data for pump torque [-]
C++ Type:FunctionName
Unit:(no unit assumed)
Controllable:No
Description:Function to compute data for pump torque [-]
- torque_ratedRated pump torque [N-m]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Rated pump torque [N-m]
- volumeVolume of the junction [m^3]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Volume of the junction [m^3]
- volumetric_ratedRated pump volumetric flow rate [m^3/s]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Rated pump volumetric flow rate [m^3/s]
ShaftConnectedPump1Phase
The 1-phase shaft-connected pump component is modeled as a volume junction with source terms added to the momentum and energy equations due to the pump's head and torque.
The pump model relies on input parameters, flow conditions, and rotational speed to calculate the pump head, hydraulic torque, friction torque, and moment of inertia. Pump head and hydraulic torque are used in source terms to affect flow conditions coming out of the pump. Net torque (sum of hydraulic and friction torques) and moment of inertia are sent to the connected Shaft
component and affect the rotational speed.
Usage
A ShaftConnectedPump1Phase
component must be connected to a Shaft component, which controls the pump rotational speed. The user must specify which flow channel boundaries are connected to the pump with the "inlet" and "outlet" parameters.
"A_ref" should generally be assigned a value in between the "A" values of the connected inlet
or outlet
. A_ref
can act as a means to scale the pump head. A_ref
can also be used in combination with "K" to apply a pressure drop due to form loss. The pump volume, "volume", should be a reasonable estimate of the inlet to outlet fluid volume of the modeled pump.
The user assigns values for several pump rated conditions: "omega_rated", "volumetric_rated", "head_rated", and "torque_rated". These rated conditions, along with the user-supplied functions "head" and "torque_hydraulic", define the pump performance model. The inputs head
and torque
should be functions with independent and dependent variables as defined in Polar homologous pump data. Pump manufacturers often supply performance data in eight XY sets according to conventional homologous pump variables, as defined in Table 2. The relationship between the conventional homologous variables (, , and ) and the polar homologous variables (, , and ) is shown in Eq. (1) and Eq. (2). Variables used in these equations are defined in Head and hydraulic torque.
The friction torque determines the pump efficiency. The user inputs values for "tau_fr_coeff", "tau_fr_const", and "speed_cr_fr" that are used to compute friction torque as defined in Friction torque.
The pump moment of inertia affects how the pump accelerates. The user inputs values for "inertia_coeff", "inertia_const", and "speed_cr_I" that are used to compute the pump moment of inertia as defined in Moment of inertia.
Input Parameters
- K0Form loss factor [-]
Default:0
C++ Type:double
Unit:(no unit assumed)
Controllable:Yes
Description:Form loss factor [-]
- apply_velocity_scalingFalseSet to true to apply the scaling to the normal velocity. See documentation for more information.
Default:False
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:Set to true to apply the scaling to the normal velocity. See documentation for more information.
- initial_TInitial temperature [K]
C++ Type:FunctionName
Unit:(no unit assumed)
Controllable:No
Description:Initial temperature [K]
- initial_pInitial pressure [Pa]
C++ Type:FunctionName
Unit:(no unit assumed)
Controllable:No
Description:Initial pressure [Pa]
- initial_vel_xInitial velocity in x-direction [m/s]
C++ Type:FunctionName
Unit:(no unit assumed)
Controllable:No
Description:Initial velocity in x-direction [m/s]
- initial_vel_yInitial velocity in y-direction [m/s]
C++ Type:FunctionName
Unit:(no unit assumed)
Controllable:No
Description:Initial velocity in y-direction [m/s]
- initial_vel_zInitial velocity in z-direction [m/s]
C++ Type:FunctionName
Unit:(no unit assumed)
Controllable:No
Description:Initial velocity in z-direction [m/s]
- scaling_factor_rhoEV1Scaling factor for rho*E*V [-]
Default:1
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Scaling factor for rho*E*V [-]
- scaling_factor_rhoV1Scaling factor for rho*V [-]
Default:1
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Scaling factor for rho*V [-]
- scaling_factor_rhouV1Scaling factor for rho*u*V [-]
Default:1
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Scaling factor for rho*u*V [-]
- scaling_factor_rhovV1Scaling factor for rho*v*V [-]
Default:1
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Scaling factor for rho*v*V [-]
- scaling_factor_rhowV1Scaling factor for rho*w*V [-]
Default:1
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Scaling factor for rho*w*V [-]
- transition_width0.001Transition width for sign of the frictional torque at 0 speed over rated speed ratio.
Default:0.001
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Transition width for sign of the frictional torque at 0 speed over rated speed ratio.
- use_scalar_variablesTrueTrue if the junction variables are scalar variables
Default:True
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:True if the junction variables are scalar variables
Optional Parameters
- control_tagsAdds user-defined labels for accessing object parameters via control logic.
C++ Type:std::vector<std::string>
Unit:(no unit assumed)
Controllable:No
Description:Adds user-defined labels for accessing object parameters via control logic.
- enableTrueSet the enabled status of the MooseObject.
Default:True
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:Set the enabled status of the MooseObject.
Advanced Parameters
Formulation
The conservation of mass, momentum, and energy equations for the pump volume are similar to the equations used by VolumeJunction1Phase but add the pump momentum and energy source terms,
(3)and
(4)where
is the density of the fluid at the pump inlet,
is the magnitude of the gravity vector,
is the pump head,
is the cross-sectional area of the pump,
is the orientation of the flow channel connected to the pump outlet,
is the hydraulic torque, and
is the shaft speed.
Head and hydraulic torque
and , are defined by means of an empirical homologous pump performance model Narabayashi et al. (1986). Pump performance data must be generated experimentally. The basic parameters that characterize the pump performance are the rotational speed, , the volumetric flow rate, , the head rise, , and the hydraulic torque, . Non-dimensional homologous curves which relate experimental data for these basic pump parameters are used to condense the input. The following rated parameters are used to normalize the pump operation:
Quantity | Input file parameter |
---|---|
"omega_rated" | |
"volumetric_rated" | |
"head_rated" | |
"torque_rated" | |
"density_rated" |
Parameters for the homologous pump curves are defined as:
speed ratio, ,
flow ratio, ,
head ratio, , and
torque ratio, .
The pump performance is first divided into four quadrants, as seen in Table 1.
Table 1: Pump operating modes.
Non-dimensional Speed/Capacity | Mode Identifier |
---|---|
and | Normal (N) |
and | Dissipation (D) |
and | Turbine (T) |
and | Reversal (R) |
Then the four quadrants are further divided into the following two ranges:
A range, , and
V range, .
Conventional homologous pump data
Pump performance is typically characterized using conventional homologous pump data pairs. The independent () and dependent (, ) variables for conventional homologous pump curves are defined in Table 2. This table spans four pump operating modes and two ranges, for a total of eight separate data pairs each for head (, ) and hydraulic torque (, ).
Table 2: Conventional homologous pump curve independent and dependent variables.
Independent Variable | Head Dependent Variable | Torque Dependent Variable | |
---|---|---|---|
A range: | |||
V range: |
Polar homologous pump data
A polar homologous representation has been used such that the independent variable is always positive and bounded on . The variable transformation allows all octants to be ordered in monotonically-increasing fashion with respect to a single independent variable. The independent () and dependent (, ) variables for polar homologous pump curves are defined in Table 3.
Table 3: Polar homologous pump curve independent and dependent variables.
Independent Variable | Head Dependent Variable | Torque Dependent Variable | |
---|---|---|---|
A and V ranges: |
The constant assumes different values depending upon the mode of pump operation. The homologous octants, under this definition of , are arranged in a predictable way on as summarized in Table 4.
Table 4: Octant arrangement under the polar homologous representation.
Octant Identifier | Value | Portion of Domain on |
---|---|---|
VN | ||
AN | ||
AD | ||
VD | ||
VT | ||
AT | ||
AR | ||
VR |
The input parameters "head" and "torque_hydraulic" are functions which relate the polar dependent variables (, ) to the independent variables (). Actual head and torque values are computed using the two equations below.
Friction torque
Friction torque always resists the direction of motion, so the sign of the pump friction torque depends on the sign of the connected shaft speed. Positive shaft speed results in negative friction torque while negative shaft speed results in positive friction torque.
The friction torque magnitude, , is a function of shaft speed, , and four input parameters. If the ratio of shaft speed to "omega_rated", , is less than "speed_cr_fr", friction torque magnitude equals "tau_fr_const",
otherwise, is a function of shaft speed and friction torque coefficients, "tau_fr_coeff",
Moment of inertia
The pump moment of inertia, , is a function of shaft speed, , and four input parameters. If the ratio of shaft speed to "omega_rated", , is less than "speed_cr_I", pump inertia equals "inertia_const",
otherwise, is a function of shaft speed and inertia coefficients, "inertia_coeff",
References
- Tadashi Narabayashi, Kenji Arai, Takashi Kubokoya, Osamu Amano, and Toshie Gomyo.
Centrifugal pump behavior in steady and transient two-phase flow.
Journal of Nuclear Science and Technology, 23(2):136–150, 1986.
doi:10.1080/18811248.1986.9734961.[BibTeX]