Applies To | |||
Product(s): | Bentley WaterCAD, Bentley WaterGEMS | ||
Version(s): | V8 XM, V8i | ||
Environment: | N/A | ||
Area: | Output and Reporting | ||
Subarea: | N/A | ||
Original Author: | Jesse Dringoli, Bentley Technical Support Group | ||
Overview
This Technote explains how to interpret and troubleshoot calculated results for an automated fire flow analysis in WaterCAD or WaterGEMS V8 XM or V8i. 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.
Background
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.
How Does Automated Fire Flow Work?
Fire flows are computed at each node by iteratively assigning demands and computing system pressures. When you execute a fire flow analysis, WaterCAD\GEMS will:
- Calculate a steady-state simulation for all nodes designated as fire-flow nodes. At each node, it begins by running a Steady-State simulation using only non-fire demands, to ensure that the fire flow constraints (e.g., minimum residual pressure, minimum zone pressure) that have been set can be met without withdrawing any Fire Flow from any of the nodes.
- Evaluate the Fire Flow Upper Limit and Available Fire Flow at each of the fire-flow nodes.Assuming the fire flow constraints were met in the initial run, the program performs a series of steady-state runs in which flow is applied to each specified fire-flow node and results are evaluated against fire-flow constraints. Note that the fire flow for each individual node is evaluated using a separate analysis (i.e., needed fire flow is not applied simultaneously to all fire-flow nodes).
- The program performs a series of steady-state analyses in which the Fire Flow Upper Limit discharge is applied to each node in turn. If the fire flow constraints are met for the Fire Flow Upper Limit discharge, the node satisfies the fire flow constraints and no further analysis is required for that node.
- The program then performs a series of steady-state analyses in which it iteratively assigns lesser demands to nodes that do not meet Fire Flow Upper Limit constraint to determine the Avalable Fire Flow. The Available Fire Flow is the maximum fire flow that each node can supply without violating fire flow constraints.
- If the Available Fire Flow is greater than or equal to Needed Fire Flow, the node satisfies the fire flow contraints. If Available Fire Flow is less than Needed, it does not.
- Run a final Steady-State calculation that does not apply Fire Flow demands to any of the junctions. This provides a baseline of calculated results that can then be compared to the Fire Flow conditions, which can be determined by viewing the results presented on the Fire Flow tab of the individual junction editors, or in the Fire Flow Tabular Report.
Interpreting the Fire Flow Alternative
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.
Configuring your model to run a fire flow analysis
After you've configured your fire flow alternative, the next step is to assign that alternative to the scenario you would like to compute.
- First, go to Analysis > Calculation Options. If you have an existing calculation option set that you're using in other scenarios, click on it and click the "duplicate" button. If you'd like, you could also click the "new" button to create a new calculation option set. Provide a meaningful name for your new calculation option set and double click it to open the properties. In the properties, set the Calculation Type to Fire Flow.
- Next, go to Analysis > Scenarios. Create a new scenario by choosing New > base scenario, or right click an existing scenario and choose "child". Provide a name for the new scenario, such as "Automated Fire Flow Analysis".
- Double-click your fire flow scenario to open the properties. Select your fire flow alternative from the dropdown next to "Fire Flow" and select your fire flow calculation option from the dropdown next to "Steady state/EPS solver Calculation options".
- Make your fireflow scenario current by right clicking it's name in the scenario manager and choosing "make current" or by selecting it from the Scenario dropdown menu bar at the top of your WaterCAD/WaterGEMS window.
- At this point, the automated fireflow analysis can be computed by going to Analysis > Compute. To understand the process that WaterCAD/GEMS uses, please see the section further above, entitled "How does the automated fire flow routine work?".
Interpretting Automated Fire Flow Results
There are several ways you can view the results of your automated fire flow analysis. Below describes the most common.
Using the Fire Flow Report
- Make sure that your Fire Flow Analysis scenario is the current scenario and that you've succesfully computed it.
- Click Report > Element Tables > Fire Flow Report. The Fire Flow report is essentially a custom flextable including only the relevant fire flow results for both junctions and hydrants. The fields seen here can be added to the junction and hydrant flextables, but it is generally more convenient to use and keep this separate fireflow flextable when reviewing results of an automated fire flow analysis.
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:
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.
Using the Fire Flow Results Browser
The Fire Flow Results Browser will allow 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.
Color Coding Fire Flow Results
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.
Troubleshooting
Fire flow results not available
In some cases, you may notice that the results in your fire flow report show "N/A" after computing the model.
- Make sure your scenario is set up correctly. Ensure that the correct fire flow alternative is assigned to the scenario that you are computing and ensure that its calculation options have the calculation type set to "fire flow". If this is set to "hydraulics only", fire flow results will not be computed.
- Make sure the scenario computed succesfully. If any messages show up under your user notification (Analysis > User notifications) with a red circle next to them, it means that the calculation failed. You'll need to address these fatal errors first, before results will be available.
- "N/A" entries can also be caused by omission from the fireflow selection set. In your fire flow alternative, make sure that all the nodes you'd like to study are included in the selection set selected for "Fire flow nodes". The fireflow routine will only analyze and provide results for nodes in this selection set. If desired, a filter can be used in the fire flow report so that nodes not included in the fire flow nodes selection set are not displayed.
- Make sure that you are not trying to use the fire flow results browser, if you haven't set up your fire flow alternative to save auxiliary results. Doing so can cause results in the fire flow flextable to show "N/A". This can be fixed by clicking the "reset to standard steady state results" button at the top of the fire flow results browser.
Understanding why a node cannot provide the desired fire flow
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.
- First, check the calculated residual pressure field. This is the pressure at the fire flow node, at the total available fire flow. So, if this is equal to the residual pressure constraint, it means that the residual pressure constraint would be violated if any more flow was passed, so the fire flow routine stopped. If the calculated residual pressure is less than the residual pressure constraint, it probably means that the residual pressure was below the constraint even with the base demands (with no additional fire flow added). In this case, you should check the pressures in the model with baseline demands - they should all be above the constraints entered in the fire flow alternative.
- Next, check the calculated minimum zone pressure field. This is the lowest pressure out of all nodes in the same zone as the fire flow node in question, at the total available fire flow. So, if this is equal than the minimum zone pressure constraint that you entered, it means that the fire flow constrainted would be violated if any more flow was passed. So, the fire flow calculation stopped and reported the total available fire flow such that this would not be violated. If the calculated minimum zone pressure shows as less than the constraint, it probably means that the pressure somewhere else in that zone was less than the constraint, even with only the base demands (with no additional fire flow added). You should check the pressures in the model with baseline demands - they should all be above the constraints entered in the fire flow alternative.
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 you elected to use the minimum system pressure constraint in your fire flow alternative, you'll also need to check the calculated minimum system pressure. This is identical to the zone pressure constraint (see above), except it checks pressure at ALL nodes in the model. You can also check the "Junction with minimum pressure (system)" field to see which node caused the fire flow routine to stop.
- If you elected to use the Velocity constraint in your fire flow alternative, you'll also need to check the "Velocity of maximum pipe" and "Pipe w/ Maximum Velocity" fields. If the velocity in any pipe inside the chosen "pipe set" selection set exceeds the constraint you entered, the fire flow routine will stop. So, similar to the pressure constraints, you may notice the "Velocity of maximum pipe" is equal to or less than the constraint, indicating the reason why no additional fire flow could be extracted.
- Lastly, in rare cases, the fire flow routine may stop at a certain Total Available fire flow due to an unbalanced model. Meaning, at certain flow rates, the steady state simulation may not be able to converge on a balanced hydraulic solution within the maximum number of trials. This can occur in large, complex models, with low or near-zero flows, and/or when other data input in the model is not correct. It causes the results to be invalid and the fire flow run to stop.
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. 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.
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.
Fire flow results browser not working
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:
- Nothing showed up in the list.
- Some results show "N/A" in the properties/flextables after clicking a fire flow node from the list.
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.
Frequently Asked Questions
WaterGEMS V8 Automated Fire Flow FAQ
See Also
Haestad Methods Product Tech Notes And FAQs
WaterGEMS V8 Automated Fire Flow FAQ
[[General WaterGEMS V8 FAQ|General WaterGEMS V8 FAQ]]
External Links
Bentley Technical Support KnowledgeBase