What's New in ANUGA v1.2
Here are some new features from the upcoming release:
Faster Fitting
Fitting and interpolation code has been sped up by 20-35% in typical scenarios:
Version | Cairns demo fitting (seconds) | sww2dem benchmark (seconds) |
ANUGA v1.1 | 1868.22 | 67 |
ANUGA v1.2 | 1527.19 | 49 |
Increase % | +22% | +37% |
Tested on Intel Atom netbook, 1.6GHz, 2Gb RAM.
This speedup affects operations such as: DEM exports, adding quantities, and gauges.
Easy Imports
Instead of typing this at the start of every scenario:
from anuga.shallow_water.boundaries import Reflective_boundary,\ Transmissive_momentum_set_stage_boundary,\ Dirichlet_discharge_boundary,\ ... # Shallow water domain is the standard from anuga.shallow_water.shallow_water_domain import Domain
You can automatically import the public ANUGA interface using this single line:
import anuga
Then you must reference the ANUGA API using the anuga. prefix:
domain = anuga.Domain(...) boundary = anuga.Reflective_boundary()
See the documentation for the list of functions and classes that are made available for import from the public API.
Standardised File Conversion
File conversion routines take the form "filetypein2filetypeout('filein.ext', 'fileout.ext')", ie sww2dem('northbeach.sww', 'outfile.dem').
If a conversion function imports or exports multiple files, pass the stem of the filename, without an extension.
Internal Boundaries and Breaklines
The create_domain_from_regions function has been upgraded with the ability to specify breaklines and internal boundaries. Breaklines let you force the generated mesh to be split along specific lines, such as a river bed or road. This lets you get a clean edge to your geometry.
More on internal boundaries can be found here: InternalBoundaries
Deprecated Functionality Removed in ANUGA v1.2
Some old functionality has been removed from ANUGA in version 1.2. Please contact the ANUGA team if you have any issues migrating your code to the new version.
interface.py | This has been removed: now you should use "import anuga" instead. |
start_screen_catcher | This class was not being used, and the effect can easily be reproduced through the OS using > and 2> piping. |
copy_code_files | Moved from abstract_2d_finite_volumes.util to utilities.file_utils as it was a generic function |
csv2dict | Renamed to load_csv_as_dict: foo2bar is used for file-to-file conversions. |
asc_csiro2sww | Renamed to esri2sww. |
hecras_cross_sections2pts | renamed to sdf2pts. |
data_manager_joaquims_patch | old, redundant code that was not being used anywhere - has been removed. |
sww2domain | Renamed to load_sww_as_domain to fit in with new naming convention. |
urs_ungridded2sww | Renamed to urs2sww to fit in with new naming convention. |
mux2sww_time | Renamed to read_sww_time_from_mux to fit in with new naming convention. |
Write_sts | Moved to file module. |
get_data_from_file | Removed: use the new, more powerful csv_file.load_csv_as_matrix function. |
get_timeseries | Obsolete function - has been deprecated in 1.2. Please use sww2timeseries or other function. |
check_sww_tsh.py | Removed obsolete utility that had gone out of date years ago, not used anywhere. |
obsolete_code and houdini_code | Unreferenced and obsolete code not touched for +18 months. Houdini is a file format and viewer unrelated to ANUGA. |
URS_points_needed_to_file | Renamed to save_boundary_as_urs - now found in anuga.file.urs |
URS_points_needed | Renamed to more descriptive name of calculate_boundary_points. |
get_flow_through_cross_section | Moved to separate module, anuga.shallow_water.sww_interrogate |
get_energy_through_cross_section | Moved to separate module, anuga.shallow_water.sww_interrogate |
get_interpolated_quantities_at_polyline_midpoints | Moved to separate module, anuga.shallow_water.sww_interrogate |
store_parameters | Moved to anuga.file.csv_file. |
decimate_dem | Renamed to anuga.file_conversion.dem2dem. |
export_grid | Renamed to sww2dem_batch and moved to sww2dem module. |
points2polygon | Renamed to load_pts_as_polygon, moved to anuga.file.pts |
data_manager | This was a huge module that has been divided up. It has been completely removed. Find file loading and conversion functions in anuga.file and anuga.file_conversion. |
Polygon_function | now has its own module in anuga.geometry.polygon_function. |
TreeNode? | Base class removed - nothing was using it. |