To main content


Software for static modeling and prediction of surface water and urban flooding based on analysis of topography/terrain.

Contact person

Picture of SWIM applied to an urban area from Oslo.
Example of the application of static modelerng with SWIM applied to a city area in Oslo.

Floods resulting from extreme weather, both nationally and internationally, cause significant damage to infrastructure, with large expected insurance payouts. The storm Hans in 2023 served as a reminder that Norway is not immune to the forces of nature. Future challenges with more extreme weather underscore the importance of flood protection and associated predictive simulators for flooding and stormwater, both from intense rainfall and floods.

What is SWIM?

SWIM consists of a collection of algorithms for identifying watershed boundaries and providing a better understanding of how water accumulates and moves through the landscape. This is valuable for various purposes, such as water resource management, flood modeling, and environmental planning.

Our algorithms originate from work on CO2 storage and are based on an assumption of infinitesimal flow. These so-called spill-point analyses were later modified to model flooding in urban areas in collaboration with the startup company Spacemaker (see popular science article in Norwegian). Similar approaches are also found in other commercial products. However, our algorithms have some unique functionality, such as simplified infiltration models (both permeable and impermeable surfaces) and the calculation of time series illustrating how water accumulates over time.

Spill-point analyses are highly computationally efficient compared to tools based on numerical simulation. This makes it easy to work interactively and test out various scenarios and measures. 

The software is currently not publicly available, but we plan to release it as open-source code during the first quarter of 2024. This will provide a flexible foundation for further development.

What about dynamic modelling?

A comprehensive analysis ideally requires a combination of static and dynamic tools that interact. In collaboration with the National Center for Computational Hydroscience and Engineering, Mississippi, we have previously developed a GPU simulator for dynamic modeling of floods and surface water based on shallow-water equations, see, for example, [1,2,3]. Currently, we are in the process of modernizing and re-implementing this simulator. The goal is to publish the new code, under the name SWAMP, and integrate it with SWIM by the end of 2024.


  • Static surface models
    • Calculation of catchment areas, waterways, and hierarchical networks of temporary streams.
    • Accumulation areas for water, topological network of ponds, and how they connect and merge together.
    • Permanent water volumes such as rivers, lakes, and seas.
  • Time series
    • Terrain response to precipitation events over time.
    • Routing of water as ponds overflow.
  • Terrain characteristics and infrastructure.
    • Takes into account buildings, obstacles, drainage, and measures.
    • Simplified infiltration model that supports both permeable and impermeable surfaces.

The software is written in the Julia programming language and is designed to rapidly process large terrain sections. 


System of lakes and rivers identified in the watershed analysis.

Capture areas for various accumulation areas in the terrain.


  1. AR Brodtkorb, ML Sætra, M Altinakar. Efficient shallow water simulations on GPUs: Implementation, visualization, verification, and validation. Computers & Fluids, 55, 1-12,  2012. DOI: 10.1016/j.compfluid.2011.10.012 
  2. ML Sætra, AR Brodtkorb, KA Lie.  Efficient GPU-implementation of adaptive mesh refinement for the shallow-water equations. Journal of Scientific Computing, 63, 23–48, 2015. DOI: 10.1007/s10915-014-9883-4
  3. ML Sætra. Shallow water simulation on graphics hardware. PhD thesis. University of Oslo, June 2014