This project is merged into SUEWS.
SUEWS that speaks Python
SuPy requires 64-bit python 3.7+ and can be installed with pip in command line prompt:
python3 -m pip install supy --upgradeOnce installed, supy can be quickly started to get SUEWS simulations done:
import supy as sp
import matplotlib.pyplot as plt
#load sample data
df_state_init, df_forcing = sp.load_SampleData()
grid = df_state_init.index[0]
#run supy/SUEWS simulation
df_output, df_state_end = sp.run_supy(df_forcing, df_state_init)
#plot results and save figure
res_plot = df_output.SUEWS.loc[grid, ['QN', 'QF', 'QS', 'QE', 'QH']]
ax=res_plot.loc['2012 6 4':'2012 6 6'].resample('30T').mean().plot()
plt.show()
ax.figure.savefig('sample_plot.png')The above code will produce a plot of surface energy balance components as follows:
Please check out more SuPy tutorials here!
The development version supy includes both the supy wrapper and its kernel supy-driver - the calculation kernel written in Fortran.
All below is supposed to be in a directory named supy-dev - which however you can change.
- Get both the source code of SUEWS and SuPy
the development version of SuPy.
# get the source code of SUEWS and SuPy
git clone --recurse-submodules git@github.com:UMEP-dev/SUEWS.git
git clone git@github.com:UMEP-dev/SuPy.git
- Set up the conda environment
conda env create -f SuPy/env.yml
conda activate supy
- Install the dev version of SuPy
pip install -e SuPy/src
- Compile the kernel
supy-driver
cd SUEWS/supy-driver
make dev
Here you can check if supy-driver is installed correctly:
pip show supy-drivernote the location field in the output, which should point to the local supy-driver directory.
Note: after installing the development version of supy-driver, you might get the warning about incompatibility, which you can ignore and carry on. However, in case of any issue, please report it here.
- Check the version info of installed supy
pip show supynote the location field in the output, which should point to the local supy directory.
