Modeling District Metered Areas (DMAs)

Product(s): WaterGEMS, WaterCAD
Version(s): CONNECT Edition
Area: Modeling


This article explains how to use the District Metered Areas tool in WaterGEMS and WaterCAD, to quickly generate District Metered Areas (DMA’s) in your model.

A video demonstration is embedded further below.

Note: This tool is available starting with version If you have an older version, please see the below section titled "Other Methods for DMA generation".


District Metered Areas or DMA’s are areas in a water distribution network which are isolated from the whole of the system. This way the flows in and out of the DMA can be metered or quantified. DMA’s provide a more accurate way of tracking water user and loss in the system. DMA’s are created in such a way that they can be isolated from the system without adversely affecting the demands, pressures and supply for the rest of the system.

Some key points to consider while establishing a DMA;

  1. The topography for a particular DMA should be more or less flat. This would ensure equitable pressure distribution within the DMA
  2. The DMA should be isolated with a minimum number of valves. This can be a problem with highly looped systems wherein a number of valves would have to be closed to isolate the DMA.
  3. Natural boundaries such as rivers, streams or other boundaries such as pumping stations, WTP’s etc. should be used for demarcation.
  4. Flow measurement should be used with a minimum number of flow-meters so as to maintain data accuracy.

The DMA tool in WaterGEMS and WaterCAD can help the user easily demarcate a DMA based on the user’s defined criteria. DMA creation is an iterative process and this tool allows merging adjacent DMA’s and controlling the user defined criteria for DMA creation.

Using the DMA Tool

Before the model is delineated into different DMA’s the following points should be considered;

  1. Identify the elements not to be considered in a DMA; such as transmission mains which generally do not form part of a DMA. For the pipes falling under this category change the “DMA Status” property to “Transmission”. When delineating the DMA, the DMA tool will not consider these pipes in DMA formation.
  2. Identify permanent / fixed / known boundaries in the network. Some hydraulic boundaries such as pumping stations, tanks and reservoirs in your network can be considered as fixed boundaries. If you change the “DMA status” of these elements as “Boundary” then the DMA tool will consider this as a boundary of the DMA’s generated. Once you set a pipe to “Boundary”, it means that each end of the pipe is in a different DMA. If you don’t want to force that pipe to be a boundary (i.e. in two different DMAs) just set it to “Boundary Candidate” at the start of a calculation.

A typical workflow to begin DMA delineation would be as follows;

  1. In your model identify elements to be considered and not considered in DMA generation as per above mentioned guidelines.
  2. Change the “DMA Status” property of these elements as “Transmission”, “Boundary Candidate” or “Boundary” appropriately based on elements identified.
  3. Navigate to the “District Metered Areas” tool under Analysis > Analysis Tools > More.
  4. Click on compute and select the criteria for DMA generation i.e., “Target Number of Nodes”, “Target Pipe Length”, or Target Number of Customer Meters
  5. Enter the relevant data (number of nodes, pipe length or target number of customer meters) and generate DMA’s.

Accessing the DMA Tool

The District Metered Areas tool can be found under Analysis > Analysis Tools > More > District Metered Areas.

The DMA Algorithm

The DMA tool uses an algorithm which will create DMA’s based on the boundaries specified. It is based on clustering principles where nodes within a DMA are highly connected with each other but only loosely connected with the rest of the system. Once you specify boundary or transmission, you are overriding that calculation. 

At the start of a DMA run, every node is a potential DMA and all pipes are potential links between DMAs. If the DMA Status is not set to Boundary, the algorithm checks all links and finds the total number of links connected to the two end nodes of a link. The link with the minimum number of links connected to the link end nodes will be the candidate to be merged and the two DMAs are merged to one DMA. If two links have the same minimum number of links connected to link end nodes, the one that was checked first will be the candidate to be merged.

Also, changing a pipe from Active to Inactive will change the order of pipes with smaller number of links connected to pipe end nodes. Therefore, the order of links to be merged will be different and DMA results can be different.

DMA Boundaries

There are three types of elements which can serve as boundaries because they can be either closed or opened. These are;

  1. Pipes – can be “Closed” or “Opened” depending on the requirement
  2. Pumps – can be turned “On” or “Off”
  3. Valves
    1. PRV’s
    2. TCV’s
    3. GPV’s

Each of the above elements has an initial setting as “Boundary Candidate” under the property “DMA Status”. The pipes however, have four different properties;

  • Boundary Candidate: This means that this is a pipe in an open condition initially but can become closed to form the DMA boundary. This is the default property for all pipes before analysis begins. During DMA delineation the pipes under this category can be “closed” to form the DMA boundary.
  • Boundary: This is a closed boundary of the system which helps in demarcating the DMA. The DMA tool will always consider this as a fixed / permanent boundary for the DMA. This status should be used for elements which are known hydraulic boundaries.
  • Transmission: This condition is applied to transmission mains which are generally kept open and do not form a part of the DMA.
  • Assigned: Based on the DMA’s created, this status would be assigned to the pipes if they are “assigned” to the particular DMA after analysis.

For pumps and valves there are only two states; “boundary candidate” and “boundary”;

  • Boundary Candidate: This means that node could be the boundary in the DMA analysis. When performing DMA delineation, the junctions under this category can be “closed” to form the DMA boundary. For example, an Isolation Valve that is “closed”.
  • Boundary: This is a closed or metered node of the system which serves as a DMA boundary.

Once the District Metered Areas tool is selected the following dialog box opens up;

There are several toolbar commands in the menu bar at the top. Before the DMA algorithm is used for DMA demarcation, there are a few options you must consider before modeling. In the “Assign DMA Status” command, there is an option for “Initialize DMA Boundary Status”. This option allows you to set your parameters for DMA creation. If you only want a particular element(s) to serve as boundaries, you can define it so in this option; you can specify the same as an initial criterion for DMA demarcation. Basically, this option allows you to “globally edit” and assign the desired DMA status for an element. This is especially useful in cases where you know that a particular element type is supposed to be a “boundary” or a “boundary candidate”.

With this initialization you can define default “DMA status” for the above elements based on your DMA generation requirements. In the snapshot above, pumps and pump batteries are considered as “Boundary” which means that these represent fixed DMA boundaries. Hence for the above case pumps or pump stations will act as DMA boundaries. However, this depends on your interpretation of a DMA. For a very large network some intermediate / intermittent / smaller pumps may be ignored if you are considering large metered areas and small fluctuations with such pumps are within allowable tolerances. This can be true also for cases where a large number of DMA’s are generated causing you to merge a bunch of them.

As another example, if you know that all PRV’s will be DMA boundaries, then you can tell the DMA tool to always have them as DMA boundaries during the DMA analysis (separating your DMAs), by choosing “boundary” in the field next to “PRV’s” in this tool. This will globally change the DMA Status of PRVs to “boundary”. If you are not yet sure which PRVs should be DMA boundaries, you can let the tool decide (based on other criteria) by choosing “boundary candidate” next to the PRV option, which will set all PRVs’ DMA Status to “boundary candidate”.

The rest of the commands are as follows.

As of version it is possible to assign District Metering Areas based on the target number of customer meters. After selecting the Compute button in the District Metering Area tool, a dialog is generated to select the criteria type used to generate the DMAs. In addition to the existing options (Target Number of Nodes and Target Pipe Length), you can now select Target Number of Customer Meters. The workflow will be the same as other criterion types.

  1. The left most symbol (Compute) provides the user with the options for DMA analysis  
    1. Target Number of Nodes: Specify the number of nodes for the DMA. It is a good practice to initially specify a small number of nodes and then increase it to refine the DMA size.
    2. Target Pipe Length: Specify the pipe length for the DMA.
    3. Target Number of Customer Meters (Note: As of version this new method of DMA analysis is available.)
  2. The second command from left is the “Highlight DMA’s” command. It highlights the DMA’s created for better visual understanding.
  3. The third command from left is “Zoom To” for zooming in on a particular DMA.
  4. Next to it is the “Find by Element” tool to locate elements within a DMA.
  5. The “Assign DMA Status” as explained above is important to define the DMA status of each of the elements in the network. There are several other options such as
    1. Merge Adjacent DMA’s: Use this command to merge adjacent DMA’s
    2. Set Pipe DMA Status to “Assigned”: Use this command to set the pipe DMA status to “Assigned” if you are satisfied with the DMA demarcated by the algorithm.
    3. Reset Pipe DMA Status to “Boundary Candidate”: Use this command to reset the DMA status of pipe back to “Boundary Candidate” and repeat the analysis.


Once the “Compute” command is executed with the “Target Number of Nodes”, “Target Pipe Length”, or Target Number of Customer meters, the DMA tool creates DMA’s as per user defined criteria.

Usage Guidelines

The DMA tool enables us to demarcate DMA’s automatically but there are a few guidelines which can help you generate DMA’s satisfactorily;

  1. Keep the number of nodes or pipe length initially low so as to generate smaller DMA’s. With this you can get an idea about how the boundaries of the DMA are defined. If the results are satisfactory you can set the elements to “Assigned”
  2. When smaller DMA’s are created, you can also merge adjacent DMA’s to form a larger DMA which satisfies your DMA criteria.
  3. Once the DMA’s are defined you should also check on the boundaries for the DMA and ascertain if these are identified as per the DMA attributes for those elements. If not manually change the attribute to “Boundary” and the program will consider it as a closed boundary.

DMA Tool Video Demonstration

Quick Steps:

Longer overview and demonstration on our YouTube channel:

Other Methods for DMA generation

This section deals with means and methods for DMA generation in WaterGEMS / WaterCAD versions below CONNECT Edition Update 2 (

Option 1 : Using the Pressure Zone Manager to try to isolate a DMA:

The software will not tell you what valves to close to create a DMA, or where to install the meter. Using the Pressure Zone Manager, you can try different ways to isolate DMA's.

You would select the valve locations and the software will display the color coded DMA's, and provide statistics such as demand, minimum and maximum HGL, minimum and maximum ground elevation, minimum and maximum pressure, and the labels for the boundary elements, pipes, and nodes in the DMA. Go here for an example.

There is a support solution on the Pressure Zone Manager which includes a section on identifying DMA's.

Option 2 : If you have flow data that was collected at the entrance of the DMA, and upstream and downstream pressure at the PRV in the entrance of the DMA, you can follow this procedure:

  1. For the PRV, set the pressure as the Setting Type and enter the downstream pressure as the pressure setting. Make sure to enter the correct elevation. You can use a reservoir immediately upstream and the PRV will bring the HGL down based on that pressure setting.
  2. For the flow data, there are a few different ways to enter it, depending on your needs.
    1. You can take the flow that was measured at the entrance of the DMA and divide it by the number of nodes in the DMA. This is assuming you do not already have demands in the model. Open the Demand Control Center under Tools. Click the New button and choose to Initialize Demands for all Elements. Right-click the base demand column header, select Global Edit and enter the flow value result from dividing the measure flow by the number of nodes.
    2. To distribute demands proportionally to their service areas, the LoadBuilder tool can be used.
      1. You would need to create a single polygon shapefile covering the entire DMA with a flow attribute containing the flow measured at the DMA entrance.
      2. Establish the service area polygons representing each node. The easiest way to do this is to use the Thiessen Polygon tool under the Tools menu.
      3. Open LoadBuilder (Tools > LoadBuilder)
      4. Click the New button and select Proportional Distribution by Area under Area Load Data
      5. Select your service area (Thiessen Polygon) and select the single polygon shapefile as the Flow Boundary Layer
      6. For the "Flow Field", select the attribute containing the DMA entrance measured flow.
      7. LoadBuilder will then distribute that flow among all the nodes, proportional to their service area.
  3. If you have field data measurements from within the DMA and want to distribute the demands more accurately, you could use Darwin Calibrator.
    1. You would first need to follow the steps in #2.
    2. Then go to Analysis > Darwin Calibrator
    3. Enter all your field measurements.
    4. Enter demand adjustment groups. Darwin Calibrator will use a genetic algorithm to attempt to adjust the demands such that the results match your observed values (pressure, flow, etc.). Some demands may be reduced while others may be increased.

Option 3 : Simplifying Existing DMA's to a single junction:

If you already have built-out DMAs in your model but have a need to simplify them down to a single junction (representing the demand/inflow to that DMA), here are some options:

  1. Use Skelebrator (available in WaterGEMS) on each particular DMA to simplify down to a single junction (which may take several passes) which will automatically combine the base demands.
  2. Look at the flow in the entrance to the DMA, delete everything in the DMA downstream of it (using the downstream trace query if needed) and then assign that flow to a junction at the entrance location. Alternatively, you could make the DMA inactive instead of deleting them, if you need to preserve the "full" version in another scenario.

Video Demonstration

Create and manage pressure zones and DMA's in WaterCAD and WaterGEMS

See Also

Special Interest Group recording - "Creating District Metered Area for Water Auditing and Non-Revenue Water Control"

  • Created by
  • When:
  • Last revision by Bentley Colleague
  • When:
  • Revisions: 21
  • Comments: 0