This Technote explains how to configure automated Fire Flow and how to interpret and troubleshoot calculated fire flow results, in WaterCAD or WaterGEMS.
Table of Contents
Fire Flow Alternative
Note: before reading this Technote, it is recommended that the user complete the Fire flow Quick start lesson. This is located in the WaterCAD/WaterGEMS help, under Contents > Quick Start Lessons > Automated Fire Flow Analysis. You can also watch a video here.
Fire Flow analysis is a common tool used in WaterCAD and WaterGEMS to ensure enough protection is provided during fire emergencies. The user is able to enter constraints in order to determine how much fire flow is available at hydrants while adequate system pressure is maintained. Several tools available to aid in understanding fire flow results.
Starting with WaterGEMS V8i SELECTseries 6, the SCADAConnect Simulator tool has a new Fire response option. Fire Response enables you to place a fire demand (or other emergency flows) at a node for a period of time to determine its impact on pressure and flows and possibly test alternative ways of responding to the fire. Here is the technote on that.
Note: for a demonstration, see this Webinar recording
Fire flows are computed at each node by iteratively assigning demands and computing system pressures. In short, it looks at each node one at a time, and determines the amount of flow available without violating the desired constraints. When you compute a fire flow analysis, the program will:
Note: if you are looking for the amount of flow available at a specific pressure, see "Finding the flow available at a certain pressure" in the troubleshooting section below.
Configuration for an automated fire flow analysis is done under the Fire Flow alternative. This is found under Analysis > Alternatives > Fire flow. When computing a scenario, the fire flow alternative assigned to that scenario is used.
At a minimum, you should specify values for the needed Fire Flow, Fire Flow Upper Limit, Apply Fire Flow By, Residual Pressure Lower Limit, Zone Pressure Lower Limit and Fire flow nodes selection set. Below is an explanation of each of the main fields found in this alternative (when double clicking on it):
Note: If the above options need to be configured differently for each junction/hydrant, you can specify "local" fireflow constraints by clicking the "specify local fireflow constraints?" check box next to the junctions/hydrants in the list at the bottom of the fireflow alternative. If this box is not checked, that particular fireflow node will utilize the global constraints entered at the top of the fire flow alternative.
Note: it is important to understand that for the minimum zone pressure constraint, the program checks pressures for all other nodes in the model that are assigned to the same zone as the fireflow node in question. The zone is an attribute of the node. Say for example there are two nodes in the fireflow selection set: J-1 and J-2. J-1 is assigned to Zone A and J-2 is assigned to Zone B. Fireflow nodes are checked independently during the analysis, so when J-1 is being computed, the program will check pressures at all other nodes that are also assigned to Zone A and compare against the minimum zone pressure constraint. Then, when the analysis moves on to J-2, it will be checking pressure at all nodes assigned to Zone B. So, the program isn't running a fireflow analysis on a particular zone - it considers pressures at nodes assigned to certain zones, based on the fireflow node it is currently analyzing.
After you've configured your fire flow alternative, the next step is to assign that alternative to the scenario you would like to compute.
There are several ways you can view the results of your automated fire flow analysis. Below describes the most common.
Note: if you look at the general results in other flextables, such as "pressure" in the junction table, you will be viewing the baseline steady state results for your model, without any fire flow demands present. It is recommended that you only look at the fireflow table, so as not to be confused. The first thing you will notice is a column titled "Satisfies Fire Flow Constraints?" This will be checked only if the particular fire flow node (designated by the "label" for each row in this report) can provide at least the needed fire flow, while satisfying the fire flow constraints - the pressure constraints and sometimes the velocity constraints, if applicable. Here is a description of some of the other fields (columns) available in the fire flow report. Field colored in red are particularly important for typical troubleshooting.
Note: if you look at the general results in other flextables, such as "pressure" in the junction table, you will be viewing the baseline steady state results for your model, without any fire flow demands present. It is recommended that you only look at the fireflow table, so as not to be confused.
Note: if your table does not display one or more of the below fields, you can add it using the yellow "edit" button at the top of the flextable.
The Fire Flow Results Browser enables you to check results for others elements in your model, during individual fire flow runs. Normally, the only results available after a fire flow analysis are the residual pressures at each fireflow node and minimum zone/system pressures. If you'd like to see other results, such as pipe velocities, hydraulic grades, valve status, etc, during a specific fire flow test, you can use this tool. First, you'll need to make sure that you have set up your Fire Flow Alternative for this function before running the fire flow analysis:
After you have set up your Auxiliary Output Settings and run the Fire Flow analysis, go to Analysis > Fire Flow Results Browser.
Select a fire flow node from the list to see the results for its adjacent pipes, and for the elements included in the output selection set (defined in the fire flow alternative). With a fire flow node selected, you can then establish color coding, annotations or simply check auxiliary results using the elemenet properties or flextables. For example, if you wanted to see the status of Valve X when Hydrant Y was flowed, click Hydrant Y in the list and then open the properties of Valve X.
Another good way to review an automated fire flow analysis is to use color coding. For example, you can color code junctions and hydrant based on the values for total available fire flow, to see areas where the available fire flow is lacking. Another useful color coding could be one based on the "satisfies fire flow constraints?" attribute. For example, you could color code such that junctions with "false" for this attribute show up as red, with a larger size. This would be done by using the "color and size" option, in the color coding dialog.
You can also use color coding with the fire flow results browser. For example, you could color code pipe velocities so that when you click fire flow nodes from the fire flow results browser list, the colors will update to show the velocity distribution when that particular node was flowed.
In some cases, you may notice that the results in your fire flow report show "N/A" after computing the model.
In the fire flow report (flextable), you may notice that one or more fire flow nodes does not satisfy the fire flow constraints. Meaning, the total available fire flow is less than the needed fire flow or below what you expected. There are several reasons why this could occur.
To check which specific node had the lowest pressure in the zone, check the "Junction with minimum pressure (zone)" field. In many cases, this may be a node at the suction side of the pump or at some other location that you may not be concerned with. In this case, it is recommended that you assign a different zone to these nodes. For example, create a zone called "low" and use that. This way, it won't be in the same zone as any fire flow nodes and thus won't be considered (unless you're using the minimum system pressure constraint).
If your available fire flow is less than the upper limit, yet all the constraints described above are not violated, chances are that this was caused by the network becoming unbalanced (check the "balanced?" field). To check, try running a manual fire flow analysis on that junction. For the manual run, just make sure the calculation type in your calculation options is set to “Hydraulics only” and that you have entered the value for the total needed fire flow as an additional, fixed demand on that junction. Run the analysis and check your user notifications for an unbalanced error. One solution to this is to increase the max trials value in the calculation options, but you should also consider investigating other causes, such as data entry errors. See: Troubleshooting the Network Unbalanced or Cannot solve network hydraulic equations user notification
Note: be aware of the presence of local fire flow constraints. At the bottom of your fire flow alternative, you can set node-specific constraints, which override the global constraints set at the top. This could potentially cause confusion when viewing fire flow results. For example, the total available fire flow for a certain node may be less than what you believe the needed fire flow value is, but still showing as satisfying the fire flow constraints. If you had a local "needed fire flow" set to a lower value, this could be valid. So, make sure you include and check the "Fire flow (needed)", "Fire flow (upper limit)" "Pressure (residual lower limit)" and "Pressure (Zone lower limit)" fields in your fire flow report/flextable.
Consider the following Fire Flow Flextable, with no minimum system pressure or maximum velocity constraints used:
J-10 - This node passed the fire flow test, as indicated by the "Satisfies fire flow constraints?" check box. It reports a Total available fire flow of 2012.68gpm, which is above the total needed fire flow of 462.68. Although the needed fire flow is actually 450.00gpm, we have chosen to add fire flows to base demands, and there is a base demand of 12.68gpm on this node. The total available amount of 2012.68gpm accounts for this base demand as well. Meaning, the total demand on this particular node can be up to 2012.68gpm without violating any fire flow constraints. The reason is because at the upper limit (2012.68gpm), both the residual pressure and minimum zone pressure are 59.2psi, which is above the constraints. The fire flow analysis stopped at the upper limit value to prevent unrealistically high flows from being computed.
J-169 - This node passed the fire flow test with a reported total available fire flow of 557.82gpm. This is above the needed fire flow but below the upper limit. The reason why the fire flow test stopped at this flow is because a higher flow rate would violate the zone pressure constraint. As you can see, the calculated minimum zone pressure (lower limit) is equal to the user-entered minimum zone pressure constraint of 20psi and the "junction w/ minimum pressure (zone)" shows J-170. This means that although the residual pressure at J-169 (24.3psi) is above the constraints, J-170 is in the same zone as J-169 and had the lowest pressure, 20psi.
J-171 - This node passed the fire flow test with a reported total available fire flow of 489.28gpm. This is above the needed fire flow but below the upper limit. The reason why the fire flow test stopped at this flow is because a higher flow rate would violate the residual pressure constraint. Although the minimum zone pressure of 23.5psi is above the 20psi constraint, the residual pressure (calculated pressure at J-171) is equal to the residual pressure constraint of 15psi. At a higher flow rate than 489.28gpm, the residual pressure would drop below 15psi, which would violate the pressure constraint. So, the fire flow analysis reports the maximum flow available without violating the constraint.
J-159 - This node failed the fire flow test, as indicated by the unchecked "Satisfies fire flow constraints?". This is because the total available fire flow is 327.06gpm, which is less than the total needed flow of 453.17gpm. The reason why this node can only supply 327.06gpm is because of the residual pressure constraint. As you can see, even though the minimum zone pressure (60.4psi) is well above the zone pressure constraint, the calculated residual pressure is equal to the residual pressure constraint. This means that the pressure constaint would be violated at a flow any higher than 327.06gpm.
J-154 - This node failed the fire flow test, because the available fire flow of 289.24gpm is less than the needed fireflow of 455.39. The reason it can only supply this much flow is because of the minimum zone pressure constraint. As you can see, although the residual pressure (28.5psi) is above the constraint, the minimum zone pressure is equal to the constraint, with J-158 as the "junction w/ minimum pressure (zone)". This means that J-158, which is in the same zone as J-154, is preventing any additional flow from being extracted, without violating the minimum zone pressure constraint.
J-1 - This node failed the fire flow test with a total available flow of zero. This means that even without any demand at all on J-1, the baseline pressures in the model fall below the constraints. This is indicated by the calculated residual pressure of -1.4psi. This means that with zero demand on this node, the pressure at J-1 is -1.4psi. Since this is well below the constraint of 20psi, the fireflow test fails and the available fire flow is reported as zero. This particular junction is located on the suction side of a pump station, so it probably should be excluded from the fire flow nodes selection set. Meaning, it is probably unnecessary to compute fire flow for this node.
J-2 - This node also failed the fire flow test with a total available flow of zero. In this case, it is because the minimum zone pressure constraint was violated. This means that without any demand at all on this node, the pressure at J-1 is -1.4psi. J-1 is in the same zone as J-2 and as seen above, it is at the suction side of the pump. So, assigning a new zone to J-1 should resolve this problem, since it would no longer be considered during the check of zone pressure.
J-3 - This node, along with other junctions below it, show "N/A" for all calculated fields. This is because these nodes are not included in the fire flow nodes selection set, set in the fire flow alternative.
If you attempt to use the fire flow results browser tool, you may run into problems if it is not configured correctly. Symtoms could be:
This is caused by improper configuration in the fire flow alternative. Open the fire flow alternative and check the "Auxiliary output Settings" section. If you'd like to be able to check auxiliary results for any fire flow node, regardless of whether it passed or failed the "needed fire flow", select "All nodes" for the "Fire flow auxiliary results type". Doing this will ensure that all nodes show up in the list. At this point, at a minimum, you will be able to see auxiliary results for pipes adjacent to the fire flow node that you select in the results brower. If you'd like to see results for more elements, you'll need to choose a selection set for the "Auxiliary output selection set". If you want to be able to see auxiliary results for all nodes, you can create a selection set of all nodes. To do this, close the fire flow alternative, go to Edit > Select All. Right click anywhere in the drawing pane, choose "create selection set" and give it a name, such as "ALL ELEMENTS". Then, select this in your fire flow alternative for the output selection set. Now, when you compute the fire flow simulation, you'll be able to check results for all elements in the model, for your fire flow nodes.Note: the more fire flow nodes available in the list and the more elements included in the output selection set, the longer the calculation will take to perform and the more disk space it's saved results will take up.
Note: the more fire flow nodes available in the list and the more elements included in the output selection set, the longer the calculation will take to perform and the more disk space it's saved results will take up.
In some cases, you may want to know the fire flow available at a node at a specific pressure (such as 20 psi), regardless of the other constraints. However, by default, the fire flow flextable will show you the total available flow without violating the constraints or upper limit.
If you want to ensure that the available fireflow always shows the flow available at 20 psi, set the residual pressure constraint to 20 psi, the zone pressure constraint to a very low value such as -999, uncheck the system pressure and velocity constraints, and set the fire flow upper limit to a very high flow. This will ensure that the program continues to try more and more flow until the pressure at the fire flow node drops to 20 psi, and the available fire flow result will always show the flow at 20 psi. (unless the pressure is below 20 psi even with zero fireflow added)
You can also use the hydrant flow curve option from the right click menu (on a hydrant or junction) to see the curve of flow vs. pressure at the node (so you could look at the flow at 20 psi).
Introduction to Automated Fire Flow in WaterCAD and WaterGEMS (YouTube)
WaterGEMS V8 Automated Fire Flow FAQ
Understanding the "Fire Flow (Needed)" and "Fire Flow (Upper Limit)" Fields for a Fire Flow Analysis
General WaterGEMS V8 FAQ
WaterGEMS V8 Modeling FAQ
Hydraulics and Hydrology Forum
SCADAConnect Simulator for WaterGEMS SS6
Simulating a Fire Response in SCADAConnect Simulator