#include <glib.h>
#include "sed/sed_sedflux.h"
Go to the source code of this file.
Classes | |
struct | Avulsion_st |
Defines | |
#define | AVULSION_H |
#define | AVULSION_PROGRAM_NAME "avlusion" |
#define | AVULSION_MAJOR_VERSION (1) |
#define | AVULSION_MINOR_VERSION (0) |
#define | AVULSION_MICRO_VERSION (0) |
#define | AVULSION_DATA avulsion_data_struct_quark() |
Functions | |
GQuark | avulsion_data_struct_quark (void) |
double | avulsion (GRand *rand, double last_angle, double std_dev) |
Avulsion_st * | avulsion_new (GRand *rand, double std_dev) |
Avulsion_st * | avulsion_dup (Avulsion_st *s) |
Avulsion_st * | avulsion_destroy (Avulsion_st *data) |
Sed_riv | sed_river_avulse (Sed_riv r) |
Sed_riv | sed_river_set_avulsion_data (Sed_riv r, Avulsion_st *data) |
Sed_riv | sed_river_unset_avulsion_data (Sed_riv r) |
Sed_riv | sed_river_impart_avulsion_data (Sed_riv r) |
Avulsion_st * | sed_river_avulsion_data (Sed_riv r) |
Sed_cube | sed_cube_avulse_river (Sed_cube c, Sed_riv r) |
Sed_cube | sed_cube_avulse_all_rivers (Sed_cube c) |
#define AVULSION_DATA avulsion_data_struct_quark() |
Definition at line 39 of file avulsion.h.
Referenced by sed_river_avulsion_data(), sed_river_set_avulsion_data(), and sed_river_unset_avulsion_data().
#define AVULSION_H |
Definition at line 22 of file avulsion.h.
#define AVULSION_MAJOR_VERSION (1) |
#define AVULSION_MICRO_VERSION (0) |
#define AVULSION_MINOR_VERSION (0) |
#define AVULSION_PROGRAM_NAME "avlusion" |
double avulsion | ( | GRand * | rand, | |
double | last_angle, | |||
double | std_dev | |||
) |
Definition at line 76 of file avulsion.c.
References eh_rand_normal(), eh_reduce_angle(), and get_std_dev_func().
Referenced by avulsion_lite(), and sed_river_avulse().
GQuark avulsion_data_struct_quark | ( | void | ) |
Definition at line 27 of file avulsion.c.
Avulsion_st* avulsion_destroy | ( | Avulsion_st * | data | ) |
Definition at line 57 of file avulsion.c.
References eh_free, Avulsion_st::rand, and Avulsion_st::std_dev.
Referenced by sed_river_set_avulsion_data().
Avulsion_st* avulsion_dup | ( | Avulsion_st * | s | ) |
Definition at line 44 of file avulsion.c.
References avulsion_new(), Avulsion_st::rand, and Avulsion_st::std_dev.
Referenced by sed_river_impart_avulsion_data().
Avulsion_st* avulsion_new | ( | GRand * | rand, | |
double | std_dev | |||
) |
Definition at line 33 of file avulsion.c.
References eh_new, Avulsion_st::rand, and Avulsion_st::std_dev.
Referenced by avulsion_dup(), avulsion_full(), and init_avulsion_data().
Sed_cube sed_cube_avulse_all_rivers | ( | Sed_cube | c | ) |
Definition at line 222 of file avulsion.c.
References sed_cube_avulse_river_helper(), and sed_cube_foreach_river().
Referenced by avulsion_full().
Sed_cube sed_cube_avulse_river | ( | Sed_cube | c, | |
Sed_riv | r | |||
) |
Avulse all of the branches of a Sed_riv
Run the avulsion process for each branch of a Sed_riv. This will avulse all of the branches, not just the smallest branches. However, it is only the smallest branches that enter the ocean. We keep track of the location of the parent branches in case its child branches merge. In such a case the location of the merged river will be the that of the parent.
c | A Sed_cube containing the river | |
r | A Sed_riv to avulse |
Definition at line 195 of file avulsion.c.
References eh_free, sed_cube_find_river_mouth(), sed_river_avulse(), and sed_river_branches().
Referenced by run_avulsion(), and sed_cube_avulse_river_helper().
Sed_riv sed_river_avulse | ( | Sed_riv | r | ) |
Definition at line 149 of file avulsion.c.
References avulsion(), avulsion_scale_angle_down(), avulsion_scale_angle_up(), avulsion_scale_std_dev_up(), eh_require, Avulsion_st::rand, sed_river_angle(), sed_river_avulsion_data(), sed_river_max_angle(), sed_river_min_angle(), sed_river_set_angle(), and Avulsion_st::std_dev.
Referenced by sed_cube_avulse_river().
Avulsion_st* sed_river_avulsion_data | ( | Sed_riv | r | ) |
Definition at line 143 of file avulsion.c.
References AVULSION_DATA.
Referenced by run_avulsion(), sed_river_avulse(), and sed_river_impart_avulsion_data().
Sed_riv sed_river_impart_avulsion_data | ( | Sed_riv | r | ) |
Definition at line 120 of file avulsion.c.
References avulsion_dup(), sed_river_avulsion_data(), sed_river_left(), sed_river_right(), sed_river_set_avulsion_data(), and Avulsion_st::std_dev.
Referenced by run_avulsion().
Sed_riv sed_river_set_avulsion_data | ( | Sed_riv | r, | |
Avulsion_st * | data | |||
) |
Definition at line 113 of file avulsion.c.
References AVULSION_DATA, and avulsion_destroy().
Referenced by avulsion_full(), init_avulsion_data(), and sed_river_impart_avulsion_data().
Sed_riv sed_river_unset_avulsion_data | ( | Sed_riv | r | ) |