Difference between revisions of "EPANET-Python"

From assela Pathirana
Jump to navigationJump to search
 
(13 intermediate revisions by the same user not shown)
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 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!  
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 and useful things from the very beginning of the study. 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:
Line 6: Line 6:
==Download==  
==Download==  


* Test program with graphics using Matplotlib [[file:swig_python_epanet_toolkit.zip]]
* Test program with graphics using Matplotlib [[media:swig_python_epanet_toolkit.zip|swig_python_epanet_toolkit.zip]]
* Test program without graphics: [[file:swig_python_epanet_toolkit_pyplot.zip]]
<!---/** Test program without graphics: [[media:swig_python_epanet_toolkit_pyplot.zip|swig_python_epanet_toolkit_pyplot.zip]] */-->


==How to use==
==How to use==
===Linux===
===Linux===
* Make sure python2.7 python2.7-dev, numpy and matplotlib are installed
Just use
* Extract [[file:swig_python_epanet_toolkit_pyplot.zip]] and go to epanetools directory and run the following command.
pip install epanettools
<pre>
or download from http://pypi.python.org/pypi/EPANETTOOLS
python setup.py build install  
and run as root
</pre>
[sudo] python setup.py install


===OS-X===
===OS-X===
Should work similar to Linux, but I don't have a Mac to test on :-)
Should work similar to Linux, but I don't have a Mac to test on :-)
===Windows===
===Windows===
* Install a python stack with numpy and matplotlib.  
* Install a python stack with numpy and matplotlib.  
** Can use: Python 2.7 [http://www.python.org/getit/], numpy [http://sourceforge.net/projects/numpy/files/NumPy/1.6.1/] and Matplotlib [http://sourceforge.net/projects/matplotlib/files/matplotlib/matplotlib-1.1.0/]
** Can use: Python 2.7 [http://www.python.org/getit/], numpy [http://sourceforge.net/projects/numpy/files/NumPy/1.6.1/] and Matplotlib [http://sourceforge.net/projects/matplotlib/files/matplotlib/matplotlib-1.1.0/]
* use the epanettools/dist/epanettools-0.1.win32-py2.7.msi file to install.
* Download the windows installer from http://pypi.python.org/pypi/EPANETTOOLS and run.


==Testing==
==Testing==
* go to netbeans/EPANET/src and run the epanet.py
* go to examples.
 
==Hosted At==
* http://pypi.python.org/pypi/EPANETTOOLS
* Repository: http://code.google.com/p/epanettools/
 
==See Also==
* EPANET-Emitter [[EPANET]]
[[category:Computing]][[category:Unix]][[Category:Hydrology-Meteorology]]

Latest revision as of 23:31, 7 January 2013

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 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 and useful things from the very beginning of the study. 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

How to use

Linux

Just use

pip install epanettools

or download from http://pypi.python.org/pypi/EPANETTOOLS and run as root

[sudo] python setup.py install

OS-X

Should work similar to Linux, but I don't have a Mac to test on :-)

Windows

Testing

  • go to examples.

Hosted At

See Also