dycove.sim.engines.ANUGA_hydro.ANUGA

class dycove.sim.engines.ANUGA_hydro.ANUGA(anuga_domain, vegetation=None)[source]

Hydrodynamic simulation wrapper for the ANUGA model.

This class connects the generic HydroSimulationBase interface to the ANUGA hydrodynamic engine AnugaEngine.

Notes

  • The ANUGA domain object is expected to be pre-constructed by the user. This preserves the typical ANUGA workflow where domains are created directly in Python scripts.

  • All higher-level logic that can be abstracted from the engine classes is handled in HydroSimulationBase; all low-level model interactions are delegated to AnugaEngine.

__init__(anuga_domain, vegetation=None)[source]

Methods

__init__(anuga_domain[, vegetation])

eco_hydro_loop(n_substeps, interval)

Advance hydrodynamics over all substeps within the current vegetation step.

finalize_simulation()

hydro_step(seconds)

Advance hydrodynamics by a specified interval

run_simulation(sim_time, sim_time_unit[, ...])

Run a full simulation over the specified time period.

run_simulation_with_vegetation()

run_simulation_without_vegetation()

verify_eco_args(inputs)

eco_hydro_loop(n_substeps, interval)

Advance hydrodynamics over all substeps within the current vegetation step.

Computes min/max water depths, maximum velocities, and flooding statistics (HydrodynamicStats) required for vegetation updates.

hydro_step(seconds)

Advance hydrodynamics by a specified interval

run_simulation(sim_time, sim_time_unit, n_ets=14, veg_interval=43200, hydro_interval=900, save_interval=3600, ecofac=None, save_frequency=1, save_mortality=True)

Run a full simulation over the specified time period.

This method handles the main simulation loop, including:

Parameters:
  • sim_time (float) – Simulation duration in units of sim_time_unit.

  • sim_time_unit (str) – Either 'hydrodynamic days' or 'eco-morphodynamic years'. Determines interpretation of sim_time.

  • n_ets (int, optional) – Number of ecological time steps per vegetation year. Default is 14.

  • veg_interval (int, optional) – Time interval in seconds between vegetation updates. Default is 43200 (12 hours).

  • hydro_interval (int, optional) – Time interval in seconds between hydrodynamic substeps. Default is 900 (15 minutes).

  • save_interval (int, optional) – Interval in seconds for writing outputs. Default is 3600 (1 hour).

  • ecofac (int, optional) – Ecological (vegetation) acceleration factor relative to hydrodynamics. Must equal MORFAC if Delft3D morphology is enabled. If None, it is computed automatically.

  • save_frequency (int, optional) – Integer defining an output “skip” interval, e.g., 2 means skip every other ETS when writing output files. Default is 1 (no skip).

  • save_mortality (bool, optional) – Flag for saving mortality fractions with vegetation output.