Difference between revisions of "EPANET-Python"
Line 1: | Line 1: | ||
[[file:QT4Agg_Epanet_pressure.png|700px|right|thumb|EPANET-Python can combine EPANET tools with sophisticated Python capabilities like this Matplotlib graph]] | [[file:QT4Agg_Epanet_pressure.png|700px|right|thumb|EPANET-Python can combine EPANET tools with sophisticated Python capabilities like this Matplotlib graph]] | ||
When I started teaching programming for water professionals at UNESCO-IHE, I was compelled to use C/C++ as the language. This is due to the fact that | When I started teaching programming for water professionals at UNESCO-IHE, I was compelled to use C/C++ as the language. This is due to the fact that EPANET2.0 and EPA-SWMM5.0 (Two main programes, students in my department had to learn) were written in C language. However, C/C++ is a horrible first language. Students have to cover at least three days of learning of arcane syntax and rules before they begin to write some semi-useful code. On the other hand, if I could conduct the classes in Python, they will see the `light' within a few hours! They can start doing interesting things at the onset of learning itself. What a way to stimulate learning! | ||
I wanted to make it possible to call EPANET2 and EPA-SWMM5.0 procedures from python. Following is the first attempt: | I wanted to make it possible to call EPANET2 and EPA-SWMM5.0 procedures from python. Following is the first attempt: |
Revision as of 18:29, 5 April 2012
When I started teaching programming for water professionals at UNESCO-IHE, I was compelled to use C/C++ as the language. This is due to the fact that EPANET2.0 and EPA-SWMM5.0 (Two main programes, students in my department had to learn) were written in C language. However, C/C++ is a horrible first language. Students have to cover at least three days of learning of arcane syntax and rules before they begin to write some semi-useful code. On the other hand, if I could conduct the classes in Python, they will see the `light' within a few hours! They can start doing interesting things at the onset of learning itself. What a way to stimulate learning!
I wanted to make it possible to call EPANET2 and EPA-SWMM5.0 procedures from python. Following is the first attempt:
Download
- Test program with graphics using Matplotlib File:Swig python epanet toolkit.zip
- Test program without graphics: File:Swig python epanet toolkit pyplot.zip
How to use
Linux
- Make sure python2.7 python2.7-dev, numpy and matplotlib are installed
- Extract File:Swig python epanet toolkit pyplot.zip and go to epanetools directory and run the following command.
python setup.py build install
OS-X
Should work similar to Linux, but I don't have a Mac to test on :-)
Windows
- Install a python stack with numpy and matplotlib
- use the epanettools/dist/epanettools-0.1.win32-py2.7.msi file to install.
Testing
- go to netbeans/EPANET/src and run the epanet.py