Recent Releases of ANUGA

ANUGA - ANUGA 3.3.1

ANUGA 3.3.1 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.

Climate Change - Natural Hazard and Storms - Python
Published by stoiver 2 months ago

ANUGA - ANUGA 3.3.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.

Climate Change - Natural Hazard and Storms - Python
Published by stoiver 2 months ago

ANUGA - v3.3.2

Just an update to the required packages.

Climate Change - Natural Hazard and Storms - Python
Published by stoiver 2 months ago

ANUGA - Version 3.2.0

Release which uses openmp (in addition to MPI) to obtain speedup on multi core processors.

Also new additions to the Rate_operator which now takes an xarray as a rate.

What's Changed

New Contributors

Full Changelog: https://github.com/anuga-community/anuga_core/compare/3.1.9...3.2.0

Climate Change - Natural Hazard and Storms - Python
Published by stoiver 8 months ago

ANUGA - Version 3.1.9

Small update needed to allow the creation of an anuga conda-forge package.

Climate Change - Natural Hazard and Storms - Python
Published by stoiver 8 months ago

ANUGA - Version 3.1

We have move over to using meshpy as a wrapper for the triangle mesh generator. This wrapper is available on conda-forge and so we should be able to create a conda-forge package for anuga.

Climate Change - Natural Hazard and Storms - Python
Published by stoiver about 4 years ago

ANUGA - Version 3.1.1

Match release to pypi version

Climate Change - Natural Hazard and Storms - Python
Published by stoiver about 4 years ago

ANUGA - Version 3.1.3

Improvements to the pip install

Climate Change - Natural Hazard and Storms - Python
Published by stoiver about 4 years ago

ANUGA - Version 3.0

The release of the python 3.X version of ANUGA.

If you need the latest version of the python 2.7 version of ANUGA, download the anuga_py2 branch from the GA anuga_core github repository

Climate Change - Natural Hazard and Storms - Python
Published by stoiver over 4 years ago

ANUGA - Version 2.1

Essentially the last version of the python 2.7 version of ANUGA.

Climate Change - Natural Hazard and Storms - Python
Published by stoiver almost 6 years ago

ANUGA - Version 2.0.3

Small version update with many small changes.

Climate Change - Natural Hazard and Storms - Python
Published by stoiver about 7 years ago

ANUGA - Version 2.0.2

Added updated version number into code. Only change from version 2.0.1

Climate Change - Natural Hazard and Storms - Python
Published by stoiver about 9 years ago

ANUGA - Version 2.0.1

Combination of numerous enhancements and bug fixes. Before a push to version 2.1

Climate Change - Natural Hazard and Storms - Python
Published by stoiver about 9 years ago

ANUGA - Version 2.0 using the DE0 algorithm

This is a major release where we move from the 1_5 flow algorithm used in anuga version 1.3 to the DE0 algorithm.

The new algorithm permits discontinuous bed, which in turn allows for riverwalls and fences to be used, where flow over these structures are controlled by the weir equations.

If you need to use the old algorithm, add the command:

domain.set_flow_algorithm('1_5')

If you need more accuracy, you can use the second order in time flow algorithm DE1, set via:

domain.set_flow_algorithm('DE1')

Climate Change - Natural Hazard and Storms - Python
Published by stoiver about 11 years ago

ANUGA -

Updated manual and added validations_report to doc directory. Shows anuga applied to a range of problems

Climate Change - Natural Hazard and Storms - Python
Published by stoiver about 11 years ago

ANUGA -

Release with old anuga_core/source/structure

Climate Change - Natural Hazard and Storms - Python
Published by stoiver about 11 years ago

ANUGA -

Released version after major change of directory structure.

Climate Change - Natural Hazard and Storms - Python
Published by stoiver about 11 years ago

ANUGA -

Just moved to GeoscienceAustralia/anuga_core so produced a release.

Climate Change - Natural Hazard and Storms - Python
Published by stoiver about 11 years ago