Python Library TUFLOW Results: Difference between revisions
Content deleted Content added
Ellis Symons (talk | contribs) |
No edit summary |
||
Line 1:
[[File:TUPython.png | 435px]]
=Introduction=
For the 2016 version of TUFLOW a new output format for time-series was made available, this has the following changes from previous versions:
Line 10 ⟶ 9:
This is the default approach for the 2016 version but can be modified with the TUFLOW command "<tt>Output Approach == Pre 2016</tt>" (refer to the manual for more information on this command.<br>
To make this data easier to work with an open source python library has been created and made available. This allows the user to load results and then interact with these. This library does not have any plotting functionality directly, with the returns typically being arrays (e.g. time and flows) however, the examples below give some examples using common plotting libraries such as matplotlib.<br>
=Getting the TUFLOW results python library=
You can find the TUFLOW_results.py (previously TUFLOW_Results2016.py) on our GitHub repository, QGIS plugin repository, or if you have QGIS and the TUFLOW plugin installed, you will already have it on your computer.
GitHub: [https://github.com/TUFLOW-Support/QGIS-TUFLOW-Plugin https://github.com/TUFLOW-Support/QGIS-TUFLOW-Plugin]<br>
QGIS plugin repo: [https://plugins.qgis.org/plugins/tuflow/ https://plugins.qgis.org/plugins/tuflow/]<br>
If you have QGIS2 already: C:\Users\<User Name>\.qgis2\python\plugins\tuflow<br>
The TUFLOW python library does not need to be installed in python (through pip or otherwise) like other common modules, the TUFLOW_results.py file just needs to be in the same location as your python project.
Note it shouldn’t matter if you’re using python 2 or python 3.
=Dependencies=
The TUFLOW results library calls a number of python
* csv
* numpy
* os
* sys
Of these the csv, os and sys functionality should be available directly with the python install. Depending on the method used to install python, numpy may need to be installed. If installation of numpy is required, please refer to the numpy documentation [http://www.numpy.org/ http://www.numpy.org/].
=Compatible Python Versions=
The functionality has been developed for Python 2.7, but should be compatible with Python 3.5. Other versions of python are currently untested.
Line 24 ⟶ 32:
==Import==
This library is imported with the typical python syntax.<br>
<pre>import
==Initialise Results (ResData)==
The results data functionality has a class defined, this is named '''ResData'''. An instance of the results can be initialised with the following syntax:
<pre>res =
==Defined Methods (Functions)==
The following are the defined '''functions''' in the results data class (ResData).
Line 45 ⟶ 53:
<li>Domain - The domain to return the results for, this will be one of '''1D''', '''2D''' or '''RL''' (for reporting location data)</li>
<li>Results Type - The results type to be returned. This includes H (level), Q (flow), V (velocity), E (energy), QA (flow area) depending on the data types that have been output!</li>
<li>Geometry - The GIS geometry of the object, '''L''' for line, or '''P''' for point. If unsure or unknown this can be set to a
The return arguments are:
<li>found (logical) - Returns True if the data has been found, False if the data can not be found or an error has occurred.</li>
Line 152 ⟶ 160:
import sys #system functions
import matplotlib.pyplot as plt
import
# initialise the results class
res =
# Load the data and terminate if error returned
Line 318 ⟶ 326:
This will create a figure that looks like the above.<br>
=Other Versions=
An older version of the library that is compatible with results from the 2013 version of TUFLOW (this is limited to the 1D results) is also available. This is currently undocumented, however, if you would like this please contact support@tuflow.com.
|