This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Simple gravity-fed water distribution system

Hello –

I am trying to model an existing gravity-fed water distribution system for a small rural community using WaterGEMS V8i. The existing system is as follows: There is a ~13,000 L storage tank atop a hill with a single outlet; this outlet is connected to a pipe which runs downhill and branches to serve four tap stands. The tank will be filled by a nearby well, to be constructed—we would like to determine whether the existing piping architecture is sufficient or will need to be replaced.

When the tank was fed by a previous well (soon to be decommissioned due to damage), the community would need to refill the tank roughly every three days; I would therefore like to model the scenario where the tank is emptying through its outlet to the community (without continuously being refilled), either in the case where all the spigots are open, all are closed, or some are open and some are closed. Specifically, I would like to know whether the pressure in the system with be acceptable (in both the high and low pressure cases), and whether the diameters of the existing pipes will allow adequate flow rate to be delivered to the tap stands by gravity.

I have taken an initial stab at modeling the system (attached), however I am unable to produce a system which both shows any plausible dynamic behavior and which does not produce "Network unbalanced" errors. Two specific points of confusion:

  • Modeling of the tap stands – This seems like a very basic question, but how should I model the tap stands? I have been modeling them as junctions attached to Discharge to Atmosphere elements. I am not sure whether or not I should assign demand to the junctions—ideally I would like to answer the question "what would happen if went to the community, filled up the tank, and opened all the spigots?", e.g. not specify a demand and have the "demand" calculated based on the pressure gradient created by the Discharge to Atmosphere elements. However, creating junctions with no demand produces a system which doesn't do anything (no flow is demanded, etc.). I also tried to model the system using Pressure-dependent demand (which sounds, by its title, like the right approach), but was unsure how to produce a pressure-dependent demand curve (e.g. I have no idea at what to use as a reference pressure—at what pressure the demand is completely satisfied). So I ended up just picking what seemed like a reasonable demand (0.2 L/s) for each of the junctions and running the simulation. However, this produces numerous "Network unbalanced" errors and eventually warns me about disconnected demand nodes. 
  • Modeling the tank – Likewise, I am not sure if I'm modeling the tank properly. Currently in my model the tank has only one inlet/outlet pipe. In reality, the tank is a top-feed/bottom gravity discharge tank. The instructions for modeling this type of tank (docs.bentley.com/.../Bentley_WaterGEMS_Help-11-89.html) suggest combining a pump with a PSV and a reservoir; there are two problems with this: 1. I am trying to model a case where there is no flow into the tank—where the tank is only emptying, and 2. I'm not sure what type of pump definition to use when modeling the tank in this way.
My questions are therefore:
  1. Can this type of scenario even be modeled in WaterGEMS, or should I be using a different package?
  2. How should I model the tap stands? Should I be using attached Discharge to Atmosphere elements? Should I be assigning explicit demands, or is there a way to allow this to be calculated from the pressure gradient? 
  3. How do I model the tank? For this scenario, do I need to worry about the fact that it's top feed/bottom gravity-discharge?
Thank you for your help.
Pinalito-v2-03_24_13.zip
  • Hi,

    WaterGEMS is a good choice for this calculation. I have a couple of suggestions:

    - You can use either a demand or a 'discharge to atmosphere'. Demand is easier to set up and you can assign a pattern if you need to. With a 'discharge to atmosphere' flow will vary depending on the pressure available, but you need to enter additional data - specifically a 'typical' flow and pressure drop. Leaving these values set to zero causes the unbalanced network errors in your model. But you have to choose decent values to use. Alternatively you can use an 'emitter coefficient' and I suggest you read the help topic called "Estimating Hydrant Discharge Using Flow Emitters" about this. That might help you.

    - The tank empties in about 2 hours. That's what causes the disconnected node warnings (the nodes are disconnected from a water source, because the only source in your model - the tank - is empty). If you just want to know how long it would take to drain the tank with all the taps open (and no inflow into the tank), then you can leave the model as-is and just accept that those errors will appear.

    Regards,

    Mal

          

  • Also regarding your question on the top feed tank - you can model a top-filling tank (see this related thread) but that isn't necessary in this case since you aren't modeling the upstream system. If you are only interested in the downstream system and want to assume no inflow into the tank, you don't need to worry about the top-filling aspect.

    If you decide that you need to model it at a later point, you'll need to add the upstream system, then choose "true" for "has separate inlet?" and "tank fills from top" and enter the level (distance above tank bottom) of the invert of the upstream pipe.


    Regards,

    Jesse Dringoli
    Technical Support Manager, OpenFlows
    Bentley Communities Site Administrator
    Bentley Systems, Inc.

  • Hi Mal and Jesse –

    Thanks for the helpful responses. Mal, a few follow-up questions:

    • If I wanted to use the "Discharge to Atmosphere" elements rather than specifying demands at each of the junctions, where would I enter the additional data you mention (typical flow and pressure drop)? Would those be under the Pressure-dependent demand alternatives -> Pressure-dependent demand function, or are they properties of the junctions themselves? In either case, I'm not sure how to choose reasonable values for those fields—I don't have any data on typical flow rates or the corresponding pressures.
    • If I were to instead use an emitter coefficient, would that be specified as a property of the junction, the "Discharge to Atmosphere" element, or is there a separate emitter element? Is there a good way to determine the pressure drop coefficient k for these tap stands? They're quite a bit smaller than any of the hydrants mentioned in the help article on "Estimating Hydrant Discharge Using Flow Emitters" (http://docs.bentley.com/en/HMWaterCAD/Bentley_WaterGEMS_Help-11-90.html).
    • Ah, that makes sense about the tank. Is there a way to change the demand subject to the tank level, for instance using controls? (e.g. demand at the spigots is halted when the tank is empty) If not, I'm sure I could just set up a demand pattern to reduce demand at the spigots after a period of time sufficient to empty the tank.
    Thank you again for the help.
  • The 'Discharge to Atmosphere' data I mentioned is entered on the Properties of the discharge to atmosphere element itself. See the 'Flow (typical)' and 'Pressure Drop (typical) fields. If you can figure out the right values to use for these fields, then this approach will work well (and the discharge will vary with pressure).

    To prevent information overload I didn't mention the Pressure Dependent Demand alternatives, functions, calculation options etc. in my last response. But, in short, you can use those things to treat a "regular" Demand (added to a junction) - which doesn't vary with pressure - as a demand that does vary with pressure. As you can see though, it takes extra data input...and in your simple model there are easier ways to set your model up. So you should probably ignore that Pressure Dependent Demand stuff for now.

    An emitter coefficient is property of a Junction. If you can figure out the right value to use for this fields, then this approach will also work well (and the discharge will vary with pressure). Remember that you would use an Emitter coefficient on a junction OR a "regular" Demand on a junction OR a Discharge to Atmosphere  - not all three.

    So there are several ways to do what you want, but try not to overcomplicate it.

    You could go out and measure the flow when the tap is open, or you could get out a calculator (or our FlowMaster product) and use the orifice equation (you would have to pick an equivalent orifice size to approximate each tap). Or, you could use your sensible approximation of 0.2 L/s as the typical flow and a pressure drop equal to the static pressure (approx. 180 kPa) on a Discharge to Atmosphere.

    Personally I would probably stick with the simplest option -  a "regular" Demand on each tap node of, say, 0.2 L/s (though I might do one run with demands = 1L/s to see how that looks).

    If you do that you will see that the pipes have plenty of capacity (almost zero headloss) but the tank empties in around 2 hours. So if anything, you could probably use a bigger tank.

    Regards,

    Mal

          

  • Also, regarding "changing the demand subject to the tank level" for a gravity system - if you used one of the methods that relates outflow (demand) to pressure (PDD, Discharge to Atmosphere or emitter coefficient), the demand will drop as the tank level drops.

    However if the tank bottom elevation is higher than the elevations of the demands, their demand/outflow will not drop all the way to zero by the time the tank is drained, so you'll still have the same problem with the tank becoming empty. You could do things like demands patterns that drop to zero at a certain time, but like Mal said, it may be overcomplicating things.


    Regards,

    Jesse Dringoli
    Technical Support Manager, OpenFlows
    Bentley Communities Site Administrator
    Bentley Systems, Inc.