This TechNote describes the process to model a pump start-up transient event in HAMMER CONNECT Edition and HAMMER V8i. It also provides an example model file for demonstration. This model can also be found in the Samples folder in the HAMMER installation folder: C:\Program Files (x86)\Bentley\HAMMER\Samples.
Note: If you are using HAMMER V8 XM, the workflow to model a pump start-up event is different. See the section below "Pump Start-up Transient Event in HAMMER V8 XM."
Before performing these steps, ensure that the demands, physical properties, and other settings in the model describe the condition that you would like to represent. If you would like to see the transient effects of the pump turning on during high demands and low tank levels, ensure that the demands and tank settings are adjusted as such. Ensure that the efficiency and transient rotational speed in your pump definition represent the "nominal" conditions. The speed should be set to the speed at which the pump produces the flow and head seen when the pump is on, usually full speed). The efficiency should be the efficiency at that nominal flow and head.
This process assumes a steady-state analysis for the initial conditions and that you have storage downstream of the pump in question, or other pumps, either of which could supply the demands you have entered when the pump in question is off. If there is no other source of flow and your pump is off, you may receive a "Disconnected demand nodes" user notification, which could keep you from getting accurate transient results. In this case, consider modeling a pump shutdown followed by startup, so that the initial conditions can have its demands supplied, to avoid the disconnected demand situation. Or if you only have a small number of demands, consider modeling them with the Discharge-To-Atmosphere element. This enables you to define a pressure dependent demand which will have zero flow if the initial pressure is zero (from the pump being off) but positive outflow when the pressure rises during the transient event when the pump starts up.
1. First, turn the pump on by setting the "Status (Initial)" to On under the Initial Settings section of the properties.
2. Go to Analysis > Compute Initial conditions. This computes pressure engine to allow you to see the pump flow and head when the pump is on.
3. Double-click the pump to view the properties. Under the "Results" section, you will see the pump operating point. Note the values for "Flow (Total)" and "Pump Head," as you will need them in the next step.
If you have any active valves in the model (TCV, GPV, PRV, PSV, FCV, PBV) in places where the flow is zero or near zero in the initial conditions, you will need to find the correct discharge coefficient during this step. To do so, either check for the computed discharge coefficient in the results section of the properties, or temporarily select "True" for "Specify Initial Conditions?" in the Transient Calculation Options, click the valve, then go to Tools > Copy Initial Conditions, choose "Selection," then OK. You will now see the discharge coefficient in the "Transient (Initial)" section of the properties. Record this value and set the "Specify Initial Conditions?" calculation option back to "False". For any valves that you need to do this, morph them into a TCV, choosing "Discharge Coefficient" as the valve type, "Active" as the initial status, then enter the discharge coefficient that you recorded. If you do not do this, HAMMER may use a discharge coefficient that will be inaccurate for higher flow rates once the pump turns back on, since it will be based on zero or near-zero flows.
4. Under the "Transient (Operational)" section of the pump properties, select the Pump Type (Transient) to "Pump Start - Variable Speed/Torque" and enter the appropriate diameter. If the pump has a built-in check valve, set the "Time (For Valve to Operate)" to zero. Alternatively, you can enter the time that it takes for the built-in valve to open (5 sec, 10 sec, 30 sec, etc.). To simulate a pump with no check valve enter a very small number like 0.1 seconds, so the valve opens immediately. Most likely you will enter zero for this. This is an important consideration. See the following link for more information: Operating rule not being following after computing pump shutdown or start-up.
5. Enter the pump flow and pump head found in step 3, in the "Flow (nominal)" and "Head (Nominal)" fields.
6. Change the pump's Status (Initial) under the initial settings to "Off" and re-compute initial conditions.
7. Next, go to Components > Patterns to open the Pattern manager. Right click on "Operational (Transient, pump)" select "New" and enter a name. On the right side of this window, enter zero for the starting multiplier, since the starting speed multiplier should be zero (meaning the pump is off). In the bottom-right table, define the pattern by entering time values and the corresponding speed multiplier.
IMPORTANT NOTE: The multipliers you enter here multiply against either the speed or the electrical torque, depending on the selection you make for the pump's "Control Variable." If you choose Speed (the default), the multipliers will multiply against the full speed entered in the pump definition, so 1.0 means full speed. This means that you cannot simply "flip the switch" in the pattern and have it go instantly from zero to 1.0 (or within a very small time frame) as it would normally take some time for the pump to ramp up to full speed. In the example below, the speed jumps from zero to 1.00 (full speed) between 5 and 10 seconds, and then stays on for the duration of the simulation. If the pump takes short or longer to ramp up, then the pattern can be adjusted accordingly
8. Close the pattern manager and select the pattern that you just created from the "Operating Rule" drop down in the pump properties. At this point, the pump properties should look similar to this:
9. The model is now correctly set up and you can compute the transient simulation (Home > Computer or Analysis > Compute).
Note: if the flow through the pump is not zero in the initial conditions, you will get an error "steady state flow must be zero". See further below for more on this.Note: If your pump is a variable speed pump ("Is variable speed pump?" = True), you may encounter a notification stating that the rotational speed must be greater than zero. If you encounter this problem, you will need to not the calculated relative speed factor when you computer the initial conditions. After computing, set this calculated relative speed factor as the "Relative Speed Factor (Initial)" and set the initial pump status back to On and "Is variable speed pump?" to False. Compute the initial conditions again and note the pump flow and head to be used as the Flow (Initial) and Pump (Head) initial. Then set the pump status to Off again and recompute initial conditions, and compute the transient simulation.
Note: If your pump is a variable speed pump ("Is variable speed pump?" = True), you may encounter a notification stating that the rotational speed must be greater than zero. If you encounter this problem, you will need to not the calculated relative speed factor when you computer the initial conditions. After computing, set this calculated relative speed factor as the "Relative Speed Factor (Initial)" and set the initial pump status back to On and "Is variable speed pump?" to False. Compute the initial conditions again and note the pump flow and head to be used as the Flow (Initial) and Pump (Head) initial. Then set the pump status to Off again and recompute initial conditions, and compute the transient simulation.
The results of this model can be viewed just like any other transient simulation. Go to Home > Transient Results Viewer or Analysis > Transient Results Viewer. To view a graph of head and flow for the pump, go to the Time History tab for the pipe end adjacent to the pump:
You can also view a profile through the pump to some downstream point to see how the system reacts to the pump starting up from the Profile tab. Using profile animations is recommended; you can set "Generate animation data" in the Transient Calculation Options to True to see this. When you click the Animate button at the top of the profile, this will show you the impact of the pump starting up along the profile over time. This can be especially useful in cases where a transient event may occur because of the pump starting up.
Note that you can also view extended data specific to the pump by entering a number for the "Report Period" attribute of the pump properties. For example, entering a value of 10 would mean that extended data will be reported every 10 time steps. To view this, open the Transient Results Viewer and go to the Extended Node Data tab. Certain element types have available extended data, including pumps. Select the pump and the available attribute (in this case Speed), and you can see how the pump speed will change with time.
You can also view results in a report by going to Report > Transient Analysis Reports > Transient Analysis Detailed Report. At the very bottom of this text report, you will see the table of flow, speed, upstream and downstream head:
To model a pump start-up followed by a shut down, follow the same steps above, but configure your transient operating rule to drop the multiplier back down to zero at the time when the pump shuts down (after some delay). Details on the steps can be found here:
Modeling a pump startup and shutdown transient event in the same simulation
In some cases, once the pumps turn on in the transient simulation, the results may not settle exactly on the nominal head/flow that you saw when you ran a steady state with the pumps on. This can be due to a number of reasons, including these common ones:
If all else fails, you could consider starting your transient simulation with the pumps on, then use the variable speed transient pump type to have them turn off then turn back on again. You can use the "Report History After" transient calculation option to have the transient reports begin after the pumps have settled in their off position.
This may be due to the "Time (For Valve to Operate)". See this link for details:
Operating Rule not being followed after computing pump shutdown or start up
If the pump is initially off, but turning on when you compute the initial conditions calculations, you likely have a control applied to the pump. The symptom may present itself as an error when trying to compute the transient simulation, "steady state flow must be zero".
By default, the initial conditions calculation will take into account simple controls in the Controls manager. To help with this, you can set the Steady State/EPS calculation option setting "Use simple controls during steady state run?" to False. The controls will then be ignored if you are computing a steady state run.
Also for an EPS initial conditions where the pump is off at a certain time, check the "initialize transient run at time" transient calculation option and ensure that it is set to a time when the pump is off.
If you have a closed system with no downstream source and have the pump initial off, you may end up with an error message about disconnected demand nodes. If there should be a downstream source, you will want to review the setup to ascertain why there is no flow for the other source. If there is no downstream source, you can consider using the workflow of modeling a pump shut down and start up in the same scenario.
It typically takes some time for the pump to overcome the discharge hydraulic grade before is can pass flow. See this link for details:
Flow from pump is delayed after pump startup
If the pump appears to start up too quickly and the initial positive pressure spike appears to be higher than expected, it could be related to the Control Variable and the Operating Rule. See this link for details:
Pump Startup occurs too quickly / initial upsurge too severe
If there are high points in the system, the initial conditions may not reflect the true system conditions with the pump off. See this link for details:
"Initial pressure less than vapor pressure. At the pipe end(s), the elevation(s) or head(s) are incorrect"
The below model is an example of a pump startup in HAMMER. This model is included with most installations of HAMMER. Note:
Click to Download
If you are using HAMMER V8 XM, the workflow is different. As this version is no longer supported, we recommend upgrading your HAMMER version so that you can use the above workflow.
Modeling a pump shut down event in Bentley HAMMER