Get the Code

The water research community has a strong tradition of developing and using open source software. One important example is EPANET, the U.S. Environmental Protection Agency’s program that simulates water movement and quality behavior within pressurized pipe water distribution networks.

The EPANET package is widely used, and several methods are available to interact with network data, including commercial and freely available graphical interfaces, geographic information systems, and the EPANET programmer’s toolkit.

Another approach, which we’ve taken with epanetReader, is to use a technical computing platform such as the R environment to visualize and analyze simulation data. R is a well-known, freely available open source software environment for statistical computing and graphics

epanetReader is an add-on package for reading EPANET .inp and .rpt formatted files into R. Basic summary information and plotting capability for the data contained in the input and report files is provided so that three lines of executable code are needed to:

  1. Read a network file
  2. See the number of each type of element
  3. View a map of the network

Once information from EPANET exists within R, other add-on packages for graphics and animation can be used to interpret and visualize simulation results.

Why should I contribute?

You’ll become part of a global community of developers looking to improve the presentation and interpretation of water network information. In addition, you’ll be able to polish your skills on a package that uses R’s simplest object model and pure R code.

What technology problem will I help solve?

epanetReader reads .inp and .rpt files, but you could implement support for another file type or section for your own project (and possibly many other users as well).

How will epanetReader help my business?

epanetReader makes it easy to bring EPANET data into the R environment, which is widely used for statistics and other data analytics due to its large variety of analytical capabilities, ease of creating new extensions, and activity of the R community. R’s specificity and abstraction from lower level languages such as C and Java should greatly increase productivity of water analysts and data scientists.