/Users/huttone/Devel/sedflux-new/sedflux/trunk/ew/sed/sed_cube.c File Reference

#include "utils/utils.h"
#include "sed_cube.h"

Go to the source code of this file.

Defines

#define DEFAULT_BINS   (16)
#define SED_KEY_MARGIN_NAME   "margin name"
#define SED_KEY_V_RES   "vertical resolution"
#define SED_KEY_X_RES   "x resolution"
#define SED_KEY_Y_RES   "y resolution"
#define SED_KEY_H_RES   "horizontal resolution"
#define SED_KEY_LENGTH   "basin length"
#define SED_KEY_WIDTH   "basin width"
#define SED_KEY_BATHY_FILE   "bathymetry file"
#define SED_KEY_SEDIMENT_FILE   "sediment file"
#define VARY_COLS   (0)
#define VARY_ROWS   (1)
#define S_KEY_SUBSIDENCE_TIME   "time"

Functions

GQuark sed_cube_susp_grid_quark (void)
GQuark sed_cube_error_quark (void)
void sed_mode_set (Sedflux_mode mode)
gboolean sed_mode_is (Sedflux_mode mode)
gboolean sed_mode_is_2d (void)
gboolean sed_mode_is_3d (void)
Sed_cube sed_cube_new (gssize n_x, gssize n_y)
Sed_cube sed_cube_new_empty (gssize n_x, gssize n_y)
Sed_cube sed_cube_new_from_file (const gchar *file, GError **error)
Sed_cube sed_cube_free (Sed_cube s, gboolean free_data)
Sed_cube sed_cube_free_river (Sed_cube p)
Sed_cube sed_cube_destroy (Sed_cube s)
Sed_cube sed_cube_copy_scalar_data (Sed_cube dest, const Sed_cube src)
Sed_cube sed_cube_copy_pointer_data (Sed_cube dest, const Sed_cube src)
Sed_cell_grid sed_cube_create_in_suspension (Sed_cube s)
Sed_cell_grid sed_cube_destroy_in_suspension (Sed_cell_grid g)
GSList * sed_cube_storm_list (Sed_cube c)
Sed_cube sed_cube_set_storm_list (Sed_cube c, GSList *storms)
void __free_slist_ocean_storm_data (Sed_ocean_storm s, gpointer user_data)
Sed_cube sed_cube_destroy_storm_list (Sed_cube c)
Sed_cube sed_cube_set_bathy (Sed_cube c, Eh_dbl_grid g)
Sed_cube sed_cube_set_dz (Sed_cube p, double new_dz)
char * sed_cube_name (const Sed_cube s)
gssize sed_cube_size (const Sed_cube s)
gssize sed_cube_n_x (const Sed_cube s)
gssize sed_cube_n_y (const Sed_cube s)
Sed_column sed_cube_col (const Sed_cube s, gssize ind)
Sed_column sed_cube_col_ij (const Sed_cube s, gssize i, gssize j)
Sed_column sed_cube_col_pos (const Sed_cube s, double x, double y)
double sed_cube_sea_level (const Sed_cube s)
double * sed_cube_x (const Sed_cube s, gssize *id)
double * sed_cube_y (const Sed_cube s, gssize *id)
double sed_cube_col_x (const Sed_cube s, gssize id)
double sed_cube_col_x_ij (const Sed_cube s, gssize i, gssize j)
double sed_cube_col_y (const Sed_cube s, gssize id)
double sed_cube_col_y_ij (const Sed_cube s, gssize i, gssize j)
double sed_cube_x_slope (const Sed_cube s, gssize i, gssize j)
double sed_cube_y_slope (const Sed_cube s, gssize i, gssize j)
double sed_cube_y_slope_fast (const Sed_cube s, gssize i, gssize j)
double sed_cube_slope (const Sed_cube s, gssize i, gssize j)
double sed_cube_slope_dir (const Sed_cube s, gssize i, gssize j)
Eh_pt_2 sed_cube_slope_vector (const Sed_cube s, gssize i, gssize j)
double sed_cube_top_height (const Sed_cube p, gssize i, gssize j)
Eh_ind_2 sed_ind2sub (gssize ind, gssize n_y)
Eh_dbl_grid sed_cube_grid (const Sed_cube s, Sed_grid_func func, gssize *index)
Eh_dbl_grid sed_cube_slope_dir_grid (const Sed_cube s, gssize *index)
Eh_dbl_grid sed_cube_x_slope_grid (const Sed_cube s, gssize *index)
Eh_dbl_grid sed_cube_y_slope_grid (const Sed_cube s, gssize *index)
Eh_dbl_grid sed_cube_water_depth_grid (const Sed_cube s, gssize *index)
Eh_dbl_grid sed_cube_thickness_grid (const Sed_cube s, gssize *index)
Eh_dbl_grid sed_cube_load_grid (const Sed_cube s, gssize *index)
Sed_riv sed_cube_river_by_name (Sed_cube s, const char *name)
gssize sed_cube_river_id (Sed_cube s, Sed_riv river)
Sed_cell_grid sed_cube_in_suspension (Sed_cube s, Sed_riv river)
GList * sed_cube_river_list (Sed_cube s)
Sed_riv * sed_cube_all_trunks (Sed_cube s)
Sed_riv * sed_cube_all_branches (Sed_cube s)
Sed_riv * sed_cube_all_leaves (Sed_cube s)
Sed_riv * sed_cube_all_rivers (Sed_cube s)
gint sed_cube_n_branches (Sed_cube s)
gint sed_cube_n_rivers (Sed_cube s)
gssize sed_cube_number_of_rivers (Sed_cube s)
double sed_cube_time_step (const Sed_cube s)
double sed_cube_time_step_in_years (const Sed_cube s)
double sed_cube_time_step_in_seconds (const Sed_cube s)
double sed_cube_time_step_in_days (const Sed_cube s)
Sed_constants sed_cube_constants (const Sed_cube s)
double sed_cube_x_res (const Sed_cube s)
double sed_cube_y_res (const Sed_cube s)
double sed_cube_z_res (const Sed_cube s)
Sed_cell sed_cube_to_remove (const Sed_cube s)
Sed_cell sed_cube_to_add (const Sed_cube s)
gssize sed_column_x_index (const Sed_cube c, double x)
gssize sed_column_y_index (const Sed_cube c, double y)
double sed_cube_wave_height (const Sed_cube s)
double sed_cube_wave_period (const Sed_cube s)
double sed_cube_wave_length (const Sed_cube s)
double sed_cube_storm (const Sed_cube s)
double sed_cube_quake (const Sed_cube s)
double sed_cube_age (const Sed_cube s)
double sed_cube_age_in_years (const Sed_cube s)
double sed_cube_tidal_period (const Sed_cube s)
Sed_cube sed_cube_set_tidal_period (Sed_cube s, double new_val)
double sed_cube_tidal_range (const Sed_cube s)
Sed_cube sed_cube_set_tidal_range (Sed_cube s, double new_val)
double sed_cube_water_depth (const Sed_cube p, gssize i, gssize j)
double sed_cube_water_pressure (const Sed_cube p, gssize i, gssize j)
double sed_cube_load (const Sed_cube p, gssize i, gssize j)
double sed_cube_thickness (const Sed_cube p, gssize i, gssize j)
gboolean sed_cube_col_is_empty (const Sed_cube p, gssize i, gssize j)
double sed_cube_base_height (const Sed_cube p, gssize i, gssize j)
Sed_cube sed_cube_dup (Sed_cube c)
Sed_cube sed_cube_copy (Sed_cube dest, const Sed_cube src)
Sed_cube sed_cube_copy_cols (const Sed_cube src, gssize *x, gssize *y, double *z, gssize len)
Sed_cube sed_cube_copy_line (const Sed_cube src, double *x, double *y, double *z, gssize len)
Sed_cube sed_cube_cols (Sed_cube src, gssize *path)
gssize sed_cube_river_mouth_1d (Sed_cube c)
Sed_cube sed_cube_remove (Sed_cube dest, Sed_cube src)
Sed_cube sed_cube_add (Sed_cube dest, const Sed_cube src)
double sed_cube_mass (const Sed_cube p)
double sed_cube_sediment_mass (const Sed_cube p)
double sed_cube_mass_in_suspension (const Sed_cube p)
Sed_cube sed_cube_set_sea_level (Sed_cube s, double new_sea_level)
Sed_cube sed_cube_adjust_sea_level (Sed_cube s, double dz)
Sed_cube sed_cube_set_base_height (Sed_cube s, gssize i, gssize j, double height)
Sed_cube sed_cube_adjust_base_height (Sed_cube s, gssize i, gssize j, double dz)
Sed_cube sed_cube_set_nth_river (Sed_cube s, gssize n, Sed_riv new_river)
Eh_pt_2sed_cube_river_mouth_position (Sed_cube s, Sed_riv this_river)
Sed_cube sed_cube_set_river_list (Sed_cube s, GList *river_list)
Sed_cube sed_cube_split_river (Sed_cube s, const gchar *name)
void sed_river_attach_susp_grid (Sed_riv r, Sed_cell_grid g)
Sed_cell_grid sed_river_get_susp_grid (Sed_riv r)
void sed_river_detach_susp_grid (Sed_riv r)
Sed_cube sed_cube_add_trunk (Sed_cube s, Sed_riv new_trunk)
Sed_cube sed_cube_remove_river (Sed_cube s, Sed_riv r)
Sed_cube sed_cube_remove_all_trunks (Sed_cube s)
Sed_riv sed_cube_nth_river (Sed_cube s, gint n)
Sed_cube sed_cube_set_name (Sed_cube s, char *name)
Sed_cube sed_cube_set_time_step (Sed_cube s, double time_step_in_years)
Sed_cube set_cube_set_constants (Sed_cube s, Sed_constants new_c)
Sed_cube sed_cube_set_x_res (Sed_cube s, double new_x_res)
Sed_cube sed_cube_set_y_res (Sed_cube s, double new_y_res)
Sed_cube sed_cube_set_z_res (Sed_cube s, double new_z_res)
Sed_cube sed_cube_set_wave_height (Sed_cube s, double new_wave_height)
Sed_cube sed_cube_set_wave_period (Sed_cube s, double new_wave_period)
Sed_cube sed_cube_set_wave_length (Sed_cube s, double new_wave_length)
Sed_cube sed_cube_set_storm (Sed_cube s, double new_storm_value)
Sed_cube sed_cube_set_quake (Sed_cube s, double new_quake_value)
Sed_cube sed_cube_set_age (Sed_cube s, double new_age)
Sed_cube sed_cube_adjust_age (Sed_cube s, double dt)
Sed_cube sed_cube_increment_age (Sed_cube s)
void sed_cube_set_shore (Sed_cube s)
GList * sed_cube_find_shore_line (Sed_cube s, Eh_ind_2 *pos)
int eh_compare_ind_2 (Eh_ind_2 *a, Eh_ind_2 *b)
GList * sed_find_next_shore (GList *shore_list, Sed_cube s, Eh_ind_2 *pos, GList *ignore_list)
gboolean is_shore_cell (Sed_cube s, gssize x, gssize y)
int sed_cube_find_shore_edge (Sed_cube s, gssize i, gssize j)
Eh_ind_2sed_cube_find_adjacent_shore_edge (Sed_cube s, gssize i, gssize j, int edge)
int sed_rotate_direction (int dir, int angle)
gboolean sed_cube_is_shore_edge (Sed_cube s, gssize i, gssize j, int edge)
Eh_ind_2 sed_shift_index_over_edge (gssize i, gssize j, int edge)
GList * sed_cube_find_columns_custom (Sed_cube s, gssize i, gssize j, gpointer data, Sed_cube_func stop_func, Sed_cube_func angle_func)
GList * sed_cube_find_cross_shore_columns (Sed_cube s, gssize i, gssize j)
Eh_ind_2sed_cube_find_shore (Sed_cube s, int n, int vary_dim)
GTree * sed_create_shore_tree (GList *shore)
Sed_riv sed_cube_find_river_mouth (Sed_cube c, Sed_riv this_river)
GList * sed_cube_find_river_path (Sed_cube c, Eh_ind_2 *hinge_pos, double angle)
Eh_ind_2sed_find_river_mouth (Sed_cube c, Eh_ind_2 *hinge_pos, double angle)
Eh_ind_2 get_offset_from_angle (double angle, double aspect)
int get_path_exit_side (Eh_pt_2 pos_in_box, double angle, double dx, double dy)
Eh_pt_2 get_path_exit_pos (Eh_pt_2 pos_in_box, double angle, double dx, double dy)
Eh_pt_2 get_path_entrance_pos (Eh_pt_2 exit_pos, double dx, double dy)
Eh_ind_2 get_shift_from_exit_pos (Eh_pt_2 exit_pos, double dx, double dy)
gssize * sed_cube_river_path_id (Sed_cube c, Sed_riv river, gboolean down_stream)
GList * sed_cube_river_path (Sed_cube c, Sed_riv river)
GList * sed_cube_find_line_path (Sed_cube c, Eh_ind_2 *hinge_pos, double angle)
int is_river_mouth (Eh_ind_2 *shore_pos, Sed_hinge_pt *dir)
Eh_dbl_grid sed_get_floor_3_default (int floor_type, int n_x, int n_y)
double ** sed_scan_sea_level_curve (const char *file, gint *len, GError **err)
Eh_sequencesed_get_floor_sequence_2 (const char *file, double *y_i, gssize n_yi, GError **error)
Eh_sequencesed_get_floor_sequence_3 (const char *file, double dx, double dy, GError **error)
Eh_dbl_grid sed_bathy_grid_scan (const char *file, double dx, double dy, GError **error)
Eh_dbl_grid sed_bathy_grid_scan_2d_ascii (const char *file, double dx, double dy, GError **error)
Eh_dbl_grid sed_bathy_grid_scan_2d_binary (const char *file, double dx, double dy, GError **error)
Eh_dbl_grid sed_bathy_grid_scan_1d_ascii (const char *file, double dx, double dy, GError **error)
Sed_cube sed_cube_foreach_river (Sed_cube c, GFunc func, gpointer user_data)
void find_river_mouth_helper (Sed_riv this_river, Sed_cube c)
Sed_cube sed_cube_find_all_river_mouths (Sed_cube c)
gssize sed_cube_write (FILE *fp, const Sed_cube p)
Sed_cube sed_cube_read (FILE *fp)
gssize sed_cube_column_id (const Sed_cube c, double x, double y)
gssize * sed_cube_find_column_below (Sed_cube c, double z)
gssize * sed_cube_find_column_above (Sed_cube c, double z)
int sed_get_floor_vec (char *filename, double *y, int len, double *z, GError **error)
GArray * sed_get_floor (char *file, GArray *y_array, GError **error)
gssize sed_cube_id (Sed_cube p, gssize i, gssize j)
Eh_ind_2 sed_cube_sub (Sed_cube p, gssize id)
gboolean sed_cube_is_in_domain (Sed_cube p, gssize i, gssize j)
gboolean sed_cube_is_in_domain_id (Sed_cube p, gssize id)
gboolean sed_cube_is_in_domain_pos (Sed_cube c, double x, double y)
gboolean sed_cube_is_1d (Sed_cube p)
gssize sed_cube_fprint (FILE *fp, Sed_cube c)
Sed_cell sed_cube_to_cell (Sed_cube c, Sed_cell d)
gint sed_cube_count_above (Sed_cube c, double h)
double sed_cube_area_above (Sed_cube c, double h)


Define Documentation

#define DEFAULT_BINS   (16)

Definition at line 91 of file sed_cube.c.

Referenced by sed_cube_new().

#define S_KEY_SUBSIDENCE_TIME   "time"

Definition at line 2808 of file sed_cube.c.

Referenced by sed_get_floor_sequence_2().

#define SED_KEY_BATHY_FILE   "bathymetry file"

Definition at line 172 of file sed_cube.c.

Referenced by sed_cube_new_from_file().

#define SED_KEY_H_RES   "horizontal resolution"

Definition at line 169 of file sed_cube.c.

#define SED_KEY_LENGTH   "basin length"

Definition at line 170 of file sed_cube.c.

#define SED_KEY_MARGIN_NAME   "margin name"

Definition at line 165 of file sed_cube.c.

Referenced by sed_cube_new_from_file().

#define SED_KEY_SEDIMENT_FILE   "sediment file"

Definition at line 173 of file sed_cube.c.

Referenced by sed_cube_new_from_file().

#define SED_KEY_V_RES   "vertical resolution"

Definition at line 166 of file sed_cube.c.

Referenced by sed_cube_new_from_file().

#define SED_KEY_WIDTH   "basin width"

Definition at line 171 of file sed_cube.c.

#define SED_KEY_X_RES   "x resolution"

Definition at line 167 of file sed_cube.c.

Referenced by sed_cube_new_from_file().

#define SED_KEY_Y_RES   "y resolution"

Definition at line 168 of file sed_cube.c.

Referenced by sed_cube_new_from_file().

#define VARY_COLS   (0)

Definition at line 1810 of file sed_cube.c.

Referenced by sed_cube_find_shore(), and sed_cube_set_shore().

#define VARY_ROWS   (1)

Definition at line 1811 of file sed_cube.c.

Referenced by sed_cube_set_shore().


Function Documentation

void __free_slist_ocean_storm_data ( Sed_ocean_storm  s,
gpointer  user_data 
)

Definition at line 408 of file sed_cube.c.

References sed_ocean_storm_destroy().

Referenced by sed_cube_destroy_storm_list().

int eh_compare_ind_2 ( Eh_ind_2 a,
Eh_ind_2 b 
)

Definition at line 1908 of file sed_cube.c.

References Eh_ind_2::i, and Eh_ind_2::j.

Referenced by sed_create_shore_tree(), and sed_find_next_shore().

void find_river_mouth_helper ( Sed_riv  this_river,
Sed_cube  c 
)

Definition at line 3361 of file sed_cube.c.

References sed_cube_find_river_mouth().

Referenced by sed_cube_find_all_river_mouths().

Eh_ind_2 get_offset_from_angle ( double  angle,
double  aspect 
)

Definition at line 2338 of file sed_cube.c.

References eh_ind_2_create(), and eh_require.

Eh_pt_2 get_path_entrance_pos ( Eh_pt_2  exit_pos,
double  dx,
double  dy 
)

Definition at line 2423 of file sed_cube.c.

References eh_compare_dbl(), Eh_pt_2::x, and Eh_pt_2::y.

Referenced by sed_cube_find_columns_custom(), and sed_cube_find_line_path().

Eh_pt_2 get_path_exit_pos ( Eh_pt_2  pos_in_box,
double  angle,
double  dx,
double  dy 
)

Definition at line 2389 of file sed_cube.c.

References get_path_exit_side(), Eh_pt_2::x, and Eh_pt_2::y.

Referenced by sed_cube_find_columns_custom(), and sed_cube_find_line_path().

int get_path_exit_side ( Eh_pt_2  pos_in_box,
double  angle,
double  dx,
double  dy 
)

Definition at line 2360 of file sed_cube.c.

References eh_require, M_PI, Eh_pt_2::x, and Eh_pt_2::y.

Referenced by get_path_exit_pos().

Eh_ind_2 get_shift_from_exit_pos ( Eh_pt_2  exit_pos,
double  dx,
double  dy 
)

Definition at line 2451 of file sed_cube.c.

References eh_compare_dbl(), Eh_ind_2::i, Eh_ind_2::j, Eh_pt_2::x, and Eh_pt_2::y.

Referenced by sed_cube_find_columns_custom(), and sed_cube_find_line_path().

int is_river_mouth ( Eh_ind_2 shore_pos,
Sed_hinge_pt dir 
)

Definition at line 2594 of file sed_cube.c.

References Sed_hinge_pt::angle, Eh_ind_2::i, Eh_ind_2::j, Sed_hinge_pt::x, and Sed_hinge_pt::y.

gboolean is_shore_cell ( Sed_cube  s,
gssize  x,
gssize  y 
)

Test if a land cell borders an ocean cell.

Parameters:
s A pointer to a Sed_cube.
x Index to fast dimension.
y Index to slow dimension.
Returns:
TRUE if the column is on the shore line.

Definition at line 1930 of file sed_cube.c.

References eh_clamp, eh_require, and sed_column_is_below().

Referenced by sed_find_next_shore().

Eh_dbl_grid sed_bathy_grid_scan ( const char *  file,
double  dx,
double  dy,
GError **  error 
)

Definition at line 3080 of file sed_cube.c.

References eh_require_not_reached, eh_return_val_if_fail, sed_bathy_grid_scan_1d_ascii(), sed_bathy_grid_scan_2d_ascii(), sed_mode_is_2d(), and sed_mode_is_3d().

Referenced by sed_cube_new_from_file().

Eh_dbl_grid sed_bathy_grid_scan_1d_ascii ( const char *  file,
double  dx,
double  dy,
GError **  error 
)

Definition at line 3220 of file sed_cube.c.

References eh_dbl_array_is_monotonic_up(), eh_dlm_read_swap(), eh_free_2, eh_grid_data_start(), eh_grid_new, eh_grid_set_y_lin(), eh_grid_y(), eh_return_val_if_fail, interpolate(), SED_CUBE_ERROR, SED_CUBE_ERROR_DATA_BAD_RANGE, SED_CUBE_ERROR_INSUFFICIENT_DATA, SED_CUBE_ERROR_NOT_TWO_COLUMNS, and SED_CUBE_ERROR_TIME_NOT_MONOTONIC.

Referenced by sed_bathy_grid_scan().

Eh_dbl_grid sed_bathy_grid_scan_2d_ascii ( const char *  file,
double  dx,
double  dy,
GError **  error 
)

Definition at line 3097 of file sed_cube.c.

References eh_dbl_grid_new_set(), eh_dlm_read(), eh_grid_destroy(), eh_grid_x(), eh_grid_y(), eh_return_val_if_fail, SED_CUBE_ERROR, SED_CUBE_ERROR_TOO_FEW_COLUMNS, and SED_CUBE_ERROR_TOO_FEW_ROWS.

Referenced by sed_bathy_grid_scan().

Eh_dbl_grid sed_bathy_grid_scan_2d_binary ( const char *  file,
double  dx,
double  dy,
GError **  error 
)

Definition at line 3147 of file sed_cube.c.

References eh_fopen_error(), eh_grid_data_start(), eh_grid_new, eh_grid_x(), eh_grid_y(), eh_return_val_if_fail, SED_CUBE_ERROR, and SED_CUBE_ERROR_TRUNCATED_FILE.

gssize sed_column_x_index ( const Sed_cube  c,
double  x 
)

Definition at line 1000 of file sed_cube.c.

References eh_require, sed_column_x_position(), and sed_cube_col_x().

gssize sed_column_y_index ( const Sed_cube  c,
double  y 
)

Definition at line 1019 of file sed_cube.c.

References eh_require, sed_column_y_position(), and sed_cube_col_y().

GTree* sed_create_shore_tree ( GList *  shore  ) 

Definition at line 2280 of file sed_cube.c.

References eh_compare_ind_2().

Sed_cube sed_cube_add ( Sed_cube  dest,
const Sed_cube  src 
)

Definition at line 1355 of file sed_cube.c.

References eh_free, eh_new, sed_column_add(), sed_column_x_position(), sed_column_y_position(), sed_cube_column_id(), and sed_cube_size().

Referenced by run_debris_flow(), and run_slump().

Sed_cube sed_cube_add_trunk ( Sed_cube  s,
Sed_riv  new_trunk 
)

Definition at line 1596 of file sed_cube.c.

References sed_cube_create_in_suspension(), and sed_river_attach_susp_grid().

Referenced by avulsion_full(), init_river_data(), and sed_cube_read().

Sed_cube sed_cube_adjust_age ( Sed_cube  s,
double  dt 
)

Definition at line 1777 of file sed_cube.c.

References sed_cube_set_age().

Referenced by sed_cube_increment_age().

Sed_cube sed_cube_adjust_base_height ( Sed_cube  s,
gssize  i,
gssize  j,
double  dz 
)

Definition at line 1464 of file sed_cube.c.

References sed_column_base_height(), sed_column_set_base_height(), and sed_cube_col_ij().

Referenced by run_isostasy(), and run_subsidence().

Sed_cube sed_cube_adjust_sea_level ( Sed_cube  s,
double  dz 
)

Definition at line 1453 of file sed_cube.c.

References sed_cube_set_sea_level().

Referenced by run_xshore().

double sed_cube_age ( const Sed_cube  s  ) 

Definition at line 1063 of file sed_cube.c.

Referenced by construct_deposit_array_3(), inflow_deposit_sediment(), muddy(), run_plume_hypo(), run_subsidence(), sakura_deposit_sediment(), sed_epoch_queue_tic(), and sed_process_run().

double sed_cube_age_in_years ( const Sed_cube  s  ) 

Definition at line 1068 of file sed_cube.c.

Referenced by bio_run(), diffuse_sediment(), fill_to_bruun(), fill_to_bruun_profile(), init_bbl_data(), init_isostasy_data(), init_quake_data(), init_sea_level_data(), init_storm_data(), init_subsidence_data(), init_xshore_data(), move_sediment(), run_avulsion(), run_bbl(), run_bioturbation(), run_compaction(), run_constants(), run_data_dump(), run_debris_flow(), run_diffusion(), run_failure(), run_flow(), run_isostasy(), run_plume(), run_plume_hypo(), run_quake(), run_river(), run_sea_level(), run_squall(), run_storm(), run_subsidence(), run_tide(), run_xshore(), sed_process_run_now(), sed_tripod_write(), squall(), and thread_compact().

Sed_riv* sed_cube_all_branches ( Sed_cube  s  ) 

Definition at line 848 of file sed_cube.c.

References eh_free, eh_strv_concat(), sed_cube_river_list(), and sed_river_branches().

Referenced by run_bbl(), sed_cube_mass_in_suspension(), and sed_cube_write().

Sed_riv* sed_cube_all_leaves ( Sed_cube  s  ) 

Definition at line 872 of file sed_cube.c.

References eh_free, eh_strv_concat(), sed_cube_river_list(), and sed_river_leaves().

Referenced by run_erosion(), and run_plume().

Sed_riv* sed_cube_all_rivers ( Sed_cube  s  ) 

Definition at line 896 of file sed_cube.c.

References eh_strv_append(), and sed_cube_river_list().

Sed_riv* sed_cube_all_trunks ( Sed_cube  s  ) 

Definition at line 831 of file sed_cube.c.

References eh_strv_append(), and sed_cube_river_list().

Referenced by sed_cube_remove_all_trunks().

double sed_cube_area_above ( Sed_cube  c,
double  h 
)

Find the area of columns above some elevation

Parameters:
c A Sed_cube
h The elevation to compare
Returns:
The area of columns above the elevation

Definition at line 3901 of file sed_cube.c.

References eh_require, sed_cube_count_above(), sed_cube_x_res(), and sed_cube_y_res().

Referenced by run_avulsion().

double sed_cube_base_height ( const Sed_cube  p,
gssize  i,
gssize  j 
)

Definition at line 1149 of file sed_cube.c.

References sed_column_base_height(), and sed_cube_col_ij().

Referenced by fail_check_failure_plane_is_valid(), get_janbu_parameters(), sed_cube_fprint(), sed_cube_min_height(), sed_cube_n_rows_between(), and sed_measure_cube_basement().

Sed_column sed_cube_col ( const Sed_cube  s,
gssize  ind 
)

Definition at line 486 of file sed_cube.c.

References eh_require, eh_return_val_if_fail, and sed_cube_size().

Referenced by bio_run(), decider(), deposit_in_river(), diffuse_sediment(), erode_profile(), fail_update_fail_profile(), fill_to_bruun(), fill_to_bruun_profile(), get_failure_surface(), get_janbu_parameters(), inflow_deposit_sediment(), inflow_erode_sediment(), init_column(), main(), move_sediment(), muddy(), rain_3(), run_bioturbation(), run_compaction(), run_debris_flow(), run_flow(), run_slump(), sakura_deposit_sediment(), sakura_erode_sediment(), sakura_sed_get_phe(), sed_cube_col_pos(), sed_cube_col_x(), sed_cube_col_y(), sed_cube_mass(), sed_cube_n_rows_between(), sed_cube_property_subgrid(), sed_cube_sediment_mass(), sed_cube_set_dz(), sed_cube_set_sea_level(), sed_cube_set_z_res(), sed_cube_to_cell(), sed_cube_x(), sed_cube_y(), sed_get_phe(), squall(), thread_compact(), and xshore().

Sed_column sed_cube_col_ij ( const Sed_cube  s,
gssize  i,
gssize  j 
)

Definition at line 497 of file sed_cube.c.

References eh_require, eh_return_val_if_fail, sed_cube_id(), sed_cube_n_x(), and sed_cube_size().

Referenced by add_sediment_from_external_source(), deposit_sediment_helper(), diffuse_sediment_2(), sed_cube_adjust_base_height(), sed_cube_base_height(), sed_cube_col_x_ij(), sed_cube_col_y_ij(), sed_cube_load(), sed_cube_new_from_file(), sed_cube_set_base_height(), sed_cube_top_height(), sed_cube_water_depth(), sed_measure_cube_age(), sed_measure_cube_clay_fraction(), sed_measure_cube_density(), sed_measure_cube_facies(), sed_measure_cube_grain_size(), sed_measure_cube_mud_fraction(), sed_measure_cube_permeability(), sed_measure_cube_porosity(), sed_measure_cube_sand_fraction(), sed_measure_cube_silt_fraction(), and test_2d().

gboolean sed_cube_col_is_empty ( const Sed_cube  p,
gssize  i,
gssize  j 
)

Definition at line 1144 of file sed_cube.c.

References sed_column_is_empty().

Referenced by sed_measure_cube_age(), sed_measure_cube_clay_fraction(), sed_measure_cube_density(), sed_measure_cube_facies(), sed_measure_cube_grain_size(), sed_measure_cube_mud_fraction(), sed_measure_cube_permeability(), sed_measure_cube_porosity(), sed_measure_cube_sand_fraction(), and sed_measure_cube_silt_fraction().

Sed_column sed_cube_col_pos ( const Sed_cube  s,
double  x,
double  y 
)

Definition at line 510 of file sed_cube.c.

References sed_cube_col(), and sed_cube_column_id().

Referenced by sakura_sed_add_sediment(), and sakura_sed_remove_sediment().

double sed_cube_col_x ( const Sed_cube  s,
gssize  id 
)

Definition at line 584 of file sed_cube.c.

References eh_require, sed_column_x_position(), sed_cube_col(), and sed_cube_size().

Referenced by run_bedload(), sed_column_x_index(), sed_cube_property_subgrid(), sed_cube_x_cols_between(), sed_cube_y_cols_between(), sed_tripod_measure(), and sed_tripod_write().

double sed_cube_col_x_ij ( const Sed_cube  s,
gssize  i,
gssize  j 
)

Definition at line 592 of file sed_cube.c.

References sed_column_x_position(), and sed_cube_col_ij().

double sed_cube_col_y ( const Sed_cube  s,
gssize  id 
)

Definition at line 597 of file sed_cube.c.

References eh_require, sed_column_y_position(), sed_cube_col(), and sed_cube_size().

Referenced by fill_to_bruun_profile(), get_bruun_a(), get_bruun_y_0(), get_bruun_y_b(), get_bruun_zones(), get_sediment_flux(), get_shoreface_slope(), get_zone_boundaries(), main(), run_bedload(), run_debris_flow(), run_slump(), run_turbidity_inflow(), run_turbidity_sakura(), sed_column_y_index(), sed_cube_fprint(), sed_cube_property_subgrid(), sed_cube_x_cols_between(), sed_cube_y_cols_between(), sed_tripod_measure(), sed_tripod_write(), and update_bruun_zone_data().

double sed_cube_col_y_ij ( const Sed_cube  s,
gssize  i,
gssize  j 
)

Definition at line 605 of file sed_cube.c.

References sed_column_y_position(), and sed_cube_col_ij().

Sed_cube sed_cube_cols ( Sed_cube  src,
gssize *  path 
)

Definition at line 1277 of file sed_cube.c.

References eh_require, sed_cube_copy_scalar_data(), sed_cube_new_empty(), and sed_cube_size().

Referenced by deposit_in_river(), erode_river_profile(), and get_zones().

gssize sed_cube_column_id ( const Sed_cube  c,
double  x,
double  y 
)

Definition at line 3498 of file sed_cube.c.

References eh_grid_sub_to_id(), eh_require, sed_column_x_position(), sed_column_y_position(), sed_cube_is_1d(), and sed_cube_is_in_domain_pos().

Referenced by sakura_sed_get_depth(), sakura_sed_get_phe(), sed_cube_add(), sed_cube_col_pos(), sed_cube_copy_line(), sed_cube_remove(), sed_cube_x_cols_between(), and sed_cube_y_cols_between().

Sed_constants sed_cube_constants ( const Sed_cube  s  ) 

Definition at line 964 of file sed_cube.c.

References eh_require.

Referenced by run_constants().

Sed_cube sed_cube_copy ( Sed_cube  dest,
const Sed_cube  src 
)

Copy a sediment cube.

Parameters:
src The cube to duplicate.
dest Location of the duplicate cube (or NULL to create a cube);
Returns:
Location of the duplicate cube.

Definition at line 1176 of file sed_cube.c.

References eh_require, sed_cube_copy_pointer_data(), sed_cube_copy_scalar_data(), and sed_cube_new().

Referenced by sed_cube_dup().

Sed_cube sed_cube_copy_cols ( const Sed_cube  src,
gssize *  x,
gssize *  y,
double *  z,
gssize  len 
)

Place columns from a Sed_cube into a new 1D Sed_cube

Create a new 1D Sed_cube out of Sed_columns of an existing Sed_cube. Columns are specified by their x and y indices as well as an elevation. Everything above the elevation is copied to a new Sed_column and placed in the new Sed_cube.

Parameters:
src A Sed_cube
x x-indices of the columns to copy
y y-indices of the columns to copy
z Vertical position of the new column
len Length of x, y, and z
Returns:
A new Sed_cube containing a copy of the specified columns.

Definition at line 1205 of file sed_cube.c.

References eh_require, sed_column_height_copy(), sed_cube_copy_scalar_data(), and sed_cube_new().

Referenced by get_failure_surface().

Sed_cube sed_cube_copy_line ( const Sed_cube  src,
double *  x,
double *  y,
double *  z,
gssize  len 
)

Place columns from a Sed_cube into a new 1D Sed_cube

Create a new 1D Sed_cube out of Sed_columns of an existing Sed_cube. Columns are specified by their x and y positions as well as an elevation. Everything above the elevation is copied to a new Sed_column and placed in the new Sed_cube.

Parameters:
src A Sed_cube
x x-positions of the columns to copy
y y-positions of the columns to copy
z Vertical position of the new column
len Length of x, y, and z
Returns:
A new Sed_cube containing a copy of the specified columns.

Definition at line 1245 of file sed_cube.c.

References eh_free, eh_new, eh_require, sed_column_height_copy(), sed_cube_column_id(), sed_cube_copy_scalar_data(), and sed_cube_new().

Sed_cube sed_cube_copy_pointer_data ( Sed_cube  dest,
const Sed_cube  src 
)

Definition at line 349 of file sed_cube.c.

References sed_cube_new().

Referenced by sed_cube_copy().

Sed_cube sed_cube_copy_scalar_data ( Sed_cube  dest,
const Sed_cube  src 
)

Definition at line 324 of file sed_cube.c.

References eh_free, and sed_cube_new().

Referenced by sed_cube_cols(), sed_cube_copy(), sed_cube_copy_cols(), and sed_cube_copy_line().

gint sed_cube_count_above ( Sed_cube  c,
double  h 
)

Count the number of columns above some elevation

Parameters:
c A Sed_cube
h The elevation to compare
Returns:
The number of columns above the elevation

Definition at line 3876 of file sed_cube.c.

References eh_require, sed_column_is_above(), and sed_cube_size().

Referenced by sed_cube_area_above().

Sed_cell_grid sed_cube_create_in_suspension ( Sed_cube  s  ) 

Definition at line 363 of file sed_cube.c.

References eh_grid_reindex(), sed_cell_grid_init(), sed_cell_grid_new(), and sed_sediment_env_n_types().

Referenced by sed_cube_add_trunk(), and sed_cube_split_river().

Sed_cube sed_cube_destroy ( Sed_cube  s  ) 

Definition at line 318 of file sed_cube.c.

References sed_cube_free().

Referenced by get_failure_surface(), run_failure(), sedflux_finalize(), and test_2d().

Sed_cell_grid sed_cube_destroy_in_suspension ( Sed_cell_grid  g  ) 

Definition at line 385 of file sed_cube.c.

References eh_grid_destroy(), and sed_cell_grid_free().

Referenced by sed_river_attach_susp_grid().

Sed_cube sed_cube_destroy_storm_list ( Sed_cube  c  ) 

Definition at line 413 of file sed_cube.c.

References __free_slist_ocean_storm_data(), and eh_return_val_if_fail.

Referenced by sed_cube_free(), and sed_cube_set_storm_list().

Sed_cube sed_cube_dup ( Sed_cube  c  ) 

Duplicate a sediment cube.

Parameters:
c The cube to duplicate.
Returns:
A newly created cube.

Definition at line 1162 of file sed_cube.c.

References sed_cube_copy().

GQuark sed_cube_error_quark ( void   ) 

Definition at line 58 of file sed_cube.c.

Eh_ind_2* sed_cube_find_adjacent_shore_edge ( Sed_cube  s,
gssize  i,
gssize  j,
int  edge 
)

Definition at line 2009 of file sed_cube.c.

References eh_ind_2_dup(), eh_is_in_domain(), Eh_ind_2::i, Eh_ind_2::j, sed_cube_is_shore_edge(), sed_rotate_direction(), and sed_shift_index_over_edge().

Sed_cube sed_cube_find_all_river_mouths ( Sed_cube  c  ) 

Definition at line 3355 of file sed_cube.c.

References find_river_mouth_helper().

Referenced by diffuse_sediment(), and run_sea_level().

gssize* sed_cube_find_column_above ( Sed_cube  c,
double  z 
)

Definition at line 3544 of file sed_cube.c.

References eh_grid_sub_to_id(), and sed_column_top_height().

Referenced by diffuse_sediment().

gssize* sed_cube_find_column_below ( Sed_cube  c,
double  z 
)

Definition at line 3525 of file sed_cube.c.

References eh_grid_sub_to_id(), and sed_column_top_height().

GList* sed_cube_find_columns_custom ( Sed_cube  s,
gssize  i,
gssize  j,
gpointer  data,
Sed_cube_func  stop_func,
Sed_cube_func  angle_func 
)

Definition at line 2130 of file sed_cube.c.

References eh_clamp, eh_is_in_domain(), eh_require, get_path_entrance_pos(), get_path_exit_pos(), get_shift_from_exit_pos(), Eh_ind_2::i, Eh_ind_2::j, Eh_pt_2::x, and Eh_pt_2::y.

GList* sed_cube_find_cross_shore_columns ( Sed_cube  s,
gssize  i,
gssize  j 
)

Definition at line 2206 of file sed_cube.c.

References eh_sign, sed_cube_find_cross_shore_columns(), sed_cube_slope_vector(), sed_cube_water_depth(), Eh_pt_2::x, and Eh_pt_2::y.

Referenced by sed_cube_find_cross_shore_columns().

GList* sed_cube_find_line_path ( Sed_cube  c,
Eh_ind_2 hinge_pos,
double  angle 
)

Definition at line 2535 of file sed_cube.c.

References eh_ind_2_create(), eh_ind_2_dup(), eh_is_in_domain(), eh_reduce_angle(), eh_require, eh_require_not_reached, get_path_entrance_pos(), get_path_exit_pos(), get_shift_from_exit_pos(), Eh_ind_2::i, Eh_ind_2::j, sed_column_is_above(), sed_column_is_below(), Eh_pt_2::x, and Eh_pt_2::y.

Referenced by sed_cube_find_river_path(), sed_cube_river_path(), and sed_cube_river_path_id().

Sed_riv sed_cube_find_river_mouth ( Sed_cube  c,
Sed_riv  this_river 
)

Definition at line 2292 of file sed_cube.c.

References eh_free, Eh_ind_2::i, Eh_ind_2::j, sed_find_river_mouth(), sed_river_angle(), sed_river_hinge(), and sed_river_set_mouth().

Referenced by deposit_sediment_helper(), find_river_mouth_helper(), rain_sediment_3(), and sed_cube_avulse_river().

GList* sed_cube_find_river_path ( Sed_cube  c,
Eh_ind_2 hinge_pos,
double  angle 
)

Definition at line 2311 of file sed_cube.c.

References sed_cube_find_line_path().

Referenced by sed_find_river_mouth().

Eh_ind_2* sed_cube_find_shore ( Sed_cube  s,
int  n,
int  vary_dim 
)

Look for a transition from land to sea.

Parameters:
s A pointer to a Sed_cube.
n The row or column to look along.
vary_dim The dimension along which to look.
Returns:
The indices to the land column that marks the transition.

Definition at line 2240 of file sed_cube.c.

References eh_new, Eh_ind_2::i, Eh_ind_2::j, sed_column_is_below(), and VARY_COLS.

Referenced by sed_cube_set_shore().

int sed_cube_find_shore_edge ( Sed_cube  s,
gssize  i,
gssize  j 
)

Definition at line 1968 of file sed_cube.c.

References eh_is_in_domain(), eh_require, S_EAST_EDGE, S_NORTH_EDGE, S_SOUTH_EDGE, S_WEST_EDGE, and sed_column_is_below().

GList* sed_cube_find_shore_line ( Sed_cube  s,
Eh_ind_2 pos 
)

Definition at line 1853 of file sed_cube.c.

References sed_find_next_shore().

Referenced by sed_cube_set_shore().

Sed_cube sed_cube_foreach_river ( Sed_cube  c,
GFunc  func,
gpointer  user_data 
)

Definition at line 3332 of file sed_cube.c.

Referenced by sed_cube_avulse_all_rivers().

gssize sed_cube_fprint ( FILE *  fp,
Sed_cube  c 
)

Definition at line 3801 of file sed_cube.c.

References sed_cube_base_height(), sed_cube_col_y(), sed_cube_n_x(), sed_cube_n_y(), sed_cube_name(), sed_cube_size(), sed_cube_x_res(), sed_cube_y_res(), and sed_cube_z_res().

Sed_cube sed_cube_free ( Sed_cube  s,
gboolean  free_data 
)

Definition at line 275 of file sed_cube.c.

References eh_free, sed_cell_destroy(), sed_column_destroy(), sed_cube_destroy_storm_list(), sed_cube_remove_all_trunks(), and sed_cube_size().

Referenced by deposit_in_river(), erode_river_profile(), sed_cube_destroy(), and xshore().

Sed_cube sed_cube_free_river ( Sed_cube  p  ) 

Definition at line 305 of file sed_cube.c.

References sed_river_destroy().

Eh_dbl_grid sed_cube_grid ( const Sed_cube  s,
Sed_grid_func  func,
gssize *  index 
)

Definition at line 711 of file sed_cube.c.

References eh_dbl_grid_set_val(), eh_grid_n_x(), eh_grid_n_y(), eh_grid_new, and eh_require.

Referenced by sed_cube_load_grid(), sed_cube_slope_dir_grid(), sed_cube_thickness_grid(), sed_cube_water_depth_grid(), sed_cube_x_slope_grid(), and sed_cube_y_slope_grid().

gssize sed_cube_id ( Sed_cube  p,
gssize  i,
gssize  j 
)

Get index from subscripts for a Sed_cube

Parameters:
p A Sed_cube
i First (slow) subscript
j Second (fast) subscript
Returns:
The id corresponding to (i,j)

Definition at line 3728 of file sed_cube.c.

References eh_grid_sub_to_id().

Referenced by sed_cube_col_ij(), and sed_cube_property_subgrid().

Sed_cell_grid sed_cube_in_suspension ( Sed_cube  s,
Sed_riv  river 
)

Definition at line 811 of file sed_cube.c.

References eh_return_val_if_fail, and sed_river_get_susp_grid().

Referenced by construct_deposit_array_3(), deposit_in_ocean(), rain_sediment_3(), run_bbl(), and run_plume_hypo().

Sed_cube sed_cube_increment_age ( Sed_cube  s  ) 

Definition at line 1782 of file sed_cube.c.

References sed_cube_adjust_age(), and sed_cube_time_step().

Referenced by sed_process_queue_run_until().

gboolean sed_cube_is_1d ( Sed_cube  p  ) 

Definition at line 3794 of file sed_cube.c.

References eh_return_val_if_fail.

Referenced by decider(), diffuse_sediment(), fail_check_failure_plane_is_valid(), fail_get_failure_line(), fail_reinit_fail_profile(), get_circle(), get_ellipse(), get_factor_of_safety(), get_tsunami_parameters(), get_zones(), sed_cube_column_id(), sed_cube_is_in_domain_pos(), and xshore().

gboolean sed_cube_is_in_domain ( Sed_cube  p,
gssize  i,
gssize  j 
)

Is i-j subscript within the domain of a Sed_cube

Parameters:
p A Sed_cube
i i-subscript
j j-subscript
Returns:
TRUE if the subscript is within the domain

Definition at line 3754 of file sed_cube.c.

References eh_is_in_domain().

Referenced by deposit_sediment_helper(), diffuse_sediment_2(), rain_sediment_3(), sakura_sed_get_phe(), sed_measure_cube_age(), sed_measure_cube_basement(), sed_measure_cube_clay_fraction(), sed_measure_cube_density(), sed_measure_cube_elevation(), sed_measure_cube_facies(), sed_measure_cube_grain_size(), sed_measure_cube_mud_fraction(), sed_measure_cube_permeability(), sed_measure_cube_porosity(), sed_measure_cube_river_mouth(), sed_measure_cube_sand_fraction(), sed_measure_cube_silt_fraction(), sed_measure_cube_slope(), sed_measure_cube_thickness(), sed_measure_cube_water_depth(), and sed_tripod_measure().

gboolean sed_cube_is_in_domain_id ( Sed_cube  p,
gssize  id 
)

Is id within the domain of a Sed_cube

Parameters:
p A Sed_cube
id One-dimensional id
Returns:
TRUE if the id is within the domain

Definition at line 3767 of file sed_cube.c.

References eh_return_val_if_fail, and sed_cube_size().

Referenced by run_plume_hyper_inflow(), and run_plume_hyper_sakura().

gboolean sed_cube_is_in_domain_pos ( Sed_cube  c,
double  x,
double  y 
)

Definition at line 3774 of file sed_cube.c.

References eh_return_val_if_fail, sed_column_x_position(), sed_column_y_position(), and sed_cube_is_1d().

Referenced by sed_cube_column_id().

gboolean sed_cube_is_shore_edge ( Sed_cube  s,
gssize  i,
gssize  j,
int  edge 
)

Check if the specified edge is a shore edge.

Check if the is a shift from above (below) sea level to below (above) sea level by moving over the given cell's edge.

Parameters:
s A pointer to a Sed_cube.
i First index to a cell of a Sed_cube.
j Second index to a cell of a Sed_cube.
edge An edge of a cell.
Returns:
TRUE if the edge is a shore edge, FALSE otherwise.

Definition at line 2088 of file sed_cube.c.

References eh_is_in_domain(), Eh_ind_2::i, Eh_ind_2::j, sed_column_is_below(), and sed_shift_index_over_edge().

Referenced by sed_cube_find_adjacent_shore_edge().

double sed_cube_load ( const Sed_cube  p,
gssize  i,
gssize  j 
)

Definition at line 1122 of file sed_cube.c.

References eh_require, sed_column_load_at(), sed_cube_col_ij(), and sed_cube_water_pressure().

Eh_dbl_grid sed_cube_load_grid ( const Sed_cube  s,
gssize *  index 
)

Definition at line 765 of file sed_cube.c.

References S_LOAD_FUNC, and sed_cube_grid().

Referenced by init_isostasy_data(), and run_isostasy().

double sed_cube_mass ( const Sed_cube  p  ) 

Definition at line 1376 of file sed_cube.c.

References sed_column_mass(), sed_cube_col(), sed_cube_size(), sed_cube_x_res(), and sed_cube_y_res().

Referenced by diffuse_cols(), main(), run_debris_flow(), run_xshore(), sed_process_run_now(), and xshore().

double sed_cube_mass_in_suspension ( const Sed_cube  p  ) 

Definition at line 1412 of file sed_cube.c.

References eh_free, sed_cell_grid_mass(), sed_cube_all_branches(), SED_CUBE_SUSP_GRID, sed_cube_x_res(), and sed_cube_y_res().

Referenced by run_bbl(), and sed_process_run_now().

gint sed_cube_n_branches ( Sed_cube  s  ) 

Definition at line 913 of file sed_cube.c.

References eh_return_val_if_fail, sed_cube_n_rivers(), and sed_river_n_branches().

Referenced by run_avulsion(), and sed_cube_write().

gint sed_cube_n_rivers ( Sed_cube  s  ) 

Definition at line 928 of file sed_cube.c.

References eh_return_val_if_fail.

Referenced by run_bbl(), sed_cube_n_branches(), and sed_measure_cube_river_mouth().

gssize sed_cube_n_x ( const Sed_cube  s  ) 

Definition at line 473 of file sed_cube.c.

References eh_return_val_if_fail.

Referenced by add_sediment_from_external_source(), avulsion_full(), construct_deposit_array_3(), diffuse_sediment_2(), init_isostasy_data(), init_met_station_data(), init_plume_hypo_data(), rain_sediment_3(), run_bedload(), run_isostasy(), run_plume_hypo(), run_subsidence(), sed_cube_col_ij(), sed_cube_fprint(), and sed_cube_new_from_file().

gssize sed_cube_n_y ( const Sed_cube  s  ) 

Definition at line 479 of file sed_cube.c.

References eh_return_val_if_fail.

Referenced by add_sediment_from_external_source(), avulsion_full(), construct_deposit_array_3(), decider(), diffuse_cols(), diffuse_sediment(), diffuse_sediment_2(), fail_check_failure_plane_is_valid(), fail_get_failure_line(), fail_reinit_fail_profile(), fill_to_bruun(), fill_to_bruun_profile(), get_bruun_a(), get_bruun_y_b(), get_circle(), get_factor_of_safety(), get_failure_surface(), get_janbu_parameters(), get_max_erosion_profile(), get_sediment_flux(), get_tsunami_parameters(), get_zone_boundaries(), get_zone_indices(), get_zones(), inflow_set_width_from_cube(), init_bbl_data(), init_isostasy_data(), init_met_station_data(), init_plume_hypo_data(), init_subsidence_data(), main(), move_sediment(), muddy(), rain_sediment_3(), run_bedload(), run_debris_flow(), run_isostasy(), run_plume_hypo(), run_slump(), run_subsidence(), run_turbidity_inflow(), run_turbidity_sakura(), sakura_set_width_from_cube(), sed_cube_fprint(), sed_cube_new_from_file(), sed_get_phe(), squall(), and xshore().

char* sed_cube_name ( const Sed_cube  s  ) 

Definition at line 461 of file sed_cube.c.

References eh_return_val_if_fail.

Referenced by init_cpr_data(), run_data_dump(), and sed_cube_fprint().

Sed_cube sed_cube_new ( gssize  n_x,
gssize  n_y 
)

Definition at line 93 of file sed_cube.c.

References DEFAULT_BINS, sed_column_new(), sed_column_set_x_position(), sed_column_set_y_position(), and sed_cube_new_empty().

Referenced by avulsion_full(), main(), sed_cube_copy(), sed_cube_copy_cols(), sed_cube_copy_line(), sed_cube_copy_pointer_data(), sed_cube_copy_scalar_data(), sed_cube_new_from_file(), sed_cube_set_bathy(), and test_2d().

Sed_cube sed_cube_new_empty ( gssize  n_x,
gssize  n_y 
)

Definition at line 116 of file sed_cube.c.

References eh_new, eh_return_val_if_fail, NEW_OBJECT, and sed_cell_new_env().

Referenced by sed_cube_cols(), and sed_cube_new().

Sed_cube sed_cube_new_from_file ( const gchar *  file,
GError **  error 
)

Definition at line 176 of file sed_cube.c.

References eh_dbl_grid_val(), eh_free, eh_grid_destroy(), eh_grid_n_x(), eh_grid_n_y(), eh_grid_x(), eh_grid_y(), eh_key_file_destroy(), eh_key_file_get_dbl_value(), eh_key_file_get_value(), eh_key_file_scan(), eh_return_val_if_fail, sed_bathy_grid_scan(), sed_column_set_base_height(), sed_column_set_x_position(), sed_column_set_y_position(), sed_cube_col_ij(), sed_cube_n_x(), sed_cube_n_y(), sed_cube_new(), sed_cube_set_name(), sed_cube_set_x_res(), sed_cube_set_y_res(), sed_cube_set_z_res(), SED_KEY_BATHY_FILE, SED_KEY_MARGIN_NAME, SED_KEY_SEDIMENT_FILE, SED_KEY_V_RES, SED_KEY_X_RES, SED_KEY_Y_RES, sed_sediment_destroy(), sed_sediment_scan(), and sed_sediment_set_env().

Referenced by sedflux_init().

Sed_riv sed_cube_nth_river ( Sed_cube  s,
gint  n 
)

Definition at line 1659 of file sed_cube.c.

Referenced by avulsion_full(), and sed_measure_cube_river_mouth().

gssize sed_cube_number_of_rivers ( Sed_cube  s  ) 

Definition at line 934 of file sed_cube.c.

References eh_return_val_if_fail.

double sed_cube_quake ( const Sed_cube  s  ) 

Definition at line 1058 of file sed_cube.c.

Referenced by get_janbu_parameters().

Sed_cube sed_cube_read ( FILE *  fp  ) 

Read a Sed_cube from a binary file.

Parameters:
fp A pointer to an open file.
Returns:
A pointer to a newly created Sed_cube.

Definition at line 3443 of file sed_cube.c.

References eh_grid_copy(), eh_grid_destroy(), eh_grid_load(), eh_new, eh_require, NEW_OBJECT, sed_cell_read(), sed_column_read(), sed_cube_add_trunk(), sed_cube_set_shore(), sed_river_fread(), sed_river_get_susp_grid(), and sed_river_new().

Referenced by fail_load_fail_profile(), load_debris_flow_data(), and load_turbidity_current_data().

Sed_cube sed_cube_remove ( Sed_cube  dest,
Sed_cube  src 
)

Definition at line 1334 of file sed_cube.c.

References eh_free, eh_new, sed_column_remove(), sed_column_x_position(), sed_column_y_position(), sed_cube_column_id(), and sed_cube_size().

Referenced by run_failure().

Sed_cube sed_cube_remove_all_trunks ( Sed_cube  s  ) 

Definition at line 1626 of file sed_cube.c.

References eh_free, eh_require, sed_cube_all_trunks(), and sed_cube_remove_river().

Referenced by sed_cube_free().

Sed_cube sed_cube_remove_river ( Sed_cube  s,
Sed_riv  r 
)

Definition at line 1608 of file sed_cube.c.

References sed_cube_remove_river(), sed_river_destroy(), sed_river_detach_susp_grid(), sed_river_left(), and sed_river_right().

Referenced by sed_cube_remove_all_trunks(), and sed_cube_remove_river().

Sed_riv sed_cube_river_by_name ( Sed_cube  s,
const char *  name 
)

Definition at line 771 of file sed_cube.c.

References sed_river_name_cmp().

Referenced by init_avulsion_data(), run_avulsion(), run_bedload(), and sed_cube_split_river().

gssize sed_cube_river_id ( Sed_cube  s,
Sed_riv  river 
)

Definition at line 805 of file sed_cube.c.

GList* sed_cube_river_list ( Sed_cube  s  ) 

Definition at line 825 of file sed_cube.c.

Referenced by deposit_sediment_at_river_mouth(), sed_cube_all_branches(), sed_cube_all_leaves(), sed_cube_all_rivers(), sed_cube_all_trunks(), sed_merge_all_rivers(), and sed_split_all_rivers().

gssize sed_cube_river_mouth_1d ( Sed_cube  c  ) 

Definition at line 1306 of file sed_cube.c.

References eh_clamp, eh_require, and sed_cube_water_depth().

Referenced by deposit_in_river(), erode_profile(), fail_examine_fail_profile(), get_bruun_zones(), main(), muddy(), run_bedload(), run_plume_hyper_inflow(), and run_plume_hyper_sakura().

Eh_pt_2* sed_cube_river_mouth_position ( Sed_cube  s,
Sed_riv  this_river 
)

Definition at line 1489 of file sed_cube.c.

References eh_create_pt_2(), eh_destroy_polygon(), eh_find_polygon_crossings(), eh_get_rectangle_polygon(), eh_require, eh_require_not_reached, Eh_ind_2::i, Eh_ind_2::j, POLYGON_IN_CROSSINGS, sed_cube_x_res(), sed_cube_y_res(), sed_river_angle(), sed_river_hinge(), and sed_river_mouth().

Referenced by run_bedload().

GList* sed_cube_river_path ( Sed_cube  c,
Sed_riv  river 
)

Definition at line 2526 of file sed_cube.c.

References sed_cube_find_line_path(), sed_river_angle(), and sed_river_hinge().

gssize* sed_cube_river_path_id ( Sed_cube  c,
Sed_riv  river,
gboolean  down_stream 
)

Definition at line 2480 of file sed_cube.c.

References eh_free, eh_grid_sub_to_id(), eh_new, eh_require, sed_cube_find_line_path(), sed_river_angle(), and sed_river_hinge().

Referenced by deposit_in_river(), and erode_river_profile().

double sed_cube_sea_level ( const Sed_cube  s  ) 

Definition at line 524 of file sed_cube.c.

References eh_return_val_if_fail.

Referenced by diffuse_sediment(), get_bruun_zones(), rain_sediment_3(), run_avulsion(), run_isostasy(), run_new_process(), run_sea_level(), run_xshore(), and sed_property_file_header_new().

double sed_cube_sediment_mass ( const Sed_cube  p  ) 

Definition at line 1394 of file sed_cube.c.

References eh_require, sed_column_sediment_mass(), sed_cube_col(), sed_cube_size(), sed_cube_x_res(), and sed_cube_y_res().

Referenced by _sed_diag_mass().

Sed_cube sed_cube_set_age ( Sed_cube  s,
double  new_age 
)

Definition at line 1768 of file sed_cube.c.

References eh_require.

Referenced by run_xshore(), sed_cube_adjust_age(), and sed_process_queue_run_until().

Sed_cube sed_cube_set_base_height ( Sed_cube  s,
gssize  i,
gssize  j,
double  height 
)

Definition at line 1458 of file sed_cube.c.

References sed_column_set_base_height(), and sed_cube_col_ij().

Referenced by test_2d().

Sed_cube sed_cube_set_bathy ( Sed_cube  c,
Eh_dbl_grid  g 
)

Definition at line 426 of file sed_cube.c.

References eh_dbl_grid_val(), eh_grid_n_x(), eh_grid_n_y(), eh_require, eh_return_val_if_fail, sed_column_set_base_height(), and sed_cube_new().

Referenced by avulsion_full().

Sed_cube sed_cube_set_dz ( Sed_cube  p,
double  new_dz 
)

Definition at line 447 of file sed_cube.c.

References eh_return_val_if_fail, sed_column_set_z_res(), sed_cube_col(), and sed_cube_size().

Referenced by avulsion_full().

Sed_cube sed_cube_set_name ( Sed_cube  s,
char *  name 
)

Definition at line 1676 of file sed_cube.c.

References eh_free, and eh_require.

Referenced by sed_cube_new_from_file().

Sed_cube sed_cube_set_nth_river ( Sed_cube  s,
gssize  n,
Sed_riv  new_river 
)

Definition at line 1473 of file sed_cube.c.

References eh_require, and sed_river_copy().

Sed_cube sed_cube_set_quake ( Sed_cube  s,
double  new_quake_value 
)

Definition at line 1759 of file sed_cube.c.

References eh_require.

Referenced by run_quake().

Sed_cube sed_cube_set_river_list ( Sed_cube  s,
GList *  river_list 
)

Definition at line 1546 of file sed_cube.c.

Referenced by sed_merge_all_rivers(), and sed_split_all_rivers().

Sed_cube sed_cube_set_sea_level ( Sed_cube  s,
double  new_sea_level 
)

Definition at line 1440 of file sed_cube.c.

References sed_column_set_sea_level(), sed_cube_col(), and sed_cube_size().

Referenced by get_bruun_zones(), main(), rain_sediment_3(), run_new_process(), run_sea_level(), run_xshore(), and sed_cube_adjust_sea_level().

void sed_cube_set_shore ( Sed_cube  s  ) 

Definition at line 1813 of file sed_cube.c.

References sed_cube_find_shore(), sed_cube_find_shore_line(), VARY_COLS, and VARY_ROWS.

Referenced by sed_cube_read().

Sed_cube sed_cube_set_storm ( Sed_cube  s,
double  new_storm_value 
)

Definition at line 1753 of file sed_cube.c.

Referenced by run_storm().

Sed_cube sed_cube_set_storm_list ( Sed_cube  c,
GSList *  storms 
)

Definition at line 401 of file sed_cube.c.

References sed_cube_destroy_storm_list().

Referenced by run_storm().

Sed_cube sed_cube_set_tidal_period ( Sed_cube  s,
double  new_val 
)

Definition at line 1078 of file sed_cube.c.

Referenced by run_tide().

Sed_cube sed_cube_set_tidal_range ( Sed_cube  s,
double  new_val 
)

Definition at line 1089 of file sed_cube.c.

Referenced by run_tide().

Sed_cube sed_cube_set_time_step ( Sed_cube  s,
double  time_step_in_years 
)

Definition at line 1686 of file sed_cube.c.

References eh_require.

Referenced by main(), run_river(), sed_epoch_queue_run(), and sed_epoch_queue_tic().

Sed_cube sed_cube_set_wave_height ( Sed_cube  s,
double  new_wave_height 
)

Definition at line 1735 of file sed_cube.c.

Referenced by main().

Sed_cube sed_cube_set_wave_length ( Sed_cube  s,
double  new_wave_length 
)

Definition at line 1747 of file sed_cube.c.

Referenced by main().

Sed_cube sed_cube_set_wave_period ( Sed_cube  s,
double  new_wave_period 
)

Definition at line 1741 of file sed_cube.c.

Sed_cube sed_cube_set_x_res ( Sed_cube  s,
double  new_x_res 
)

Definition at line 1704 of file sed_cube.c.

References eh_require.

Referenced by deposit_in_river(), erode_river_profile(), main(), sed_cube_new_from_file(), and test_2d().

Sed_cube sed_cube_set_y_res ( Sed_cube  s,
double  new_y_res 
)

Definition at line 1713 of file sed_cube.c.

References eh_require.

Referenced by deposit_in_river(), erode_river_profile(), main(), sed_cube_new_from_file(), and test_2d().

Sed_cube sed_cube_set_z_res ( Sed_cube  s,
double  new_z_res 
)

Definition at line 1722 of file sed_cube.c.

References eh_require, sed_column_set_z_res(), sed_cube_col(), and sed_cube_size().

Referenced by main(), and sed_cube_new_from_file().

gssize sed_cube_size ( const Sed_cube  s  ) 

Definition at line 467 of file sed_cube.c.

References eh_return_val_if_fail.

Referenced by bio_run(), inflow_set_bathy_data_from_cube(), init_met_station_data(), rain_3(), run_bioturbation(), run_compaction(), run_flow(), run_isostasy(), sakura_set_bathy_data_from_cube(), sed_cube_add(), sed_cube_col(), sed_cube_col_ij(), sed_cube_col_x(), sed_cube_col_y(), sed_cube_cols(), sed_cube_count_above(), sed_cube_fprint(), sed_cube_free(), sed_cube_is_in_domain_id(), sed_cube_mass(), sed_cube_max_height(), sed_cube_min_height(), sed_cube_property_subgrid(), sed_cube_remove(), sed_cube_sediment_mass(), sed_cube_set_dz(), sed_cube_set_sea_level(), sed_cube_set_z_res(), sed_cube_to_cell(), sed_cube_write(), sed_cube_x_cols_between(), sed_cube_y_cols_between(), and sed_tripod_write().

double sed_cube_slope ( const Sed_cube  s,
gssize  i,
gssize  j 
)

Definition at line 664 of file sed_cube.c.

References sed_cube_x_slope(), and sed_cube_y_slope().

Referenced by muddy(), and sed_measure_cube_slope().

double sed_cube_slope_dir ( const Sed_cube  s,
gssize  i,
gssize  j 
)

Definition at line 674 of file sed_cube.c.

References sed_cube_x_slope(), and sed_cube_y_slope().

Referenced by run_plume_hypo().

Eh_dbl_grid sed_cube_slope_dir_grid ( const Sed_cube  s,
gssize *  index 
)

Definition at line 740 of file sed_cube.c.

References S_SLOPE_DIR_FUNC, and sed_cube_grid().

Referenced by diffuse_sediment_2().

Eh_pt_2 sed_cube_slope_vector ( const Sed_cube  s,
gssize  i,
gssize  j 
)

Definition at line 684 of file sed_cube.c.

References eh_require, sed_cube_x_slope(), sed_cube_y_slope(), Eh_pt_2::x, and Eh_pt_2::y.

Referenced by sed_cube_find_cross_shore_columns().

Sed_cube sed_cube_split_river ( Sed_cube  s,
const gchar *  name 
)

Definition at line 1553 of file sed_cube.c.

References sed_cube_create_in_suspension(), sed_cube_river_by_name(), sed_river_attach_susp_grid(), sed_river_left(), sed_river_longest_branch(), sed_river_right(), and sed_river_split().

Referenced by run_avulsion().

double sed_cube_storm ( const Sed_cube  s  ) 

Definition at line 1053 of file sed_cube.c.

Referenced by diffuse_profile(), and run_diffusion().

GSList* sed_cube_storm_list ( Sed_cube  c  ) 

Definition at line 395 of file sed_cube.c.

References eh_return_val_if_fail.

Referenced by run_xshore().

Eh_ind_2 sed_cube_sub ( Sed_cube  p,
gssize  id 
)

Get subscripts from an id for a Sed_cube

Parameters:
p A Sed_cube
id A one-dimensional index
Returns:
The (i,j) subscript corresponding to an id

Definition at line 3740 of file sed_cube.c.

References eh_grid_id_to_sub().

Referenced by sed_cube_x_cols_between(), and sed_cube_y_cols_between().

GQuark sed_cube_susp_grid_quark ( void   ) 

Definition at line 52 of file sed_cube.c.

double sed_cube_thickness ( const Sed_cube  p,
gssize  i,
gssize  j 
)

Definition at line 1138 of file sed_cube.c.

References sed_column_thickness().

Referenced by decider(), get_failure_surface(), get_janbu_parameters(), get_tsunami_parameters(), run_debris_flow(), sakura_sed_get_phe(), sed_cube_to_cell(), sed_get_phe(), and sed_measure_cube_thickness().

Eh_dbl_grid sed_cube_thickness_grid ( const Sed_cube  s,
gssize *  index 
)

Definition at line 760 of file sed_cube.c.

References S_THICKNESS_FUNC, and sed_cube_grid().

double sed_cube_tidal_period ( const Sed_cube  s  ) 

Definition at line 1073 of file sed_cube.c.

double sed_cube_tidal_range ( const Sed_cube  s  ) 

Definition at line 1084 of file sed_cube.c.

Referenced by rain_sediment_3().

double sed_cube_time_step ( const Sed_cube  s  ) 

Definition at line 940 of file sed_cube.c.

References eh_require.

Referenced by sed_cube_increment_age(), and sed_process_queue_run_until().

double sed_cube_time_step_in_days ( const Sed_cube  s  ) 

Definition at line 958 of file sed_cube.c.

References eh_require, and S_DAYS_PER_YEAR.

Referenced by diffuse_profile(), rain_sediment_3(), run_bedload(), run_diffusion(), run_plume_hypo(), and run_tide().

double sed_cube_time_step_in_seconds ( const Sed_cube  s  ) 

Definition at line 952 of file sed_cube.c.

References eh_require, and S_SECONDS_PER_YEAR.

Referenced by bio_run(), run_bedload(), run_bioturbation(), run_plume_hypo(), and run_river().

double sed_cube_time_step_in_years ( const Sed_cube  s  ) 

Definition at line 946 of file sed_cube.c.

References eh_require.

Referenced by run_river().

Sed_cell sed_cube_to_add ( const Sed_cube  s  ) 

Definition at line 994 of file sed_cube.c.

References eh_require.

Referenced by run_river().

Sed_cell sed_cube_to_cell ( Sed_cube  c,
Sed_cell  d 
)

Definition at line 3842 of file sed_cube.c.

References sed_cell_add(), sed_cell_clear(), sed_cell_destroy(), sed_cell_new_env(), sed_column_top(), sed_cube_col(), sed_cube_size(), and sed_cube_thickness().

Referenced by run_turbidity_inflow(), and run_turbidity_sakura().

Sed_cell sed_cube_to_remove ( const Sed_cube  s  ) 

Definition at line 988 of file sed_cube.c.

References eh_require.

Referenced by run_river().

double sed_cube_top_height ( const Sed_cube  p,
gssize  i,
gssize  j 
)

Definition at line 696 of file sed_cube.c.

References sed_column_top_height(), and sed_cube_col_ij().

Referenced by diffuse_sediment(), erode_profile(), fail_check_failure_plane_is_valid(), fail_get_janbu_parameters(), get_circle(), get_ellipse(), get_failure_surface(), sed_cube_max_height(), and sed_measure_cube_elevation().

double sed_cube_water_depth ( const Sed_cube  p,
gssize  i,
gssize  j 
)

Definition at line 1095 of file sed_cube.c.

References eh_require, sed_column_water_depth(), and sed_cube_col_ij().

Referenced by add_sediment_from_external_source(), avulsion_full(), construct_deposit_array_3(), diffuse_sediment(), diffuse_sediment_2(), fill_to_bruun(), fill_to_bruun_profile(), get_bruun_a(), get_erosion_rate_from_profile(), get_max_erosion_profile(), get_shoreface_slope(), get_tsunami_parameters(), get_zone_boundaries(), main(), move_sediment(), muddy(), rain_sediment_3(), run_debris_flow(), run_failure(), sakura_sed_get_depth(), sed_cube_find_cross_shore_columns(), sed_cube_river_mouth_1d(), sed_cube_water_pressure(), sed_cube_x_slope(), sed_cube_y_slope(), sed_cube_y_slope_fast(), sed_measure_cube_water_depth(), squall(), test_2d(), update_bruun_zone_data(), and xshore().

Eh_dbl_grid sed_cube_water_depth_grid ( const Sed_cube  s,
gssize *  index 
)

Definition at line 755 of file sed_cube.c.

References S_WATER_DEPTH_FUNC, and sed_cube_grid().

Referenced by diffuse_sediment_2(), get_sediment_flux(), inflow_set_bathy_data_from_cube(), and sakura_set_bathy_data_from_cube().

double sed_cube_water_pressure ( const Sed_cube  p,
gssize  i,
gssize  j 
)

Definition at line 1106 of file sed_cube.c.

References eh_require, sed_cube_water_depth(), sed_gravity(), and sed_rho_sea_water().

Referenced by init_isostasy_data(), run_isostasy(), and sed_cube_load().

double sed_cube_wave_height ( const Sed_cube  s  ) 

Definition at line 1038 of file sed_cube.c.

Referenced by get_erosion_rate_from_profile(), run_squall(), and squall().

double sed_cube_wave_length ( const Sed_cube  s  ) 

Definition at line 1048 of file sed_cube.c.

Referenced by run_squall(), and squall().

double sed_cube_wave_period ( const Sed_cube  s  ) 

Definition at line 1043 of file sed_cube.c.

Referenced by run_squall(), and squall().

gssize sed_cube_write ( FILE *  fp,
const Sed_cube  p 
)

Write a Sed_cube to a binary file.

Todo:
Members storm_list, shore, and constants are not written. Fix this.
Parameters:
fp A pointer to an open file.
p A pointer to a Sed_cube .

Definition at line 3374 of file sed_cube.c.

References eh_free, eh_grid_dump(), sed_cell_write(), sed_column_write(), sed_cube_all_branches(), sed_cube_n_branches(), sed_cube_size(), sed_river_fwrite(), and sed_river_get_susp_grid().

Referenced by dump_debris_flow_data(), dump_turbidity_current_data(), fail_dump_fail_profile(), and run_cpr().

double* sed_cube_x ( const Sed_cube  s,
gssize *  id 
)

Definition at line 530 of file sed_cube.c.

References eh_new, eh_return_val_if_fail, sed_column_x_position(), and sed_cube_col().

double sed_cube_x_res ( const Sed_cube  s  ) 

Definition at line 970 of file sed_cube.c.

References eh_require.

Referenced by add_sediment_from_external_source(), deposit_in_ocean(), deposit_in_river(), diffuse_cols(), diffuse_profile(), diffuse_sediment_2(), erode_profile(), erode_river_profile(), inflow_deposit_sediment(), inflow_erode_sediment(), inflow_set_width_from_cube(), init_bbl_data(), init_subsidence_data(), main(), run_bedload(), run_isostasy(), run_plume_hypo(), run_river(), run_turbidity_inflow(), run_turbidity_sakura(), run_xshore(), sakura_deposit_sediment(), sakura_erode_sediment(), sakura_sed_add_sediment(), sakura_sed_get_phe(), sakura_sed_remove_sediment(), sakura_set_width_from_cube(), sed_cube_area_above(), sed_cube_fprint(), sed_cube_mass(), sed_cube_mass_in_suspension(), sed_cube_property_subgrid(), sed_cube_river_mouth_position(), sed_cube_sediment_mass(), sed_cube_x_slope(), sed_property_file_header_new(), sed_tripod_measure(), and xshore().

double sed_cube_x_slope ( const Sed_cube  s,
gssize  i,
gssize  j 
)

Definition at line 610 of file sed_cube.c.

References eh_is_in_domain(), eh_require, sed_cube_water_depth(), and sed_cube_x_res().

Referenced by sed_cube_slope(), sed_cube_slope_dir(), and sed_cube_slope_vector().

Eh_dbl_grid sed_cube_x_slope_grid ( const Sed_cube  s,
gssize *  index 
)

Definition at line 745 of file sed_cube.c.

References S_X_SLOPE_FUNC, and sed_cube_grid().

Referenced by diffuse_sediment_2().

double* sed_cube_y ( const Sed_cube  s,
gssize *  id 
)

Definition at line 557 of file sed_cube.c.

References eh_new, eh_return_val_if_fail, sed_column_y_position(), and sed_cube_col().

Referenced by inflow_set_bathy_data_from_cube(), init_bbl_data(), init_subsidence_data(), sakura_set_bathy_data_from_cube(), and xshore().

double sed_cube_y_res ( const Sed_cube  s  ) 

Definition at line 976 of file sed_cube.c.

References eh_require.

Referenced by add_sediment_from_external_source(), deposit_in_ocean(), deposit_in_river(), diffuse_cols(), diffuse_profile(), diffuse_sediment(), diffuse_sediment_2(), erode_profile(), erode_river_profile(), get_bruun_a(), get_bruun_y_0(), get_circle(), get_ellipse(), get_janbu_parameters(), get_sediment_flux(), get_time_step(), get_tsunami_parameters(), inflow_deposit_sediment(), inflow_erode_sediment(), inflow_set_width_from_cube(), init_bbl_data(), init_subsidence_data(), main(), muddy(), run_bedload(), run_debris_flow(), run_isostasy(), run_plume_hypo(), run_river(), run_turbidity_inflow(), run_turbidity_sakura(), run_xshore(), sakura_deposit_sediment(), sakura_erode_sediment(), sakura_sed_add_sediment(), sakura_sed_get_phe(), sakura_sed_remove_sediment(), sakura_set_width_from_cube(), sed_cube_area_above(), sed_cube_fprint(), sed_cube_mass(), sed_cube_mass_in_suspension(), sed_cube_property_subgrid(), sed_cube_river_mouth_position(), sed_cube_sediment_mass(), sed_cube_y_slope(), sed_cube_y_slope_fast(), sed_get_phe(), sed_property_file_header_new(), sed_tripod_measure(), squall(), and xshore().

double sed_cube_y_slope ( const Sed_cube  s,
gssize  i,
gssize  j 
)

Definition at line 632 of file sed_cube.c.

References eh_is_in_domain(), eh_require, sed_cube_water_depth(), and sed_cube_y_res().

Referenced by diffuse_sediment(), get_sediment_flux(), move_sediment(), sed_cube_slope(), sed_cube_slope_dir(), sed_cube_slope_vector(), and update_bruun_zone_data().

double sed_cube_y_slope_fast ( const Sed_cube  s,
gssize  i,
gssize  j 
)

Definition at line 654 of file sed_cube.c.

References eh_is_in_domain(), eh_require, sed_cube_water_depth(), and sed_cube_y_res().

Eh_dbl_grid sed_cube_y_slope_grid ( const Sed_cube  s,
gssize *  index 
)

Definition at line 750 of file sed_cube.c.

References S_Y_SLOPE_FUNC, and sed_cube_grid().

Referenced by diffuse_sediment_2(), and get_sediment_flux().

double sed_cube_z_res ( const Sed_cube  s  ) 

Definition at line 982 of file sed_cube.c.

References eh_require.

Referenced by rain_sediment_3(), sed_cube_fprint(), sed_cube_n_rows_between(), sed_cube_property_subgrid(), sed_property_file_header_new(), and squall().

GList* sed_find_next_shore ( GList *  shore_list,
Sed_cube  s,
Eh_ind_2 pos,
GList *  ignore_list 
)

Definition at line 1860 of file sed_cube.c.

References eh_compare_ind_2(), eh_ind_2_create(), eh_ind_2_dup(), Eh_ind_2::i, is_shore_cell(), and Eh_ind_2::j.

Referenced by sed_cube_find_shore_line().

Eh_ind_2* sed_find_river_mouth ( Sed_cube  c,
Eh_ind_2 hinge_pos,
double  angle 
)

Definition at line 2320 of file sed_cube.c.

References eh_free, eh_ind_2_dup(), and sed_cube_find_river_path().

Referenced by sed_cube_find_river_mouth().

GArray* sed_get_floor ( char *  file,
GArray *  y_array,
GError **  error 
)

Read elevation data from a file into a GArray.

Read a file of elevation data and interpolate to specified x-positions. This differs from sed_get_floor_vec in that here the input x-positions and output elevations are held in GArray's rather than standard arrays.

Parameters:
file A name of an elevation file.
y_array A GArray of y-positions.
error A GError
Returns:
A GArray of the elevation data.
See also:
sed_get_floor_vec .

Definition at line 3646 of file sed_cube.c.

References eh_data_record_destroy(), eh_data_record_row(), eh_data_record_scan_file(), eh_data_record_size(), eh_dbl_array_is_monotonic_up(), EH_FAST_DIM_COL, eh_free, eh_isnan(), eh_return_val_if_fail, and interpolate().

Referenced by main(), and sed_get_floor_vec().

Eh_dbl_grid sed_get_floor_3_default ( int  floor_type,
int  n_x,
int  n_y 
)

Definition at line 2712 of file sed_cube.c.

References eh_dbl_grid_set_val(), and eh_grid_new.

Referenced by avulsion_full().

Eh_sequence* sed_get_floor_sequence_2 ( const char *  file,
double *  y_i,
gssize  n_yi,
GError **  error 
)

Definition at line 2810 of file sed_cube.c.

References eh_add_to_sequence(), eh_create_sequence(), eh_dbl_array_is_monotonic_up(), eh_dlm_read_full_swap(), eh_free, eh_free_2, eh_grid_data_start(), eh_grid_n_y(), eh_grid_new, eh_grid_y(), eh_new, eh_return_val_if_fail, eh_str_parse_key_value(), eh_symbol_table_dbl_value(), eh_symbol_table_destroy(), eh_symbol_table_has_label(), interpolate(), S_KEY_SUBSIDENCE_TIME, SED_CUBE_ERROR, SED_CUBE_ERROR_DATA_BAD_RANGE, SED_CUBE_ERROR_DATA_NOT_MONOTONIC, SED_CUBE_ERROR_INSUFFICIENT_DATA, SED_CUBE_ERROR_NO_TIME_LABEL, SED_CUBE_ERROR_NOT_TWO_COLUMNS, and SED_CUBE_ERROR_TIME_NOT_MONOTONIC.

Referenced by init_bbl_data(), and init_subsidence_data().

Eh_sequence* sed_get_floor_sequence_3 ( const char *  file,
double  dx,
double  dy,
GError **  error 
)

Definition at line 2941 of file sed_cube.c.

References eh_add_to_sequence(), eh_create_sequence(), eh_fopen_error(), eh_fread_dbl_swap, eh_fread_int32_swap, eh_grid_data_start(), eh_grid_new, eh_grid_x(), eh_grid_y(), eh_return_val_if_fail, Eh_sequence::len, SED_CUBE_ERROR, SED_CUBE_ERROR_BAD_GRID_DIMENSION, SED_CUBE_ERROR_TIME_NOT_MONOTONIC, SED_CUBE_ERROR_TRUNCATED_FILE, and Eh_sequence::t.

Referenced by init_bbl_data(), and init_subsidence_data().

int sed_get_floor_vec ( char *  filename,
double *  y,
int  len,
double *  z,
GError **  error 
)

Read floor elevation data from a file into an array.

Read a file of elevation data and interpolate to specified x-positions. The output vector, y must be allocated enough size to hold the elevation data.

Parameters:
filename A name of an input file.
y A pointer to an array of y-positions.
len Number of positions (length of x, and y).
z A pointer to an array of elevations.
error A GError
Returns:
The number of elevation data read.
See also:
sed_get_floor .

Definition at line 3580 of file sed_cube.c.

References eh_require, eh_return_val_if_fail, and sed_get_floor().

Referenced by main().

Eh_ind_2 sed_ind2sub ( gssize  ind,
gssize  n_y 
)

Definition at line 701 of file sed_cube.c.

References floor, Eh_ind_2::i, and Eh_ind_2::j.

gboolean sed_mode_is ( Sedflux_mode  mode  ) 

Definition at line 74 of file sed_cube.c.

gboolean sed_mode_is_2d ( void   ) 

Definition at line 80 of file sed_cube.c.

References SEDFLUX_MODE_2D.

Referenced by run_avulsion(), run_isostasy(), run_plume_hyper_inflow(), run_plume_hyper_sakura(), run_plume_hypo(), sed_bathy_grid_scan(), and sedflux_init().

gboolean sed_mode_is_3d ( void   ) 

Definition at line 86 of file sed_cube.c.

References SEDFLUX_MODE_3D.

Referenced by deposit_in_river(), erode_river_profile(), init_avulsion(), init_bbl(), init_bbl_data(), init_plume_hypo(), init_subsidence_data(), run_bedload(), run_diffusion(), run_isostasy(), run_plume_hypo(), run_turbidity_inflow(), run_turbidity_sakura(), run_xshore(), sed_bathy_grid_scan(), sedflux_get_file_name_interactively(), and sedflux_init().

void sed_mode_set ( Sedflux_mode  mode  ) 

Definition at line 66 of file sed_cube.c.

References SEDFLUX_MODE_NOT_SET.

Referenced by sedflux_parse_command_line().

void sed_river_attach_susp_grid ( Sed_riv  r,
Sed_cell_grid  g 
)

Definition at line 1577 of file sed_cube.c.

References eh_require, sed_cube_destroy_in_suspension(), and SED_CUBE_SUSP_GRID.

Referenced by sed_cube_add_trunk(), and sed_cube_split_river().

void sed_river_detach_susp_grid ( Sed_riv  r  ) 

Definition at line 1590 of file sed_cube.c.

References SED_CUBE_SUSP_GRID.

Referenced by sed_cube_remove_river().

Sed_cell_grid sed_river_get_susp_grid ( Sed_riv  r  ) 

Definition at line 1584 of file sed_cube.c.

References SED_CUBE_SUSP_GRID.

Referenced by sed_cube_in_suspension(), sed_cube_read(), and sed_cube_write().

int sed_rotate_direction ( int  dir,
int  angle 
)

Rotate directions in jumps of 90 degrees.

Given a cardinal direction, find the direction that is rotated by a given number of 90-degree jumps. Positive jumps are counter-clockwise.

Parameters:
dir A cardinal direction.
angle The number of 90-degree jumps to make.
Returns:
A new direction.

Definition at line 2069 of file sed_cube.c.

Referenced by sed_cube_find_adjacent_shore_edge().

double** sed_scan_sea_level_curve ( const char *  file,
gint *  len,
GError **  err 
)

Definition at line 2752 of file sed_cube.c.

References eh_dbl_array_is_monotonic_up(), eh_dlm_read_swap(), eh_free_2, eh_return_val_if_fail, SED_CUBE_ERROR, SED_CUBE_ERROR_DATA_BAD_RANGE, SED_CUBE_ERROR_INSUFFICIENT_DATA, SED_CUBE_ERROR_NOT_TWO_COLUMNS, and SED_CUBE_ERROR_TIME_NOT_MONOTONIC.

Referenced by init_sea_level().

Eh_ind_2 sed_shift_index_over_edge ( gssize  i,
gssize  j,
int  edge 
)

Get the indices of the cell accross some cell's edge.

Parameters:
i The first index to a cell within a rectangular grid.
j The second index to a cell within a rectangular grid.
edge The edge of the cell over which to move.
Returns:
The indices of the new cell.

Definition at line 2110 of file sed_cube.c.

References Eh_ind_2::i, Eh_ind_2::j, S_EAST_EDGE, S_NORTH_EDGE, S_SOUTH_EDGE, and S_WEST_EDGE.

Referenced by sed_cube_find_adjacent_shore_edge(), and sed_cube_is_shore_edge().

Sed_cube set_cube_set_constants ( Sed_cube  s,
Sed_constants  new_c 
)

Definition at line 1695 of file sed_cube.c.

References eh_require.

Referenced by run_constants().


Generated on Fri Jan 4 18:04:17 2008 for sedflux by  doxygen 1.5.2