Welcome to FLUXOS Documentation

FLUXOS is a high-performance, physics-based hydrodynamic and solute transport model designed for basin-scale environmental simulations. It solves the 2-D shallow water equations on either a regular Cartesian mesh or an unstructured triangular mesh, with optional advection–dispersion solute transport and soil-infiltration loss.

Key Features

  • 2D Shallow Water Equations — Roe’s approximate Riemann solver with MUSCL reconstruction

  • Unstructured Triangular Mesh — edge-based finite volume solver with rotated Roe/HLL flux, MUSCL + Barth–Jespersen limiter, and hydrostatic reconstruction

  • Solute Transport — advection–dispersion–reaction equation for contaminant tracking

  • Adaptive Time Stepping — CFL-based automatic time-step control

  • CUDA GPU Acceleration — full GPU offloading for both regular and triangular mesh solvers

  • Parallel Computing — hybrid MPI+OpenMP for HPC clusters

  • Wetting/Drying — robust handling of dynamic wet/dry fronts

  • Template-driven preprocessing — one editable Python template produces the DEM (.asc), Gmsh mesh (.msh), and modset.json in a single run, plus an HTML configuration report (supporting_scripts/1_Model_Config/)

  • Template-driven post-processing — a second template streams simulation output into an HTML flood-statistics report (time-series, max-inundation map, ARR-2019 hazard, depth histogram); the same folder hosts fluxos_viewer.py for KML / WebGL / MP4 exports (supporting_scripts/2_Read_Outputs/)

  • Containers — ships Docker and Apptainer recipes so newcomers and HPC users can skip system-level dependency wrangling

Directory layout

Path

Purpose

src/fluxos/

C++ solver (regular + triangular mesh paths)

containers/

Dockerfile + Apptainer recipes

Working_example/

Canonical inputs (DEMs, meshes, forcing, modset JSONs)

bin/

Compiled binary lands here (git-ignored except README.md)

Results/

Simulation outputs (git-ignored)

supporting_scripts/1_Model_Config/

Python template for preprocessing + HTML config report

supporting_scripts/2_Read_Outputs/

Python template for post-processing + HTML results report, plus fluxos_viewer.py

in_a_nutshell/

Interactive HTML slide decks (overview, compile & run, supporting scripts)

wikipage/source/

This Sphinx documentation

Contents

Indices and tables