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 - 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
- Main relative time by @stoiver in https://github.com/anuga-community/anuga_core/pull/29
- Main rate operator numpy input by @stoiver in https://github.com/anuga-community/anuga_core/pull/30
- Removed the old_div function calls by @stoiver in https://github.com/anuga-community/anuga_core/pull/31
- Develop hackathon by @rutvikgulhane in https://github.com/anuga-community/anuga_core/pull/43
- Added protect against infinities kernal by @rutvikgulhane in https://github.com/anuga-community/anuga_core/pull/49
- replacing deprecated unittest functionality for future python version by @JorgeG94 in https://github.com/anuga-community/anuga_core/pull/59
- anuga_int and anuga_uint datatype for simpler coding: PROPOSAL by @JorgeG94 in https://github.com/anuga-community/anuga_core/pull/66
- install_anuga.rst: Fix typo discovered by codespell by @cclauss in https://github.com/anuga-community/anuga_core/pull/69
- GitHub Actions: Upgrade to actions/setup-python@v5 by @cclauss in https://github.com/anuga-community/anuga_core/pull/68
- Keep GitHub Actions up to date with GitHub's Dependabot by @cclauss in https://github.com/anuga-community/anuga_core/pull/70
- Stop using removed alias
numpy.floatby @cclauss in https://github.com/anuga-community/anuga_core/pull/71 print()is a function in Python 3 by @cclauss in https://github.com/anuga-community/anuga_core/pull/72- Rename dependabot.yml to .github/dependabot.yml by @cclauss in https://github.com/anuga-community/anuga_core/pull/76
- port eval segment to C by @JorgeG94 in https://github.com/anuga-community/anuga_core/pull/78
- synch with main by @JorgeG94 in https://github.com/anuga-community/anuga_core/pull/79
- Update dependabot.yml by @stoiver in https://github.com/anuga-community/anuga_core/pull/83
New Contributors
- @rutvikgulhane made their first contribution in https://github.com/anuga-community/anuga_core/pull/43
- @JorgeG94 made their first contribution in https://github.com/anuga-community/anuga_core/pull/59
- @cclauss made their first contribution in https://github.com/anuga-community/anuga_core/pull/69
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