| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| ANUGA 3.3.1 source code.tar.gz | 2026-03-30 | 36.6 MB | |
| ANUGA 3.3.1 source code.zip | 2026-03-30 | 37.3 MB | |
| README.md | 2026-03-30 | 3.7 kB | |
| Totals: 3 Items | 73.9 MB | 0 | |
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.