Modeling Reference - Hydropneumatic Tanks

Product(s): HAMMER
Version(s): CONNECT Edition, V8i
Area: Modeling


This TechNote explains how the Hydropneumatic Tank element works and its typical application in HAMMER. 

For information on modeling hydropneumatic tanks during an EPS in WaterGEMS or WaterCAD, see: Modeling hydropneumatic tanks in an EPS in WaterGEMS and WaterCAD


The Hydropneumatic Tank element in HAMMER represents a cylindrical or spherical pressure vessel containing fluid at the bottom and an entrapped gas (usually air or nitrogen) overlying the liquid. It is sometimes referred to as a gas vessel, air chamber, or pressurized surge tank.

When the hydropneumatic tank is being filled (usually from a pump), the water volume increases and the air is compressed. When the pump is turned off, the compressed air maintains pressure in the system until the water drains and the pressure drops. This storage of energy as compressed air allows for a high hydraulic grade to be achieved in a relatively small tank, whereas the traditional, unpressurized surge tank would need to be constructed as high as the hydraulic grade you need to achieve. This is because the hydraulic grade in a hydropneumatic tank is the elevation plus the water level PLUS the pressure head of the gas above it, whereas in a surge tank, it is the water surface elevation. Thus, a surge tank is typically not practical for a high head system.3 So, If the hydropneumatic tank contains enough (pressurized) gas to prevent water columns from separating, it can be a very effective way to avoid or reduce pressure surges. 

The most common use of a hydropneumatic tank for surge protection is for controlling transients caused by rapid pump start up and shut down. In a typical emergency pump shutdown scenario, the low pressure downsurge can cause severe subatmospheric pressure. Column separation can occur and severe high pressure upsurges can occur upon vapor pocket collapse. So, protective equipment is often necessary to provide water and head to the system upon downsurge and also to bleed water out of the system upon upsurge. Most often the best protection for this situation is either a surge tank or hydropneumatic tank, since they can provide this water and head during a transient event.

The hydraulic grade provided by a surge suppressing hydropneumatic tank must be high, and typically will operate at normal pipeline pressure. This means the normal pressure at the tank is the same pressure that would occur if the tank were not installed at all. This is different from hydropneumatic tanks in water distribution systems, which typically cycle quickly based on hydraulic grade pump controls. 

Note: Adding surge control equipment or modifying the operating procedures may significantly change the dynamic behavior of the water system, possibly even its characteristic time. Selecting appropriate protection equipment requires a good understanding of its effect, for which HAMMER is a great tool when coupled with engineering judgment.

Modeling Considerations

If you have decided to model a hydropneumatic tank for surge protection, there are several considerations for its design. Each of these can impact the effectiveness and cost of the device and must be carefully evaluated.  For further guidance on sizing of the hydropneumatic tank, we suggest the book 'Fluid Transients in Pipeline Systems' by A. Thorley.


A hydropneumatic tank is typically installed just downstream of a pump station, in order to keep the water column moving after a pump shutdown event. It is typically installed inside an enclosed building and is sometimes 'twinned' (two of the same tank side by side) for maintenance and redundancy purposes.3

If the hydropneumatic tank location is uncertain or if more than one may be required, you can compute the transient simulation without any protection and check your results, such as the minimum and maximum pressure envelope in the Transient Results Viewer. By viewing these results, you can see critical areas of the pipeline and potentially find a good location for the hydropneumatic tanks. You can then add your hydropneumatic tanks, re-compute the transient simulation, re-check the results and make adjustments as necessary.

Note: Sometimes a tank may be required on the suction side of a pump station as well, to prevent cavitation upon pump shutdown/startup. Be sure to check the minimum pressure results upstream of the pump for your transient simulation.

The pipe connecting from the main pipeline to the hydropneumatic tank can be modeled in HAMMER either implicitly or explicitly. Basically, when laying out the hydropneumatic tank, it can be modeled at a 'Tee' by laying out the connecting pipe, or can be modeled directly on the main line. When modeling on the main line (which is the typical approach), the influence of the short piping between the main and the tank can be represented by means of the tank inlet diameter and minor loss coefficient fields.  

Although explicitly entering the short connecting pipes to the vessel is not incorrect in principle, it may lead to excessive adjustments in pipe length or wave speed which in turn may have an impact on the results. This adjustment commonly occurs with short pipes, due to the fact that HAMMER must have a wave able to travel from one end of the pipe to the other end in even multiples of the time step. Since you can model the connecting pipe head losses via the minor loss coefficient field, it is often best to model the tank inline. However, you must also consider the effects of water momentum. For example, if you are modeling large flows and large diameter pipes, the effects of accelerating that relatively large volume of water in the connecting pipe upon emergency pump shut down may be significant.

If you are simulating an emergency pump shutdown event, it may be possible to have a condition where a single hydropneumatic tank at the pump station cannot provide adequate protection. For example, if there is an intermediate high point between the pump and the downstream boundary tank or reservoir, even if your initial hydropneumatic tank pressure is high, it will eventually drain down to a hydraulic grade that causes sub-atmospheric pressure at the high point. So, it is important to also consider the length of time that the pump will be shut down. You will likely want to simulate the worst case scenario, so in this situation you may need additional protection, such as an air valve or additional tank near the high point. For example, consider the following pipeline profile with an emergency pump shutdown: 


Dark black line = physical elevation.
Dashed black line = steady state / initial conditions head. 

In the screenshot above, the addition of a hydropneumatic tank (gas vessel) just downstream of the pump station does not offer enough protection. Sub-atmospheric pressure occurs at the downstream end of the system, due to the high point. Even with an air valve at the high point, the longer the pump is off, the more air will be introduced into the system. The addition of a surge tank at the high point, as shown in the screenshot below, does well at alleviating this problem. 

Note: It is important to note that using hydropneumatic tanks and surge tanks in treated drinking water systems can result in water quality deterioration and loss of disinfectant residual. These devices should be equipped with a mechanism for circulating the water to keep it fresh. A further complication occurs when the tanks are located in cold climates where the water can freeze. If freezing is an issue, smaller hydropneumatic tanks that can be housed in heated buildings are preferable.1


Although the total size of the hydropneumatic tank is important, it is not directly used in HAMMER unless you are using a bladder (which is covered later in this TechNote). Instead, you have to define the initial hydraulic grade and corresponding gas volume, then view the transient results to see how much the gas expanded.

The hydropneumatic tank needs to be large enough so that it does not become empty during the transient simulation. HAMMER assumes that the water volume in the tank is enough so that this does not happen. In the Transient Analysis Output Log (Under Report > Transient Reports), you will see the maximum volume of gas that is needed during the transient analysis. You will then need to provide a hydropneumatic tank that will be able to accommodate that maximum volume of gas and still not become empty of water. If the gas volume exceeds the full tank volume you will see a user notification, but the gas volume is allowed to increase beyond that. For more explanation about this, see: Hydropneumatic tank user notifications: "gas volume exceeds volume of tank" or "fills its containing tank"

Note that you might encounter a situation where the gas volume in the hydropneumatic tank continues to increase no matter how long the simulation is extended. This can occur in situations where there is no other boundary condition (water source like another tank or reservoir) at a higher elevation than the tank, so as long as the pump remains off, the hydropneumatic tank will continue to drain. You may need to consider how long the pumps will remain off and potentially model a pump shutdown followed by startup.

When you are not using the bladder option, you must enter a total volume for the hydropneumatic tank in the "Volume (Tank)" property field, but this is for reference purposes during the transient simulation. If the volume of gas during the transient simulation exceeds the total tank volume that you entered, you will encounter a user notification about the maximum gas volume being greater than the entered tank volume. However, HAMMER will still compute gas volumes above the total tank volume, based on the gas law. Not only will this indicate that there is something wrong, but it will also indicate by how much. Meaning, the user can view the maximum gas volume required (in the text output log with the current tank configuration, make the necessary adjustments, then re-run the simulation.  

For example, a user entered 500 liters as the initial gas volume and 1500 liters as the total tank volume, but the output log shows a maximum gas volume of 1640 liters. This means that during the transient simulation, the head dropped so low that the expanded gas volume occupied more than 1500 liters. It tells the user that their desired tank is almost big enough, but not quite. 

In case this situation occurs, it is important to realize that the total tank size is not necessarily the only factor. For example, if the initial gas volume at the steady state hydraulic grade was smaller, the maximum gas volume during the transient may be less and within the desired total tank size. Other things such as a differential orifice can also influence the effectiveness of a tank that is a certain size. So, just because the reported gas volume is higher than the tank size you'd like, it doesn't necessarily mean that you need a bigger tank. You may be able to control the maximum gas volume by changing other parameters, therefore allowing the same tank size to be used. Since you may be limited (due to cost, physical space or other reasons) in terms of the largest tank size you can provide, adjustment of these other things may be necessary. With HAMMER, you can easily test different configurations of your tank to find the optimized protection for your pipeline.  

In some cases, you may have a requirement stating that a certain percentage of the tank volume must be liquid in the steady state conditions. You may also have a limit on the total tank size, maximum pressure, bladder pre-charge pressure, etc. So, you'll need to design around these requirements. This link has additional information on this: Hydropneumatic tank user notification: Calculated volume of gas exceeds the volume of the tank.

Note also that an empty tank (gas volume = total tank volume) does not necessarily mean a gas pressure of zero. When the tank is empty, the gas may still be pressurized. Conversely the gas pressure may reach zero before the tank is fully empty. See further below "A note on pressure at an empty condition"

Differential Orifice

The piping connection between the hydropneumatic tank and the system should be sized to provide adequate hydraulic capacity when the chamber is discharging, as well as to cause a headloss sufficient to dissipate transient energy and prevent the chamber from filling too quickly. Both of these requirements are met through the use of a piping bypass as depicted below.1

In HAMMER, the headlosses associated with this can be modeled by using the "Minor Loss Coefficient," "Ratio Of Losses," and "Diameter (Tank Inlet Orifice)" attributes of the hydropneumatic tank. This is referred to as the differential orifice, because the ratio of losses allows you to have the inflow headlosses different from the outflow headlosses. In the above illustration, you can see that the check valve causes inflows to undergo larger headlosses as water passes through the bypass. So, the ratio of losses attribute is usually larger than 1.0 and applies to inflows. 

The minor loss coefficient that you enter is used for tank outflows. For tank inflows, the minor loss coefficient is multiplied by the ratio of losses and the resulting coefficient is used. The effect of a differential orifice can be large for some systems. 

Note: You may consider adjusting the minor loss coefficient to represent multiple losses through the tank assembly. For example, you may have minor losses from bends, fittings, the tank inlet itself and the differential orifice assembly. In this case, you can set the "minor loss coefficient" value to represent all those losses, but remember that the velocity used to calculate them is based on the area of the "diameter (tank inlet)". Also, you'll need to set up the ratio of losses such that the losses through the entire tank assembly appropriately accounts for the additional loss through the bypass of the differential orifice.

Consider the two profiles below, showing the maximum transient head for a pipeline during an emergency pump shutdown event. The first profile shows the results without a differential orifice applied; the orifice diameter is 175 mm with a ration of losses set to 1.0. The second profile includes an orifice of 100 mm and a ratio of losses set to 2.5. As you can see, it helps reduce the maximum transient pressures in the system. This could also mean a possible reduction in total required tank size.



A flexible and expandable bladder is sometimes used to keep the gas and fluid separate in the hydropneumatic tank. Since there is no contact between the compressed air and the water, there is no dissolution. There is thus no requirement for a permanent regulation system such as an air compressor, which is otherwise typically required (since the gas slowly dissolves into the water).2

In most cases the bladder "balloon" contains the gas, but in other cases, the gas is in the area between the tank casing and a bladder that surrounds where the water from the main flows in and out (meaning "water in bladder" as opposed to "air in bladder"). For transient modeling in HAMMER, this is not a factor, since there is still a certain volume of gas and a gas/pressure relationship that determines the change in pressure due to a change in volume and vice versa.

When using a bladder, a 'pre-charge' pressure is first applied, before the tank is connected to the system and submitted to pipeline pressure. Normally the pre-charge is done to a bladder "balloon" containing the air or gas, but in the aforementioned "water in bladder" case, the pre-charge is done to the area between the bladder membrane and the tank walls. However in both cases, the pre-charge will result in gas occupying the entire tank volume (V) at a certain pressure (P), which HAMMER uses (with the gas law) to determine how pressure and volume change during the transient simulation. For example, based on the hydraulic grade in the initial conditions in HAMMER, it uses that pre-charge pressure paired with the total tank volume to determine how much the area where the gas resides is compressed.

Transient protection performance when using a bladder-type tank tends to be sensitive to the pre-charge pressure, since it determines the initial gas volume and sensitivity to pressure changes. Sometimes you may have a requirement on the pre-charge pressure, such as being 5% of the normal pipeline pressure. Otherwise, you may need to use trial-and-error to find the best pre-charge pressure.  

When using the bladder tank option, prior to and during a transient computation:

  • HAMMER assumes the bladder is at the pre-set pressure but isolated from the system.
  • HAMMER assumes a virtual isolation valve is opened, such that the (typically higher) system pressure is now felt by the bladder.
  • Based on the gas law, HAMMER computes the new volume of the air inside the bladder.
  • When the transient occurs, HAMMER expands or contracts the volume inside the bladder accordingly.

After the simulation is complete, you can look in the text output files to see what the preset pressure, pre-transient volume (at system pressure) and subsequent variations in pressure and volume have occurred.

Note: The pre-Charge pressure i.e. Pressure (Gas-Preset) needs to be defined in terms of Gauge pressure. During calculations, atmospheric pressure is added which then becomes absolute pressure, which is required for the Gas law calculations. The hydropneumatic tank gas pressure results are reported in terms of absolute pressure. An example calculation for this is shown in the below section "With Bladder"; please refer to that for an illustration.

More on how Bladder-based tanks work can be found further below under the section "Transient simulation behavior".

Pump Check Valve

When using a hydropneumatic tank just downstream of a pump station, check valve slam is a common concern. This is because after the low pressure transient from a pump shutdown event, the tank maintains a high downstream hydraulic grade, which quickly causes the check valve downstream of the pump to close. So, a non-slam check valve is typically used in these cases.  

The user must carefully model the check valve by considering its behavior. By default, the check valve node element and check valve property of a pipe assume an instantaneous closure upon first detection of reverse flow. This means no reverse velocity will build up before closure occurs. If this does o't match the behavior of your check valve, be sure to use the "Open Time," "Closure Time," and "Pressure Threshold" options for the check valve node element. This will allow you to model the delay in opening and closing of a check valve. 


Initial Conditions Behavior

As with any transient simulation, a model with a hydropneumatic tank must begin in a steady state condition. HAMMER uses the WaterGEMS hydraulic engine to compute the steady state initial conditions, which are used as the starting point for the transient simulation. For a hydropneumatic tank, the initial conditions provide a hydraulic grade and inflow/outflow to the transient calculation engine. 

Steady State vs. EPS

Typically the initial conditions are computed as a steady state by selecting "Steady state" as the "Time Analysis Type" in the Steady State/EPS solver calculation options. If you must compute an Extended Period Simulation (EPS), be aware that you will need to select a time step for the transient calculation to use as its initial conditions using the "Initialize transient run at time" transient calculation option. You will also likely need to use a small setting for the Hydraulic Time Step field in the Steady State/EPS Solver calculation options, since a hydropneumatic tank typically cycles relatively quickly. With EPS, you will likely also need to set up controls for your pump based on the tank hydraulic grade. Lastly, the change in HGL and volume during the EPS is calculated using either a constant area approximation or the gas law, depending on the selection of "Tank Calculation Model" field in the hydropneumatic tank properties 

However, when modeling a hydropneumatic tank that is meant for transient surge protection, it typically operates under 'line' pressure, so you usually do not need to analyze changes during EPS. The typical approach is to use a steady state simulation as the initial conditions and to set the "Treat as Junction" attribute to True

Treat as Junction?

As mentioned above, in many cases a hydropneumatic tank may be implemented only for transient protection. During a steady state condition, the tank may simply operate under the corresponding normal / steady state head ("line pressure"). So, for simplification, it is sometimes preferable to select "True" for the "Treat as Junction" attribute in the tank properties. Doing this allows the initial conditions solver to compute a hydraulic grade at the tank location, and the user simply assumes that the tank has already responded to the hydraulic grade and the air volume has expanded or contracted accordingly. In this case, the user only needs to enter the initial volume of gas under the "Transient" section of the tank properties that corresponds to the hydraulic grade during the initial conditions (unless using a bladder). It is important to remember that the tank is only treated as a junction in the initial conditions. During the transient simulation it is still treated as a hydropneumatic tank. 

If you already know the hydraulic grade that you would like to use as the initial conditions, you would choose "False" for "Treat as Junction?" and enter the hydraulic grade under the "Physical" section of the tank properties. The initial conditions solver will then compute the flow and head in the rest of the system, with the hydropneumatic tank as the boundary condition. In this case, the tank will likely have either a net inflow or outflow, to balance energy across the system, so your transient simulation may not begin at a true steady condition. 

Initial Conditions Attributes

The following attributes of the hydropneumatic tank influence the initial conditions calculation (steady state or EPS). You will notice that they are all within the "Operating Range" or "Physical" section of the hydropneumatic tank properties. 

  • Elevation (Base) - The elevation of the base of the tank. It is used as a reference when entering initial hydraulic grade in terms of "Level." In other words, if the "Elevation (Base)" is set to 20 meters and the operating range is set to "Level", a "Level (Initial)" value of 1.0 represents an elevation of 21 meters. 
  • Operating Range Type - Specify whether the initial hydraulic grade of the tank is based on levels measured from the base elevation or as elevations measured from the global datum (zero). Note that pressure calculations use the "Elevation" field in the physical section of the properties (see further below).
  • HGL (Initial) or Level (Initial) - Depending on the operating range type selected, this represents the known boundary hydraulic grade at the tank during steady state. Remember that it includes the water surface elevation plus the pressure head of the compressed air in the hydropneumatic tank. The transient simulation will begin with this head. However, if you have selected "True" for the "Treat as Junction" attribute, the transient simulation will ignore this value and instead use the computed steady state hydraulic grade seen in the "Results" section of the tank properties.


Note: The computed hydraulic grade still represents the water surface PLUS the air pressure head. It is the total head at that point in the system (see further above for more information on the "Treat as Junction" attribute). If you ran a steady state, treating the tank as a junction to find the 'balanced' head in the tank (as if it already responded to the system conditions) but then wanted to change it back to being treated as a tank (for purposes of analyzing the behavior in an EPS simulation), yet still begin the simulation with the same, balanced head. To do this, you would copy the computed hydraulic grade (from the results section of the properties) into memory, set "Treat as Junction?" to "False", then paste that hydraulic grade value into the "HGL (Initial)" field. When re-computing initial conditions, the initial results will then be equivalent to the original case where the tank was treated as a junction.


  • Liquid Volume (Initial) - This represents the volume of liquid in the tank at the start of the initial conditions, corresponding to the initial HGL. This includes the inactive volume below the effective volume when using the "Constant Area Approximation" tank calculation model. It is mainly used during an EPS run, but also to establish the initial gas volume used by the transient simulation when "Treat as Junction" is set to "False". In that case, the initial gas volume is the difference between the "Volume (Tank)" and the "Liquid Volume (Initial)". When "Treat as Junction" is set to "True", the initial liquid volume field is not directly used by the transient simulation.
  • Elevation - The elevation from which to calculate pressure in the hydropneumatic tank. The most accurate elevation would typically represent the bottom of the tank. However, if the bottom of the tank is close to the ground surface elevation, the ground elevation can be used as well. It could also be set to the estimated water surface, since the air pressure used in the gas law equation is above that point. However, the bottom elevation and water surface are typically very close, so this likely will not make a noticeable difference. Note: If a user is using "Fixed" Elevation Type, the value entered here will always be used for the pressure calculations. If the user believes that the water surface elevation will have a significant impact on the pressure calculations, they should set Elevation Type to "Variable Elevation" and enter the tank dimensions.
  • Volume (Tank) - This represents the total internal volume of the tank. In an EPS run, or when "Treat as junction" is set to "False," this is used to find the initial gas volume so that the gas law equation can be used, i.e., the difference between this and the "Liquid Volume (Initial)". This is also used when using the bladder option to establish the pressure/volume relationship used during the transient simulation. HAMMER assumes the bladder occupies this full tank volume at its "preset pressure," so this full tank volume value is needed by the gas law equation. As for the transient simulation itself, the full tank volume attribute is only used indirectly since it establishes the initial conditions. Since by default the liquid service elevation in a hydropneumatic tank is not tracked and is assumed to be fixed, the "Volume (tank)" attribute is also used for reference purposes during the transient simulation. See "Tank Type" further below under "Transient Simulation Attributes" for further information. The calculated volume of gas is compared to it to determine if the tank becomes empty.
  • Treat as Junction? - Selects whether or not the tank is treated as a junction during the initial conditions. If "False," the "HGL (Initial)" or "Level (Initial)" field is used for the initial head. If "True," the initial conditions solver acts as if the tank is a junction and computes line pressure. 
  • Tank Calculation Model - Specifies whether to use the gas law or a constant area approximation method during EPS initial conditions. The constant area approximation uses a linear relationship; the user must specify minimum and maximum HGL and the corresponding volume between. The gas law model is non-linear and follows the gas law--as gas is compressed, it becomes harder to compress it more. 
  • Atmospheric Pressure Head - When using the gas law tank calculation model, this field represents atmospheric pressure at the location being modeled. This is required because the gas law equation works in absolute pressure, as opposed to gauge pressure.  
Note: The "atmospheric pressure head" field is not used during the transient simulation. The transient calculation engine assumes an atmospheric pressure head of 1 atm or 10.33 meters.
  • HGL On/HGL Off - Exposed when using the constant area approximation method. The "HGL On" field is the lowest operational hydraulic grade desired, and the "HGL Off" is the highest operational hydraulic grade desired. Corresponding controls should be entered to turn the pump on and off during an EPS simulation. Note that typically a transient simulation will use steady state initial conditions, so these fields are not considered; only the steady state HGL and user-entered gas volume are used to define the initial volume and head for the transient simulation.
  • Volume (effective) - Exposed when using the constant area approximation method. Represents the volume between the "HGL On" and "HGL Off" fields. 

Gas Law vs. Constant Area Approximation

For the initial conditions, the user must select either "Gas Law" or "Constant Area Approximation" for the "Tank Calculation Model" attribute of the hydropneumatic tank. The constant area approximation selection exposes the "Volume (Effective)," "HGL On," and "HGL Off" fields. The gas law selection exposes the "Atmospheric Pressure" field. These fields are primarily there to support the WaterCAD and WaterGEMS products, which can directly open a HAMMER model. They are only used to track the change in HGL and volume for EPS simulations, which typically are not used in HAMMER. A transient analysis typically begins with a steady state simulation, which only considers the "HGL (Initial)" and "Volume of Gas (Initial)". This is because a steady state simulation is a snapshot in time, so the head and volume are not changing. So in most cases, it does not matter which tank calculation method you choose. You will likely want to select "Gas Law" for simplicity, but additional information on both approaches is provided below. 

  • Constant area approximation: This method approximates a hydropneumatic tank by constructing a normal tank based on hydraulic grades. The "HGL On" and "HGL Off" fields represent the liquid level plus the pressure head, and an approximated diameter is computed based on the effective volume. So, you essentially have a tall, skinny tank whose water surface elevation approximates the HGL in a hydropneumatic tank. 
  • Gas Law: This method uses the ideal gas law, PV=nRT, to compute new hydraulic grades as liquid volume changes in the EPS simulation (nRT is assumed to be constant). The initial liquid volume is subtracted from the total tank volume to find the gas volume. The physical elevation is subtracted from the initial HGL to find the gauge pressure. The atmospheric pressure is added to the gauge pressure to get absolute pressure, which is used in the ideal gas law equation.  

Both methods typically yield similar results within the effective control range, but the gas law is technically more accurate.  

Transient Simulation Behavior

The following section explains how HAMMER handles hydropneumatic tanks during the transient simulation. There are two distinct tank configurations: with a bladder and without a bladder. 

Without a Bladder

The transient simulation uses the hydraulic grade from the initial conditions, along with the initial gas volume, which is either user-entered (if "Treat as Junction" = True) or calculated based on the difference between the "Volume (Tank)" and "Liquid Volume (Initial)" (if "Treat as Junction" = False). As pressure in the system drops due to a downsurge, this gas volume expands and water injects into the system. Pressure upsurges cause the gas to compress as water re-enters the tank. This compression and expansion occurs in accordance with the isothermal gas law. A constant number of moles / mass of gas in the tank and constant temperature is assumed, so the 'nRT' term in the gas law equation is replaced by a constant, K. Thus, the equation used is PVk=K, Where P = absolute pressure (feet or meters), V = gas volume (cubic feet or cubic meters) and k is the Gas Law Exponent specified in the tank properties. Thus, the constant K is computed from the initial gas volume raised to the exponent, multiplied by the initial pressure. The pressure P is the initial hydraulic grade minus the tank physical elevation, plus atmospheric pressure (1 atm or 10.33 meters). This way, a new air volume can be computed based on pressure changes during the transient simulation.

For example, consider a tank where the initial gas volume is 0.8 m3 , initial hydraulic grade is 150 m, physical elevation is 100 m and gas law exponent is 1.1. From this, HAMMER computes the "K" constant as: (150 - 100 + 10.33)(0.81.1) = 47.2. Since K is known now, the change in pressure can be computed based on changes in volume due to inflow or outflow. If the tank filled such that the gas volume was compressed to 0.5 m3 , based on the K constant of 47.2, this means that the corresponding pressure = (47.2) / (0.51.1) = 101.175 - 10.33 = 90.845 m and a hydraulic grade of 100 + 90.845 = 190.845 m.

Note: In the formula above, the pressure P is measured from the bottom of the tank (the physical elevation). This is because by default, HAMMER does not track the liquid level in the hydropneumatic tank. This assumption should be fine in most cases, because these tanks are usually relatively small and thus the change in liquid level would have a minimal impact. However if you would like HAMMER to be able to account for the liquid level (water height), check out the section further down in the TechNote called "Tracking the Liquid Level."

Note: In HAMMER and greater, the "Volume of gas (Initial)" field only needs to be entered if your hydropneumatic tank is treated as a junction or if you are choosing to specify custom initial conditions (and are not using a bladder). In other cases, the initial gas volume is derived from the total tank volume minus the initial liquid volume.

A note on pressure at an empty condition: A gas pressure of zero does not necessarily correlate to when the tank becomes empty. The gas in the tank may still be pressurized when the gas volume exceeds the size of the tank, or when the water level in the tank reaches the bottom (if using "Variable Elevation" for the Elevation Type). This also means that you can have a situation where a tank is not yet empty when the gas pressure drops to zero.

If you use the variable elevation table as the elevation type, the water level can be calculated for a more accurate calculation of pressure (based on the water surface elevation instead of based on the tank physical "elevation"), but the situation is still the same, in that the gas pressure is calculated based on the gas law relationship.

For example, consider a case where the model reports a maximum volume of gas that is slightly less than the total tank volume, yet the minimum pressure of gas is reported as 6 m absolute (or -4.3 gage pressure). In this case, the results indicate that when the hydraulic grade drops to the bottom of the tank, the gas volume is still greater than the full tank size and the tank is not yet empty. The HGL then drops below the bottom and the tank is still not quite empty of water. This basically means that there is a negative pressure in the almost-empty tank, which can be imagined as the water column "pulling" at gas pocket inside the tank. In a practical sense, this may mean that the initial gas volume is too small for the given initial pressure. However, if increased, that changes the pressure vs. flow relationship and the tank may become empty.

With a Bladder

If your hydropneumatic tank has its gas contained within a bladder (or in some cases the water is contained in the bladder and gas is between the bladder and the tank wall), then you must enter a gas preset pressure. This is the pressure inside the bladder (or more specifically the area where the air/gas is contained) before the tank is submitted to pipeline pressure; basically the pressure that you precharge it to, before installation. The preset pressure is typically a percentage of the pipeline pressure; a possible range is 5% to 80%. Since the tank is not yet installed when the bladder is precharged, it means that the gas takes up the entire tank volume. (Note that this is the case even with "water in bladder" cases, where the gas is contained in the area between the bladder membrane and the tank walls.) So, HAMMER can calculate the initial gas volume inside the bladder (when submitted to pipeline pressure) based on the full tank volume, the preset pressure and the pipeline hydraulic grade. First, the constant K in the gas law (PV = K) is computed based on this preset pressure and the full tank volume, "Volume (Tank)." The transient simulation's initial gas volume is then computed based on the K constant and the initial conditions hydraulic grade. The initial conditions hydraulic grade is either the user-entered value in the "HGL (Initial)" field or the computed steady state hydraulic grade, depending on the "Treat as Junction?" selection. 

For example, consider a tank that has been given a full volume of 500 L and the initial conditions pressure head is 50 m. Assume that the pre-charge pressure is 5% of the steady state pipeline pressure. (This is a number that you would know ahead of time.) So, the gas preset pressure is set to 2.5 m (50 m times 5%). In this case, HAMMER computes the 'K' constant as (2.5 m + 10.33 m)(0.5 m3) = 6.415. Since K is known now, the initial gas volume for the transient simulation after the bladder is submitted to pipeline pressure is computed as V = K/P = (6.415)/(50 m+10.33 m) = 0.106 m3 = 106 L. 

Conversely, consider a case where you want the tank's bladder to be compressed to a specific size when submitted to pipeline pressure (rather than assuming a percentage of pipeline pressure such as 5%) and would like to know what you would need to enter for the preset pressure to achieve this. Assuming the same full tank volume/size of 500 L, the initial conditions pressure head of 50 m, and assuming you want the bladder to be compressed to an initial gas volume of 200 L, we must calculate the K constant based on the gas law when the tank is installed, where the "P" is the initial pipeline pressure (50m) and the "V" is the desired gas volume of 200 L (0.2 m^3) : K = (50m+10.33m)*0.2m^3 = 12.066. Next, take this "K" and calculate the preset pressure that the bladder would need to be charged to before installed, where the bladder occupies the full volume (500L / 0.5 m^3). The gas law equation can be rearranged in this case, to P=K/V : P = (12.066 / 0.5 m^3)-10.33 = 13.8 m. So, you would need to use a preset pressure of 13.8 m to achieve an initial gas volume of 200 L, in a system where the initial pipeline pressure is 50 m and the full tank volume is 500 L.


  • The gas law exponent is assumed to be 1.0 in this particular calculation for finding the initial gas volume of the transient simulation. Once the transient simulation begins, the gas law exponent entered in the tank properties (which defaults to 1.2) is used for calculating changes in gas pressure/volume.
  • Since the gas law works with absolute pressures, atmospheric pressure head must be added in the calculation. HAMMER assumed atmospheric pressure head is 1.0 atm, which is the 10.33 m you see in the above example.
  • If you use the second approach above to calculate preset pressure based on assumed initial gas (bladder) volume, it is possible to end up with a negative preset pressure, if the initial pressure is less than atmospheric pressure. This can be a real situation because a slightly negative gauge pressure is still a positive absolute pressure. Practically speaking, it means that your initial pressure is very low and the bladder would actually be slightly deflated in order to achieve the desired initial gas volume. Under the assumption that the bladder fills the containing tank before being submitted to pipeline pressure, this deflated bladder would indeed experience a negative gauge pressure in order for it to stretch to fill the containing tank. However there are still moles of gas inside the bladder, so it can still be compressed and follow the gas law relationship between volume and pressure. In this situation, check if the initial pressure, elevations, and assumed initial bladder size are correct, as it would not be typical for a hydropneumatic tank to experience such low initial pressures.

To see the initial gas volume in the bladder at the start of a transient simulation, ensure that text reports are enabled in the calculation options and a number is entered for the "Report Period" of the tank, then look at the bottom of Reports > Transient Reports > Transient Analysis Detailed Report. At the top of the table of results for the tank, note the volume for time zero. This is the initial gas volume - the compressed size of the bladder.

Intuitively, as long as the gas preset pressure is lower than the pipeline pressure in steady state, the initial volume of gas in the tank will be less than the total volume. Typically, the preset pressure is relatively small, but that may not always be the case. Below is a comparison of two possible bladder tank configurations (at opposite extremes of the spectrum) for a particular system, with an emergency pump shut down event. 



Observe the graph of time vs. head at the tank location, summary of min/max gas pressure (in meters) and gas volume (in cubic meters) along with transient profile envelope (blue line is minimum head, red line is maximum head.) 

In the first case, the pre-charge pressure is small compared to the pipeline pressure, with a 1000 L tank. In the second case, the pre-charge pressure is large compared to the pipeline pressure, with a 13,000 L tank. With a low preset pressure, the bladder is initially compressed to a relatively small size. So, it is less likely for the tank to drain completely, and thus a relatively small tank size is used without becoming empty. However, per the gas law, the rate of pressure decrease will be higher for a vessel with a lower preset pressure. So, the graph and profile show minimum and maximum transient pressures that may be too extreme for this system. On the other hand, with the high preset pressure case, the bladder is not compressed much when submitted to pipeline pressure. So, a much larger tank size is required to prevent the entire tank from draining of water. However, in contrast to the low preset pressure case, the minimum and maximum transient pressures are much more reasonable. As you can see, the modeler needs to closely examine what is happening in the results for certain tank configurations. Testing different preset pressure values is something you can easily do in HAMMER to see the effects of either option. The text output logs can show you the gas volumes are pressures during your simulation.  

Note: Remember that HAMMER assumes that the size of your hydropneumatic tank is large enough so that it does not become completely empty. So, regardless of whether you are using a bladder or not, if the volume of gas exceeds the total tank volume during the transient simulation, a notification will be displayed, but gas volumes above the total tank/bladder volume will still be calculated since HAMMER cannot model an empty tank. A gas volume in excess of tank volume tells you is that the tank you used is not sufficient and you will likely need to consider a different preset pressure, larger tank, different configuration, additional protection, etc. For more explanation about this, see: Hydropneumatic tank user notifications: "gas volume exceeds volume of tank" or "fills its containing tank"

Transient Simulation Attributes

The following hydropnematic tank attributes influence the transient simulation calculation:  

  • Diameter (Tank Inlet Orifice) - This is the size of the opening between the gas vessel and the main pipe line. It is typically smaller than the main pipe size. It is used to compute the correct velocity through the tank, so the correct headloss is computed based on the minor loss coefficient. The standard headloss equation is used for this: Hl = K*V2/2g.
  • Minor Loss Coefficient (Outflow) - This is the 'k' coefficient for computing headlosses using the standard headloss equation, H = kV2/2g. It represents the headlosses for tank outflow. If you lump other minor losses through the tank assembly (bends, fittings, contractions, etc.) into this coefficient, keep in mind that the velocity is calculated using the area of the "Diameter (Tank Inlet Orifice)" that you entered. If you want to neglect headloss across the tank inlet and assume the headloss is zero, you could set the headloss/minor loss coefficient to zero.
  • Ratio of Losses - This is the ratio of inflow to outflow headloss. For flows into the tank, the minor loss coefficient is multiplied by this value and the losses are computed using that. For flows out of the tank, HAMMER only uses the minor loss coefficient. If you enter a minor loss coefficient of 1.5 and a ratio of losses of 2.5, the headloss coefficient used when the tank is filling would be 1.5 X 2.5 = 3.75. 
  • Gas Law Exponent - Refers to the exponent to be used in the gas law equation. (the 'k' in PV^k = constant) The usual range is 1.0 to 1.4. The default is 1.2.  Note: For dipping tube type hydropneumatic tanks, the gas law exponent value must be greater than 1.0, but other hydropneumatic tank types can use a value of 1.0. A user notification will be generated for cases where a value of 1.0 is used for a dipping tube hydropneumatic tank.
  • Volume of Gas (Initial) - When not using a bladder, the initial volume of gas is an important attribute. This is a required input field, representing the volume of gas inside the tank at the steady state pressure (initial conditions hydraulic grade minus tank physical elevation). During the transient simulation, this gas volume expands or compresses, depending on the transient pressures in the system. For example, consider a 500 L tank with physical "elevation" of 20 m and initial hydraulic grade of 70 m. This means that the air pressure head is ~50 m. The user needs to decide how much volume the entrapped gas pocket would take up at this pressure.  

Note: In version 08.11.01.XX and greater, if you are not specifying initial conditions and not treating the tank as a junction, then the initial gas volume is not required and the field will not show up. This is because it is either computed from the initial conditions gas volume (which is the full tank volume minus the initial liquid volume for a steady state) or based on the preset pressure (if using the bladder option).

Note: In some cases, you may want to analyze a range of different initial conditions, which could potentially change the starting hydraulic grade of your hydropneumatic tank. The gas law can be employed in this case. For example, if you know the initial gas volume is 300 L at a steady state pressure head of 50 m, you can compute the 'K' constant using the gas law, PVk=K: (50 m + 10.33 m)(0.3 m3) = 18.099. So, if your new steady state pressure head is 30 m, the new initial gas volume is computed as V = (18.099)/(30 m+10.33 m) = 0.449 m3 = 449 L.

Note: The transient calculation engine always uses an atmospheric pressure head of 1 atm or 10.33 m when solving the gas law equation.

  • Has Bladder? - Denotes whether the gas is contained within a bladder. If it is set to True, HAMMER automatically assumes that the bladder occupied the full-tank volume at the preset pressure at some time and that the air volume was compressed to a smaller size by the steady-state pressure in the system. The "Volume of Gas (Initial)" is not used in this case, since it is calculated based on the full tank size, preset pressure and steady state pressure. See "With a bladder" topic for more information. 
  • Pressure (Gas-Preset) - This is the pressure in the gas bladder before it is exposed to pipeline pressure. Often called the "pre-charge" pressure; it is only exposed when selecting "True" for "Has Bladder?". The is entered as gauge pressure.
  • Report Period - used to report extended results in the Transient Analysis Detailed Report. Represents a time step increment. For example, entering '10' would cause extended results to be reported every 10 time steps. 
  • Elevation Type - This allows you to specify the type of approach used in tracking the gas-liquid interface. By default, the liquid surface elevation is not tracked and is essentially assumed to be fixed, at the tank physical bottom elevation. For more information on how this option is used for tracking the liquid elevation, see "Tracking the Liquid Level" further below.

Analyzing Results

There are many ways to view the results of your transient simulation. For a hydropneumatic tank, some results are available in the powerful Transient Results Viewer tool and some are found in the text output. 

Note: Do not confuse initial conditions results with transient results. The result fields in the "Results" section of the hydropneumatic tank properties pertain to the initial conditions calculations only. For example, if you right click the tank, choose "Graph" and choose "Gas Volume (Calculated)," this will not show you the gas volume during the transient simulation.It will be for the initial conditions results only.

Transient Results Viewer

The primary tool for viewing results is the Transient Results Viewer. To prepare for its use, first ensure that your transient calculation options are set up correctly (Home > (Calculation) Options or Analysis > (Calculation) Options). Choose some elements under "Report points," choose the desired report times and select "True" for "Generate Animation Data." Next, create a profile of your pipeline under View > Profiles. Then, compute your model and go to Home > Transient Results Viewer or Analysis > Transient Results Viewer. 

To see the transient envelope, select your profile path and click "Plot." To see how the head and vapor volume changes over time throughout your profile, click the "Animate" button and use the animation controls. This will give you a good visualization of how the hydropneumatic tank performs. To see graphs of HGL, flow, and/or vapor volume over time, select one of your report points under "Time Histories," select the attribute to graph and click plot. For example, you may want to see the flow and head at the hydropneumatic tank location. 

Note: the volume reported in the Transient Results Viewer is only air or gas introduced into the pipeline. It does not show the volume of gas inside the hydropneumatic tank itself. The same applies to the "Air Volume (Maximum, Transient)" field shown in the "Results (Transient)" section of the hydropneumatic tank properties.

Beginning with HAMMER V8i SELECTseries 5, additional results are available in the Transient Results Viewer. These were previously only available in text reports. For hydropneumatic tanks, the results available depend on the type of tank (for example dipping tube vs. regular sealed tank):

Gas volume - the volume of gas trapped inside the tank. Increases as water drains from the tank.
Gas pressure - the pressure of the gas in the tank, as measured from the tank bottom (physical elevation), or from the water surface if using the variable elevation curve option.
Water level - the water surface elevation inside the tank - available for dipping tube type tanks for example, where the "variable elevation curve" is used to define the tank dimensions.
Water inflow - the flow rate of water into the tank. Negative values indicate water outflow (leaving the tank)

To access these, choose the Extended Node Data tab in the Transient Results Viewer.

Text Reports

HAMMER's text output results also offer important information for hydropneumatic tanks. To prepare for viewing this information, first check your transient calculation options. "Show standard output log" and "Enable Text Reports" should be set to "True". Next, enter a number for the "Report Period" field of your hydropneumatic tank. This represents how often extended text results will be reported. For example, if your time step is 0.01 seconds and you enter '10' for the report period, it means you'll see extended text results every 10 time steps or every 0.1 seconds.

As mentioned above, some of these results are available in the Extended Node Data tab in the Transient Results Viewer. For users with older versions of HAMMER, they will still need to use the steps below to view the results.


The first text report of importance is the Transient Analysis Output Log, under Report > Transient Reports. Scroll down to the section starting with "THE EXTREME PRESSURES AND VOLUMES". This part of the report summarizes the maximum and minimum gas pressure and volume for the transient simulation.  



Lastly, to see a table of extended hydropneumatic tank results, open the Transient Analysis Detailed Report, under Report > Transient Analysis Reports. Scroll down near the bottom, to the section starting with " ** Gas vessel at node" and you will find a table of gas volume, tank hydraulic grade, pipeline hydraulic grade and tank inflow, over time. The difference between the "head-gas" and "head-pipe" is the headloss induced by the minor loss coefficient at the tank's connecting pipe. Negative values for "inflow" represent tank outflow. 

See also: Differences in hydropneumatic tank gas pressure results



Starting in HAMMER V8i SELECTseries 5, this data can now be viewed directly from the Extended Node Data tab in the Transient Results Viewer. If you have an older version of HAMMER, you must manually generate a graph using an external application such as Microsoft Excel. Here are the steps, assuming Microsoft Excel 2007:

  1. Highlight the table of extended results, then copy/paste it into a separate .txt file (using Windows Notepad).
  2. Open Microsoft Excel and start a new spreadsheet.
  3. Click the "Data" tab, choose "From Text", then select your file. 
  4. Choose "Fixed width", then "next".
  5. Set up the field widths so that the columns of data are separated appropriately.
  6. Set up a line graph with the appropriate columns (Time, plus whatever attribute you'd like to graph. For example, volume of air)

Absolute vs Gauge Pressure in Results

When viewing a time history of pressure in the Transient Results Viewer for the pipe endpoint adjacent to the tank, or when looking at the maximum or minimum transient pressure in the properties of the pipe, this is shown as gauge pressure. 

The maximum pressure of gas, minimum pressure of gas, and the other gas pressure results for the tank node itself (including the user notification about "The maximum and minimum pressure of gas is...") is displayed as the absolute pressure of the gas. This is done to be consistent with the gas pressure calculations, which are also in absolute pressure. See more here.


Tracking the Liquid level

As of HAMMER V8i SELECTseries 1 (, HAMMER supports tracking of the liquid/gas interface, via the "Elevation Type" field in the Hydropneumatic tank properties. This field presents 3 options, Fixed, Mean Elevation and Variable Elevation.



This is the default option for the "Elevation Type" field and is consistent with the behavior of previous versions. The liquid elevation is assumed to be at a fixed location during the transient simulation, equal to the bottom of the tank. The gas pressure used in the gas law equation is the pressure above the user-entered elevation field, accounting for liquid pressure plus the air pressure.  

This is acceptable for most cases, mainly because the elevation difference between the range of possible liquid levels is typically quite small. So it does not account for much of a pressure difference. This can be observed by adjusting the "Elevation" attribute in the tank properties. 

Mean Elevation

Selecting "Mean Elevation" exposes the "Liquid Elevation (Mean)" field, which allows you to specify a custom liquid elevation, instead of assuming it is equal to the tank bottom (as is with the "fixed" option). It represents the average elevation of the liquid/gas interface throughout a transient. This is useful in cases where the liquid elevation is significantly higher than the tank bottom, but does not move significantly during a transient simulation. So, although no tracking of changes in liquid elevation occurs, it allows you to get a more accurate calculation in some cases. The gas pressure used in the gas law equation during the calculations is the pressure above the mean elevation that you enter.  

Variable Elevation 


Selecting "Variable Elevation" exposes the "Variable Elevation Curve" field, which allows you to enter a table of liquid elevation versus equivalent diameter. The variable level hydropneumatic tank type is for users who have detailed information about the tank's geometry (such as a cylinder / curved ends) and want to perform as accurate a simulation as possible. Typically, this type of representation would be selected in the detailed design stage. It would also be appropriate in the case of low-pressure systems and/or relatively tall tanks with large movements of the interface relative to the HGL of the gas. The initial liquid level is determined from the initial gas volume which is an input parameter. The tank cross-sectional area at any elevation is interpolated from an input table of the vessel's geometry spanning the range from the pipe connection at the bottom to the top of the tank. The equivalent diameters would be the green lines in the below example illustration:


After computing the transient simulation with a variable elevation hydropneumatic tank, you can view the liquid level over time by looking at the Transient Analysis Detailed Report. This report is found under Report > Transient Analysis Reports and will show this extended, tabular data for the tank when you've entered a value for the "Report Period" property of that tank (see "Text Reports" further above).  


Note: You must be using at least version of HAMMER in order to use the variable elevation option with a bladder.

Validate or compute fails with notification about variable elevation curve not matching tank volume

HAMMER will compare the derived volume from your elevation-area curve, to your total tank volume, In some situations it may look at the sum of the initial gas and liquid volume. However, the "Liquid Volume (Initial)" field is not displayed if the "treat as junction?" field is set to "true". In version and earlier, the Validate or transient simulation may fail with the below user notification, where the tank volume mentioned in the notification does not match up with the tank volume that you entered:

"The total of initial liquid volume and volume of gas (___ m³) is bigger than calculated volume (___ m³) by variable level curve."

In this case, try changing "treat as junction?" to "false", set the "Liquid Volume (Initial)" to zero, then switch "treat as junction?" back to true and try again. This issue has been reported to our developers (reference # 482440) to be fixed in a future version.

Other Types of Hydropneumatic Tanks 

There are other types of hydropneumatic tanks which can be modeled in HAMMER. Detailed information on how this work can be found in HAMMER's Help documentation. In addition, the hydropneumatic model sample file in HAMMER V8i SELECTseries 5 and later has a scenario that includes dipping tube and vented hydropneumatic tanks. These can be used to get a general idea of how the input is entered for these.

Vented Vessels

This type of hydropneumatic tank has a double-acting air valve that admits air into the system from the atmosphere, when the tank drops below atmospheric pressure (Walski, 2007). A vented hydropneumatic tank is effectively a sealed tank with the addition of an air valve at the top. This allows air at atmospheric pressure to enter the tank during a downsurge so that the device behaves like a one-way surge tank. During an upsurge, the air valve typically throttles the air outflow so that the gas within the tank is compressed and acts as a 'cushion' against transients (just like a sealed hydropneumatic tank). This device offers several practical benefits - for example since the tank typically has no gas inside, there is no need for compressors or a bladder to ensure a required gas volume is maintained. 

Note: Currently vented hydropneumatic tanks can only use a double-acting air valve. To model a vented tank with a triple-acting air valve, the best workaround at the moment would be to either use a conservative value for your design, or use an air-flow curve that represents an average of the large and small outflow orifice of your triple acting air valve.

Dipping Tube Vessel

A dipping tube hydropneumatic tank has a dipping (or ventilation) tube inside with an air valve at the top. One of the main advantage of the dipping tube tank is that it does not require a compressor or a bladder. 

During normal operation the air valve is closed, the water level is above the bottom of the dipping tube, and gas is compressed in the compression chamber. If the hydraulic grade line drops, such as after a pump shutdown), the dipping tube tank acts like a regular (sealed) hydropneumatic tank until the water surface drops below the bottom of the dipping tube, after which the air valve opens and allows air to enter at atmospheric pressure. The air flow rate is reported in the text reports. At this point, the tank is acting like a surge tank that is open to atmosphere. If the hydraulic grade line increases again, such as the pumps turning back on), air will be expelled until the hydraulic grade line rises enough to close the air valve. At this point the water surface will be above the bottom of the dipping tube and the tank will act like a regular sealed hydropneumatic tank once again, as the air/gas is trapped in the area around the dipping tube, known as the compression chamber. HAMMER uses the air inflow orifice diameter for the air venting calculation.

For a Dipping tube hydropneumatic tank, the tank elevation-area curve is used to calculate the tank volume. Before the air in the dipping tube tank is compressed, the air volume is the tank volume above the bottom elevation of the dipping tube. When the air is compressed, the gas law equation and the Newton iteration method is used to calculate the water level and air volume in the tank. Using the gas law equation, an iterative Newton method is used to calculate the water level in the tank. In the gas law equation calculation, the pressure of the air is Atmospheric pressure + pressure head - level.

To calculate the initial air (gas) volume, the elevation-area curve is used, along with the initial HGL and the elevation of the bottom of the dipping tube.

The "Volume of Gas (initial)" field is required if you are choosing "true" for "treat as junction?" - when "true" is selected, it means that you want the tank to "float" on the system during the initial conditions (pressure in the tank settles to be equal to the normal pipeline pressure). The "volume of gas (initial)" in that case is the volume that the trapped gas compresses to when the pressure inside the tank is equal to the initial conditions pressure. To determine the initial gas volume, one possible option to consider is to use the gas law PV=nrt (simplified to PV=K) to calculate that initial gas volume based on the initial conditions pressure (P - be sure to add atmospheric pressure) and the compression chamber volume (V). Since compression only starts to occur when the water level rises to the bottom of the dipping tube, you can use the full compression chamber volume for the initial gas law calculation, with an initial pressure of zero (zero gage, 1.0 absolute), calculate the "K", then use the gas law equation again with the initial conditions pressure P (expressed in absolute pressure) , the K you first calculated, and solve for V for the initial gas volume that the chamber compresses to at that pressure.

Note: the below information applies to HAMMER V8i SELECTseries 5 and greater (including CONNECT Edition):

The Variable Elevation curve represents the full size of the tank, so you do not need to exclude the dipping tube volume.The volume of the dipping tube is automatically excluded from the volume of the compression chamber.
The compression chamber volume is derived from the elevation-area table and dipping tube size and the "Volume (Compression Chamber)" is for reference purposes. You may see a user notification if there is a discrepancy.
The calculated gas volume for a dipping tube hydropneumatic tank includes the gas volume in the compression chamber and the gas volume in dipping tube. Note that when the water level is above the bottom of the dipping tube, the compressed gas/air is only contained within the compression chamber (green shaded area in the diagram below), and accordingly the gas law calculations exclude the volume of the dipping tube. 

Addition information can be found here:  (see video at top)


  • To see the air flow rate from the air valve, ensure that you have a number entered for the "Report Period," then open the Transient Analysis Detailed Report, wait for it to load, then scroll to the bottom of the report and look for the section that begins with "** Hydropneumatic tank at node ____** ." You will see a column for "Air-Flow". Note that the flow rate shown here is the flow rate at pipeline pressure, which will be different than the "free air" flow rate, due to differences in air density. See more here. As of, the air flow rate is not yet included in the Extended Node Data tab of the Transient Results Viewer.
  • If you see small disturbances (slightly unstable results or small unexpected jump/spike) in the transient results for a dipping tube tank, see: Dipping tube hydropneumatic tank results display sudden jump or appear unstable


Example Model

The model below is an example of the use of the Hydropneumatic tank in HAMMER and has several scenarios for different configurations. This sample model is included with the HAMMER installation. You can find it in the Sample folder of the installation folder.


  • The link below is to a version that can be opened in HAMMER V8i build and above. 
  • Additional information can be found in the Project Properties
  • You must be signed in to download the file. The link will not work if you are not signed in.
  • This model is for illustrative purposes only

Click to Download


  1. Advanced Water Distribution Modeling and Management - Walski, 2007.
  2. Charlatte reservoirs -
  3. HAMMER V8i, Transient Analysis and Design training course manual (TRN013190-1/0001)
  4. Fluid Transients in Pipeline Systems - Thorley, 2004

See Also

Protective Equipment FAQ

General HAMMER V8i FAQ

Extended Node Data at odds with time history graph for hydropneumatic tanks

Hydropneumatic tank gas pressure appears to be different from the pressure at the connection

Use of the Gas Law Exponent During Initial Conditions vs. Transient simulation