The case study presents the implementation of the QGIS FLO-2D Plugin project (5 minute read)
FLO-2D is one of the most widely used commercially available flood models. FLO-2D is capable of simulating urban flooding in high resolution including storm drain systems.
In 2016 the FLO-2D team invited us to develop a set of tools for optimising the flood model build process in QGIS. The resulting plugin allows hydraulic models to be built quickly by leveraging the wide range of tools available in the QGIS ecosystem.
The plugin can be downloaded by following the guidance in the plugin documentation
As the use of open source GIS grows within the water engineering sector, Lutra Consulting develops and maintains MDAL which makes the visualisation and post-processing of time-varying numerical model results possible in QGIS.
Contact us at firstname.lastname@example.org if you’d like to discuss the benefits of integrating your flood modelling software more tightly with QGIS.
Overview of Previous GUI tools: FLO-2D GDS
FLO-2D’s focus on urban modeling requires large datasets that may include several million grid cells. Each cell has between 4 and 10 attributes so datasets can often be in the range of several gigabytes.
Previously, Grid Developer System (GDS) was used to pre-process the spatial data used by FLO-2D. Being a 32-bit application, the GDS was only able to load up to 4 gigabytes of data and its programming framework was also no longer maintained by Microsoft. Modellers could only be built on Windows PCs.
All development and maintenance of the GDS was carried out by the FLO-2D team.
Behind the Implementation
Guiding principles behind the new QGIS Flo-2D plugin
We assessed the tools used at the time and in close collaboration with the FLO-2D team, optimised the workflow from the users’ point of view with emphasis on speed and simplicity.
To keep things simple for the users, we aimed to provide a level of abstraction so users would no longer need to be involved with the internal structure of FLO-2D solver input files. They could instead focus on real-world aspects affecting their models.
Together with the FLO-2D team we designed a solution that was based on 3 core ideas:
Modellers will use native QGIS tools and point/line/polygon layers to define real-world objects (e.g. domain, boundary conditions, levees, …)
These real-world objects will be converted automatically into the data structures required by the FLO-2D solver (although expert users can still modify these data structures if they so wish).
Additional productivity tools will be provided to allow users to speed-up time consuming tasks
Features of the plugin
Some of the key features of the solution are listed here:
Easy creation and handling of new models (all model data sits in a single GeoPackage file)
User friendly and intuitive digitizing and manipulation of model components (through simple GIS layers and dedicated tools) including:
Boundary and initial conditions
1D channels and cross-sections
Various options for obtaining grid data such as elevation, roughness, reduction factors etc. from different sources (raster layers, external vector layers etc.)
Plotting profiles and editing time series data
Automated tools for schematizing input layers into the GDS format
Importing basic data from HEC-RAS models
Import / export functionality between GeoPackage and GDS format (*.DAT files)
Running external FLO-2D tools (FLO-2D Pro engine etc.) directly from QGIS
Benefits for the FLO-2D developers:
Benefits for the developers of FLO-2D include:
Reduced development and maintenance costs, since much of the heavy lifting of the FLO-2D plugin is done by QGIS itself
By being part of the QGIS ecosystem, gaining opportunities to approach QGIS users in the flood risk industry to use FLO-2D software
The FLO-2D plugin is developed on GitHub, allowing the latest development technologies such as continuous integration, automatic testing and issue tracking to be used
Ability to solve upstream bugs in QGIS or MDAL due to the open-source nature of the projects
Benefits for FLO-2D users:
Some of the benefits realised by FLO-2D customers include:
Being able to work with their FLO-2D models using open source GIS on all major operating systems
A full GIS application to support their data pre-processing
Logical and intuitive workflows
FLO-2D results can now be visualised and post-processed natively in QGIS via mesh layer
Ability to use all native QGIS support and development channels in addition to FLO-2D support
Integration of internal workflows with powerful native QGIS features including projection support, GDAL/OGR integrations, background maps support (e.g. vector tiles), printed flood maps, etc.
Ability analyze results via QGIS’ Crayfish plugin and produce graphs and outputs