I already wrote a few posts about calling EPANET from Matlab but this question keeps returning. Currently these are two leading Matlab classes\wrappers for calling EPANET:
- EPANET Matlab Class by Marios Kyriakou and Demetrios Eliades from KIOS research center – “The EPANET-Matlab Class is an open-source software which operates within the Matlab environment, for providing a programming interface for the latest version of EPANET, a hydraulic and quality modeling software created by the US EPA, with Matlab, a high-level technical computing software. The goal of the Matlab Class is to serve as a common programming framework for research and development in the growing field of smart water networks. The EPANET-Matlab Class features easy to use commands/wrappers for viewing, modifying, simulating and plotting results produced by the EPANET libraries.” This class is distributed under the European Union Public Licence (EUPL).
- EPANET Matlab by Jim Uber and Sam Hatchett – “This product consists of a set of Matlab wrappers that allow use of the EPANET and EPANET-MSX programmer’s toolkit APIs from within the Matlab environment. The Matlab functions share names with the C-language API functions. Usage of the Matlab functions is similar; the argument lists are identical, with the exception that Matlab separates input and output arguments. User’s of the EPANET or EPANET-MSX APIs with Matlab programming experience should be able to make efficient use of this product. In addition to the Matlab API wrappers, this product includes a small number of utility routines that, for example, allow for plotting of the network using Matlab graphics.” This code is distributed under Unlicense.