Available Model Hooks

Important

Have a suggestion for another hook in the DeltaModel? Get in touch via the GitHub issue tracker!

Method hooks

As described extensively in the User Guide on how to customize the model, hooks are methods in the model sequence that do nothing by default, but can be augmented to provide arbitrary desired behavior in the model. Hooks have been integrated throughout the model initialization and update sequences, to allow the users to achieve complex behavior at various stages of the model sequence.

A complete list of hooks in the model follows:

Available model method hooks

Initializing

Updating

hook_import_files

hook_solve_water_and_sediment_timestep

hook_process_input_to_model

hook_apply_subsidence

hook_create_other_variables

hook_finalize_timestep

hook_create_domain

hook_route_water

hook_load_checkpoint

hook_init_water_iteration

hook_output_data

hook_run_water_iteration

hook_output_checkpoint

hook_compute_free_surface

hook_init_output_file

hook_finalize_water_iteration

hook_route_sediment

hook_route_all_sand_parcels

hook_topo_diffusion

hook_route_all_mud_parcels

hook_compute_sand_frac

hook_after_route_water

hook_after_route_sediment

Array hooks

The DeltaModel also incorporates a few arrays that enable a similar effect to method hooks. These arrays are initialized with all 1 or all 0 values by default (depending on the scenario), and provide a convenient location to augment the model with varied behavior.

A complete list of behavior-modifying arrays in the model follows:

Available model array hooks

Array name

function

default value

mod_water_weight

modifies the neighbor-weighting of water parcels during routing according to (depth * mod_water_weight)**theta_water

1

mod_sed_weight

modifies the neighbor-weighting of the sediment parcel routing according to (depth * mod_sed_weight)**theta_sed

1

mod_erosion

linearly modifies the “erodibility” of cells according to mod_erosion * Vp_sed * (U_loc**beta - U_ero**beta) / U_ero**beta

1