ANUGA is a software implementation of a hydrodynamic model used for modelling the impact to communities from hydrological disasters such as tsunami, flooding, dam breaks and storm surge.
Name of project: ANUGA
Brief overview: ANUGA is a software implementation of a hydrodynamic model which is specifically designed to model wetting and drying processes. As such it is particularly suitable for modelling the impact to communities from hydrological disasters such as tsunami, flooding, dam breaks and storm surge.
ANUGA is written in Python with computationally intensive functions implemented in C. This approach ensures that ANUGA is reasonably fast while at the same time leveraging off the flexibility of the Python programming language.
ANUGA is a joint development project between Geoscience Australia (GA) and the Australian National University (ANU).
Standards used: NetCDF (a compact portable self-documenting file format suitable for storage of large numeric arrays). LaTeX documentation standards, PDF and HTML for web publishing (both automatically generated from the LaTeX source). They also strictly adhere to “Unit Testing” standards and the Python style guide PEP 8.
OSS technologies used:
Infrastructure: LaTeX for documentation, TRAC for project management, bug and feature tracking, Subversion for code control, Debian and Red Hat Linux distributions on the desktop and for clustering. OpenSceneGraph is used for for visualisation and interoperates with ANUGA.
Development: The languages Python and C as well as the plotting package MatPlotLib. ANUGA itself was released as open source in December 2006 on SourceForge. http://sourceforge.net/projects/anuga
OSS projects contributed to: Not actively contributing to other projects although contributions to ANUGA from the community are emerging rapidly.
Implementors (internal, external): Internal and in collaboration with ANU.
Rationale of Open Source technologies used:
Ole Nielsen from GeoScience Australia says the OSS tools have proven to be the best for this job. Python as a language makes the development process much faster than any other language he has encountered due to its clear syntax, efficient memory management and high level operations. The fact that it links with C seamlessly ensures computational efficiency can be maintained.
He also says OSS ensures longevity of the software and research, which is why it is so important to e-research and e-science projects. OSS also lets you leverage the best technology from many alternatives. Buying technology means a long and costly process to determine the best tool for the job which then still may not have the flexibility and configurability of an OSS alternative. Moreover, the open source release has shown a range of applications of ANUGA in the area of urban flood modelling that weren't planned initially. These are being pursued in collaboration with domain specialists.
Date of case study: Ongoing
Name of institute: GeoScience Australia and Australian National University.
Contact person: Ole Nielsen
Contact details: Ole dot Nielsen at ga dot gov dot au
URLs (project and institute): Details of the project are available at