Should the EPANET solver and the WaterGEMS/CAD solver give the same results for a model?

Applies To 
Product(s): WaterGEMS, HAMMER, WaterCAD
Version(s): CONNECT Edition, V8i
Area:  Modeling
Original Author: Mark Pachlhofer, Bentley Technical Support Group


Should the EPANET solver 2.00.12 (2.00.10) and the WaterGEMS/CAD solver 2.00.12 (2.00.10) give the same results for a model? Which solver is more accurate?


The WaterGEMS and WaterCAD’s default numerical solver has many improvements above and beyond the core EPANET solver used to calculate hydraulics. Therefore, small differences in results are expected when comparing WaterGEMS or WaterCAD results to results in the EPANET program. To assist in cases where a user may want to solve hydraulics without these improvements, the “Engine Compatibility” calculation option can be used. For example, if you’re comparing results from the 2.00.12 version of the EPANET program, you would select EPANET 2.00.12 in the Engine Compatibility from the dropdown for the engine compatibility option. This will allow WaterGEMS or WaterCAD to solve the hydraulics with the same solver used in the EPANET 2.00.12 program itself.

By default, the Engine Compatibility mode will be set to “WaterGEMS 2.00.12” for new projects, which contains the aforementioned improvements beyond the base EPANET 2.0.12 numerical solver. The details of these improvements are outlined in the Help Topic “Engine Compatibility Calculation Option” that comes with the WaterGEMS and WaterCAD software. When importing an EPANET INP file, however, the Engine Compatibility will be set to EPANET 2.012, for best compatibility.

Also, note that when comparing a particular timestep during an EPS, results could be even more sensitive to the calculation option. For example, if you have an unstable valve or control arrangement, the small differences in the solvers might result in a control or valve status change happening at a slightly different timestep. So large result differences for a given timestep between the two solvers could simply be due to a small delay in element status change, such as a pump being on in one case and off in the other. The status may switch back in the very next timestep, so the overall big picture results may need to be considered instead of just a single timestep, especially in models with problematic or sensitive controls, pumps or valves.

In short, if you’re looking to get results comparable to the EPANET program, be sure to set the Engine Compatibility mode to EPANET.

Saying which results are more or less accurate is nearly impossible to determine. The solvers used are slightly different and those slight differences can cause slightly different results to occur as you've seen. The model is not going to give you perfectly matching results to what you're seeing in the field no matter what solver you use, but either solver should be within some acceptable margin of error that is accurate enough to use it for predictions of what will happen given a certain change or given condition in your system. The output is really only as good as the input though, so if you have bad data your results are going to reflect that. Also, keep in mind that all the solvers are based on mathematical algorithms that have long been used to solve network hydraulics, so they are probably all going to give similar results. The only way you can truly know the accuracy of your model is when you have it calibrated against your field data and measure the error of deviation based on that. It really comes down to, which solver that you're comfortable using or that your client would like to use, and that is why we offer both solvers with the WaterGEMS/WaterCAD/HAMMER software. 

For details on specific enhancements in the Bentley Enhanced versions of the EPANET solver, see: Engine Compatibility Mode and related Calculation options

WaterCAD/WaterGEMS vs. the EPANET Application

When exporting a model to EPANET via File > Export > EPANET, note the following:

  • There are some elements in WaterGEMS/WaterCAD that are not supported in EPANET. See this article: What are the limitations of importing/exporting an EPANET file?
  • If you have duplicate labels in the WaterGEMS/WaterCAD model, be sure to choose the ID option and NOT the Label option when prompted during export. EPANET does not support duplicate labels so the model will not be exported correctly if you do have duplicate labels and you choose to export labels when exporting to EPANET.
  • Be sure to use a matching version of EPANET. For example if a WaterCAD model's calculation options are set to use the EPANET 2.00.12 solver version, be sure to compare the exported INP file to the same 2.00.12 version of the EPANET application itself.

See Also

What are the limitations of importing/exporting an EPANET file?

What are the difference between WaterGEMS/CAD and EPANET?