/Users/huttone/Devel/sedflux-new/sedflux/trunk/ew/avulsion/avulsion_main.c File Reference

#include <stdio.h>
#include <math.h>
#include <glib.h>
#include <utils/utils.h>
#include <sed/sed_sedflux.h>
#include "avulsion.h"

Go to the source code of this file.

Classes

struct  stream_st

Enumerations

enum  Avulsion_out_type { AVULSION_OUTPUT_ANGLES, AVULSION_OUTPUT_DEPTHS }

Functions

int avulsion_lite (void)
int avulsion_full (void)
int main (int argc, char *argv[])
GList * avulse_streams (GList *streams)
GList * create_streams (GList *streams, double alpha)
GList * merge_streams (GList *streams, double eps)
GList * print_streams (GList *streams)
GList * print_streams_as_table (GList *streams)
void avulse_stream (stream_st *stream, gpointer data)
int sort_streams_by_angle (stream_st *s1, stream_st *s2)
int sort_streams_by_discharge (stream_st *s1, stream_st *s2)
int sort_streams_by_id (stream_st *s1, stream_st *s2)
void combine_rivers (Sed_riv r_1, Sed_riv r_2)
void sed_merge_all_rivers (Sed_cube c, double eps)
GList * merge_rivers (GList *rivers, double eps)
int sort_rivers_by_angle (Sed_riv r_1, Sed_riv r_2)
int sort_rivers_by_discharge (Sed_riv r_1, Sed_riv r_2)
void combine_river_discharge (Sed_riv r_1, Sed_riv r_2)
Sed_riv split_river_discharge (Sed_riv r_1, Sed_riv r_2)
void sed_split_all_rivers (Sed_cube c, double alpha)
GList * create_rivers (GList *rivers, double alpha)
void deposit_sediment_at_river_mouth (Sed_cube c)
void deposit_sediment_helper (Sed_riv this_river, Sed_cube c)

Variables

Avulsion_out_type output_type


Enumeration Type Documentation

enum Avulsion_out_type

Enumerator:
AVULSION_OUTPUT_ANGLES 
AVULSION_OUTPUT_DEPTHS 

Definition at line 76 of file avulsion_main.c.


Function Documentation

void avulse_stream ( stream_st stream,
gpointer  data 
)

GList* avulse_streams ( GList *  streams  ) 

int avulsion_full ( void   ) 

Definition at line 206 of file avulsion_main.c.

References avulsion_new(), AVULSION_OUTPUT_ANGLES, AVULSION_OUTPUT_DEPTHS, deposit_sediment_at_river_mouth(), eh_dlm_read(), eh_free_2, eh_grid_destroy(), eh_grid_n_x(), eh_grid_n_y(), eh_new_2, eh_require, eh_status_bar_destroy(), eh_status_bar_new(), output_type, S_DEGREES_PER_RAD, S_RADS_PER_DEGREE, sed_cube_add_trunk(), sed_cube_avulse_all_rivers(), sed_cube_n_x(), sed_cube_n_y(), sed_cube_new(), sed_cube_nth_river(), sed_cube_set_bathy(), sed_cube_set_dz(), sed_cube_water_depth(), sed_get_floor_3_default(), sed_hydro_scan(), sed_river_angle(), sed_river_new(), sed_river_set_angle(), sed_river_set_angle_limit(), sed_river_set_avulsion_data(), sed_river_set_hinge(), sed_river_set_hydro(), sed_sediment_destroy(), sed_sediment_scan(), sed_sediment_set_env(), SED_SEDIMENT_TEST_FILE, and sed_sediment_unset_env().

Referenced by main().

int avulsion_lite ( void   ) 

Definition at line 152 of file avulsion_main.c.

References avulsion(), and S_DEGREES_PER_RAD.

Referenced by main().

void combine_river_discharge ( Sed_riv  r_1,
Sed_riv  r_2 
)

Definition at line 451 of file avulsion_main.c.

References eh_require, sed_river_depth(), sed_river_set_width(), sed_river_velocity(), and sed_river_water_flux().

Referenced by merge_rivers().

void combine_rivers ( Sed_riv  r_1,
Sed_riv  r_2 
)

GList * create_rivers ( GList *  rivers,
double  alpha 
)

Definition at line 499 of file avulsion_main.c.

References sed_river_angle(), sed_river_destroy(), sed_river_dup(), sed_river_set_angle(), sed_river_set_width(), sort_rivers_by_angle(), and split_river_discharge().

Referenced by sed_split_all_rivers().

GList* create_streams ( GList *  streams,
double  alpha 
)

void deposit_sediment_at_river_mouth ( Sed_cube  c  ) 

Definition at line 336 of file avulsion_main.c.

References deposit_sediment_helper(), and sed_cube_river_list().

Referenced by avulsion_full().

void deposit_sediment_helper ( Sed_riv  this_river,
Sed_cube  c 
)

Definition at line 341 of file avulsion_main.c.

References eh_free, eh_get_fuzzy_dbl(), eh_new, Eh_ind_2::i, Eh_ind_2::j, sed_cell_destroy(), sed_cell_new_sized(), sed_cell_resize(), sed_cell_size(), sed_column_add_cell(), sed_column_water_depth(), sed_cube_col_ij(), sed_cube_find_river_mouth(), sed_cube_is_in_domain(), sed_river_mouth(), and sed_sediment_env_n_types().

Referenced by deposit_sediment_at_river_mouth().

int main ( int  argc,
char *  argv[] 
)

Definition at line 85 of file avulsion_main.c.

References avulsion_full(), avulsion_lite(), AVULSION_MAJOR_VERSION, AVULSION_MICRO_VERSION, AVULSION_MINOR_VERSION, AVULSION_OUTPUT_ANGLES, AVULSION_OUTPUT_DEPTHS, AVULSION_PROGRAM_NAME, eh_fprint_version_info(), eh_new0, eh_require_not_reached, eh_set_verbosity_level(), output_type, and S_RADS_PER_DEGREE.

GList * merge_rivers ( GList *  rivers,
double  eps 
)

Definition at line 383 of file avulsion_main.c.

References combine_river_discharge(), sed_river_angle(), sort_rivers_by_angle(), and sort_rivers_by_discharge().

Referenced by sed_merge_all_rivers().

GList* merge_streams ( GList *  streams,
double  eps 
)

GList* print_streams ( GList *  streams  ) 

GList* print_streams_as_table ( GList *  streams  ) 

void sed_merge_all_rivers ( Sed_cube  c,
double  eps 
)

Definition at line 377 of file avulsion_main.c.

References merge_rivers(), sed_cube_river_list(), and sed_cube_set_river_list().

void sed_split_all_rivers ( Sed_cube  c,
double  alpha 
)

Definition at line 494 of file avulsion_main.c.

References create_rivers(), sed_cube_river_list(), and sed_cube_set_river_list().

int sort_rivers_by_angle ( Sed_riv  r_1,
Sed_riv  r_2 
)

Definition at line 418 of file avulsion_main.c.

References sed_river_angle().

Referenced by create_rivers(), and merge_rivers().

int sort_rivers_by_discharge ( Sed_riv  r_1,
Sed_riv  r_2 
)

Definition at line 428 of file avulsion_main.c.

References sed_river_water_flux().

Referenced by merge_rivers().

int sort_streams_by_angle ( stream_st s1,
stream_st s2 
)

int sort_streams_by_discharge ( stream_st s1,
stream_st s2 
)

int sort_streams_by_id ( stream_st s1,
stream_st s2 
)

Definition at line 441 of file avulsion_main.c.

References stream_st::id.

Sed_riv split_river_discharge ( Sed_riv  r_1,
Sed_riv  r_2 
)

Definition at line 466 of file avulsion_main.c.

References eh_require, sed_river_angle(), sed_river_bedload(), sed_river_depth(), sed_river_dup(), sed_river_set_angle(), sed_river_set_bedload(), sed_river_set_depth(), sed_river_set_velocity(), sed_river_set_width(), sed_river_velocity(), sed_river_water_flux(), and sed_river_width().

Referenced by create_rivers().


Variable Documentation

Avulsion_out_type output_type

Definition at line 83 of file avulsion_main.c.

Referenced by avulsion_full(), and main().


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