Download Latest Version v3.3.2 source code.tar.gz (36.6 MB)
Email in envelope

Get an email when there's a new version of ANUGA - Hydrodynamic Modeling

Home / 3.3.0
Name Modified Size InfoDownloads / Week
Parent folder
ANUGA 3.3.0 source code.tar.gz 2026-03-30 36.6 MB
ANUGA 3.3.0 source code.zip 2026-03-30 37.3 MB
README.md 2026-03-30 3.9 kB
Totals: 3 Items   73.9 MB 0

ANUGA 3.3.0 Release Notes

New Features

Parallel mesh distribution improvements

  • Added distribute_collaborative(): a new MPI-collaborative domain distribution function that uses shared memory windows to significantly reduce peak memory usage during decomposition. Exported in the public API as anuga.distribute_collaborative.
  • New BasicMesh class and distribute_mesh() workflow enabling a "mesh-first" parallel pattern — build the mesh once then distribute, without writing intermediate files.
  • New rectangular_basic_mesh and rectangular_cross_basic_mesh factory functions and create_basic_mesh_from_regions().
  • Added distribute_basic_mesh with full tests and examples.
  • Performance: replaced pickle-based isend with zero-copy buffer-protocol Isend; vectorised submesh_quantities ghost triangle extraction; eliminated O(P×|boundary|) quadratic loop in submesh_full(); Cythonised ghost_layer() and ghost_bnd_layer().
  • Added MPI shared-memory optimisation with graceful fallback when Win.Allocate_shared is unavailable.

TOML/Excel scenario runner

  • New anuga.scenario package and anuga_run_toml script for running simulations from TOML or Excel configuration files.
  • Support for omp_num_threads, multiprocessor_mode, outputstep in TOML config.
  • Replaced xlrd with openpyxl for Excel import.
  • Tees timestepping statistics to both terminal and log file.

Coordinate reference system (CRS/EPSG) support

  • Geo_reference class now carries an EPSG code and is_located() flag.
  • Support for non-UTM national grids via pyproj.
  • sww_merge now correctly preserves hemisphere, EPSG, and timezone in merged output.

SWW → VTU/PVD converter

  • New anuga/file_conversion/sww2vtu.py: converts SWW files to ParaView-compatible VTU+PVD format (no VTK dependency, binary base64 encoding, derived depth/speed quantities, z-scale and absolute-coordinates options).

Mesh pipeline improvements

  • Domain() now accepts Pmesh objects directly (no intermediate mesh file required).
  • create_domain_from_regions() no longer needs a mesh_filename argument.
  • create_mesh_from_regions renamed to create_pmesh_from_regions (old name deprecated).

Documentation

  • NumPy-style docstrings added throughout.
  • New Sphinx pages: CRS/EPSG support, parallel MPI usage, visualisation guide, boundary conditions, domain setup script.
  • Added VERSIONING.md describing the git-tag-based version scheme.

Dependency changes

  • Removed: osgeo / GDAL — replaced throughout by rasterio, fiona, and shapely.
  • All conda environment files updated accordingly.
  • pyproj, affine, rasterio, fiona, shapely are now the standard optional [data] dependencies.

Bug fixes and code quality

  • Fixed Set_stage_operator physics bug and related operator issues.
  • Fixed bare except: clauses in ~500 locations (production code, tests, and import guards).
  • Fixed TypeError when quantity_names=None in timefile2netcdf.
  • Fixed meshpy RuntimeError when point/element attributes are empty.
  • Fixed GUI mesh generation (anuga_pmesh_gui): snake_case method names, correct _generateMesh_impl call.
  • Fixed mesh_filename kwarg being clobbered in Generic_Domain.init.
  • Added named constants for multiprocessor_mode and low_froude flags.
  • sww_merge updated to preserve metadata correctly.
  • --run-fast pytest option to skip slow (MPI/parallel) tests for quick feedback.
  • CI: replaced osgeo in all test import guards; fixed sys.path ordering so installed package takes precedence over source tree.

CI / packaging

  • GitHub Actions updated to use conda-forge compilers with OpenMP on all platforms.
  • Windows CI uses standard compilers package (covers OpenMP).
  • Python 3.14 added to CI matrix and classifiers.
  • actions/checkout bumped to v6, fetch-depth: 0 for correct git-tag versioning.
Source: README.md, updated 2026-03-30