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

#include <stdio.h>
#include <glib.h>
#include "utils/utils.h"
#include "sed_sediment.h"
#include <string.h>

Go to the source code of this file.

Defines

#define S_KEY_GRAIN_SIZE   "grain size"
#define S_KEY_RHO_GRAIN   "grain density"
#define S_KEY_RHO_SAT   "saturated density"
#define S_KEY_VOID_MIN   "minimum void ratio"
#define S_KEY_PI   "plastic index"
#define S_KEY_DIFF_COEF   "diffusion coefficient"
#define S_KEY_LAMBDA   "removal rate"
#define S_KEY_C_V   "consolidation coefficient"
#define S_KEY_C   "compaction coefficient"
#define SED_BURSIK_CONST_A_3   (1.74)
#define SED_BURSIK_CONST_H   (7.5)
#define S_F   (1.25)

Functions

Sed_sediment sed_sediment_new ()
Sed_sediment sed_sediment_new_sized (gssize n)
Sed_sediment sed_sediment_set_env (Sed_sediment s)
Sed_sediment sed_sediment_unset_env ()
Sed_sediment sed_sediment_env ()
gboolean sed_sediment_env_is_set ()
Sed_sediment sed_sediment_copy (Sed_sediment dest, const Sed_sediment src)
Sed_sediment sed_sediment_dup (const Sed_sediment src)
gssize sed_sediment_n_types (const Sed_sediment sed)
gssize sed_sediment_env_size ()
gint sed_sediment_env_n_types ()
Sed_sediment sed_sediment_resize (Sed_sediment s, gssize new_len)
Sed_sediment sed_sediment_add_type (Sed_sediment sed, const Sed_type new_type)
gboolean sed_sediment_has_type (Sed_sediment s, Sed_type t)
Sed_sediment sed_sediment_insert_sorted (Sed_sediment s, Sed_type t)
gssize sed_sediment_fprint (FILE *fp, Sed_sediment s)
Sed_sediment sed_sediment_append (Sed_sediment s, Sed_type t)
void sed_sediment_foreach (Sed_sediment s, GFunc f, gpointer user_data)
double * sed_sediment_property (Sed_sediment s, Sed_type_property_func_0 f)
double sed_sediment_property_avg (Sed_sediment s, double *f, Sed_type_property_func_0 p_func)
double sed_sediment_property_avg_1 (Sed_sediment s, double *f, double arg_1, Sed_type_property_func_1 p_func)
double sed_sediment_property_avg_2 (Sed_sediment s, double *f, double arg_1, double arg_2, Sed_type_property_func_2 p_func)
double sed_sediment_property_avg_with_data (Sed_sediment s, double *f, Sed_type_property_func_with_data p_func, gpointer data)
Sed_type sed_sediment_type (const Sed_sediment s, gssize id)
Sed_type sed_sediment_bedload (const Sed_sediment s)
Sed_sediment sed_sediment_destroy (Sed_sediment s)
Sed_type sed_type_new ()
Sed_type sed_type_destroy (Sed_type t)
Sed_type sed_type_copy (Sed_type dest, Sed_type src)
Sed_type sed_type_dup (Sed_type src)
gssize sed_type_fprint (FILE *fp, Sed_type t)
gssize sed_type_write (FILE *fp, Sed_type t)
Sed_type sed_type_read (FILE *fp)
double sed_sediment_bedload_rho (const Sed_sediment s)
gssize sed_sediment_write (FILE *fp, const Sed_sediment s)
Sed_sediment sed_sediment_read (FILE *fp)
void sed_sediment_fprint_default (FILE *fp)
Sed_sediment sed_sediment_scan (const char *file, GError **error)
Sed_type sed_type_init (Eh_symbol_table t)
gboolean sed_type_is_same (Sed_type t_1, Sed_type t_2)
gboolean sed_type_is_same_size (Sed_type t_1, Sed_type t_2)
double sed_gravity ()
double sed_gravity_units (Sed_units units)
double sed_set_gravity (double new_val)
double sed_rho_sea_water ()
double sed_rho_sea_water_units (Sed_units units)
double sed_set_rho_sea_water (double new_val)
double sed_rho_fresh_water ()
double sed_rho_fresh_water_units (Sed_units units)
double sed_set_rho_fresh_water (double new_val)
double sed_mu_water ()
double sed_mu_water_units (Sed_units units)
double sed_set_mu_water (double new_val)
double sed_sea_salinity ()
double sed_sea_salinity_units (Sed_units units)
double sed_set_sea_salinity (double new_val)
double sed_rho_quartz ()
double sed_rho_quartz_units (Sed_units units)
double sed_set_rho_quartz (double new_val)
double sed_rho_mantle ()
double sed_rho_mantle_units (Sed_units units)
double sed_set_rho_mantle (double new_val)
Sed_type sed_type_set_rho_sat (Sed_type t, double rho_sat)
Sed_type sed_type_set_rho_grain (Sed_type t, double rho_grain)
Sed_type sed_type_set_grain_size (Sed_type t, double gz)
Sed_type sed_type_set_plastic_index (Sed_type t, double pi)
Sed_type sed_type_set_void_ratio_min (Sed_type t, double void_min)
Sed_type sed_type_set_diff_coef (Sed_type t, double k)
Sed_type sed_type_set_lambda (Sed_type t, double l)
Sed_type sed_type_set_settling_velocity (Sed_type t, double w)
Sed_type sed_type_set_c_consolidation (Sed_type t, double c_v)
Sed_type sed_type_set_compressibility (Sed_type t, double c)
double sed_type_rho_sat (const Sed_type t)
double sed_type_rho_grain (const Sed_type t)
double sed_type_grain_size (const Sed_type t)
double sed_type_plastic_index (const Sed_type t)
double sed_type_void_ratio_min (const Sed_type t)
double sed_type_diff_coef (const Sed_type t)
double sed_type_lambda (const Sed_type t)
double sed_type_lambda_in_per_seconds (const Sed_type t)
double sed_type_settling_velocity (const Sed_type t)
double sed_removal_rate_to_settling_velocity (double l)
double sed_settling_velocity_to_removal_rate (double w_s)
double sed_type_c_consolidation (const Sed_type t)
double sed_type_compressibility (const Sed_type t)
double sed_type_density_0 (const Sed_type t)
double sed_type_rho_max (const Sed_type t)
double sed_type_grain_size_in_meters (const Sed_type t)
double sed_type_inv_grain_size_in_meters (const Sed_type t)
double sed_type_grain_size_in_phi (const Sed_type t)
double sed_type_is_sand (const Sed_type t)
double sed_type_is_silt (const Sed_type t)
double sed_type_is_clay (const Sed_type t)
double sed_type_is_mud (const Sed_type t)
Sed_size_class sed_type_grain_size_in_wentworth (const Sed_type t)
Sed_size_class sed_type_size_class (const Sed_type t)
double sed_type_velocity (const Sed_type t)
double sed_type_viscosity (const Sed_type t)
double sed_type_dynamic_viscosity (const Sed_type t)
double sed_type_relative_density (const Sed_type t)
double sed_type_void_ratio (Sed_type t)
double sed_type_void_ratio_max (Sed_type t)
double sed_type_porosity (const Sed_type t)
double sed_type_porosity_min (const Sed_type t)
double sed_type_porosity_max (const Sed_type t)
double sed_type_permeability (const Sed_type t)
double sed_type_hydraulic_conductivity (const Sed_type t)
double sed_type_water_content (const Sed_type t)
double sed_specific_gravity (const Sed_type t)
double sed_type_friction_angle (const Sed_type t)
double sed_type_yield_strength (const Sed_type t)
double sed_type_mv (const Sed_type t)
double sed_type_cv (const Sed_type t)
double sed_type_shear_strength (const Sed_type t, double load)
double sed_type_shear_strength_with_data (const Sed_type t, gpointer data)
double sed_type_cohesion (const Sed_type t, double load)
double sed_type_cohesion_with_data (const Sed_type t, gpointer data)
double sed_type_consolidation (const Sed_type t, double d, double dt)
double sed_type_consolidation_with_data (const Sed_type t, gpointer data)
double sed_type_consolidation_rate (const Sed_type t, double d, double dt)
double sed_type_consolidation_rate_with_data (const Sed_type t, gpointer data)
double sed_calculate_avg_consolidation (double c_v, double d, double t)
double sed_calculate_consolidation (double c_v, double d, double z, double t)
double sed_type_is_size_class (Sed_type t, Sed_size_class size)
double sed_type_is_size_class_with_data (Sed_type t, gpointer size)
double sed_type_sum_size_classes_with_data (Sed_type t, gpointer size)
double sed_type_void_ratio_compacted (Sed_type t, gpointer d)
double sed_type_density_compacted (Sed_type t, gpointer d)
Sed_size_class sed_size_class (const double phi)
 Return the Wentworth size class from a grain size.

Variables

double __gravity = S_GRAVITY
double __rho_sea_water = S_RHO_SEA_WATER
double __rho_fresh_water = S_RHO_FRESH_WATER
double __mu_water = S_MU_WATER
double __salinity_sea = S_SALINITY_SEA
double __rho_grain = S_RHO_GRAIN
double __rho_mantle = S_RHO_MANTLE


Define Documentation

#define S_F   (1.25)

Definition at line 1240 of file sed_sediment.c.

Referenced by sed_type_permeability().

#define S_KEY_C   "compaction coefficient"

Definition at line 667 of file sed_sediment.c.

Referenced by sed_type_init().

#define S_KEY_C_V   "consolidation coefficient"

Definition at line 666 of file sed_sediment.c.

Referenced by sed_type_init().

#define S_KEY_DIFF_COEF   "diffusion coefficient"

Definition at line 664 of file sed_sediment.c.

Referenced by sed_type_init().

#define S_KEY_GRAIN_SIZE   "grain size"

Definition at line 659 of file sed_sediment.c.

Referenced by sed_type_init().

#define S_KEY_LAMBDA   "removal rate"

Definition at line 665 of file sed_sediment.c.

Referenced by sed_type_init().

#define S_KEY_PI   "plastic index"

Definition at line 663 of file sed_sediment.c.

#define S_KEY_RHO_GRAIN   "grain density"

Definition at line 660 of file sed_sediment.c.

Referenced by sed_type_init().

#define S_KEY_RHO_SAT   "saturated density"

Definition at line 661 of file sed_sediment.c.

Referenced by sed_type_init().

#define S_KEY_VOID_MIN   "minimum void ratio"

Definition at line 662 of file sed_sediment.c.

Referenced by sed_type_init().

#define SED_BURSIK_CONST_A_3   (1.74)

Settling velocity of a grain class.

Return the settling velocity for a grain class. The settling velocity is converted from removal rates. The conversion comes from Bursik (1995).

Bursik, M.I., 1995. Theory of the sedimentation of suspended particles from fluvial plumes. Sedimentology, v. 42, pp. 831-838.

Parameters:
s A sedflux sediment structure.
n The index of the grain class.
Returns:
The settling velocity of the grain class in m/day.

Definition at line 1057 of file sed_sediment.c.

Referenced by sed_removal_rate_to_settling_velocity(), and sed_settling_velocity_to_removal_rate().

#define SED_BURSIK_CONST_H   (7.5)

Definition at line 1058 of file sed_sediment.c.

Referenced by sed_removal_rate_to_settling_velocity(), and sed_settling_velocity_to_removal_rate().


Function Documentation

double sed_calculate_avg_consolidation ( double  c_v,
double  d,
double  t 
)

Definition at line 1396 of file sed_sediment.c.

Referenced by sed_type_consolidation().

double sed_calculate_consolidation ( double  c_v,
double  d,
double  z,
double  t 
)

Definition at line 1407 of file sed_sediment.c.

Referenced by run_terzaghi_flow().

double sed_gravity ( void   ) 

Definition at line 746 of file sed_sediment.c.

References __gravity.

Referenced by factor_of_safety(), fail_reinit_fail_column(), get_constant(), get_flexure_parameter(), get_grain_size_threshold(), get_h_c(), get_moveable_grains(), get_threshold_depth(), get_tsunami_parameters(), inflow(), init_failure(), main(), muddy(), near_bed_velocity_func(), run_darcy_flow(), sakura_reynolds_number(), sakura_settling_velocity(), sed_cell_load(), sed_cell_sediment_load(), sed_column_water_pressure(), sed_cube_water_pressure(), sed_dispersion_relation_frequency(), sed_dispersion_relation_wave_number_helper(), sed_gravity_wave_deep_water_height(), sed_gravity_wave_deep_water_wave_number(), sed_wave_break_depth(), sed_wave_break_depth_helper(), set_ocean_storm_wave(), subside_half_plane_load(), and subside_point_load().

double sed_gravity_units ( Sed_units  units  ) 

Definition at line 751 of file sed_sediment.c.

References __gravity, eh_require_not_reached, UNITS_CGS, UNITS_IMPERIAL, and UNITS_MKS.

double sed_mu_water ( void   ) 

Definition at line 833 of file sed_sediment.c.

References __mu_water.

Referenced by sed_mu_water_units().

double sed_mu_water_units ( Sed_units  units  ) 

Definition at line 840 of file sed_sediment.c.

References eh_require_not_reached, sed_mu_water(), UNITS_CGS, UNITS_IMPERIAL, and UNITS_MKS.

double sed_removal_rate_to_settling_velocity ( double  l  ) 

Definition at line 1066 of file sed_sediment.c.

References SED_BURSIK_CONST_A_3, and SED_BURSIK_CONST_H.

Referenced by sakura_set_sediment_data(), sakura_set_sediment_data_from_env(), sed_type_init(), and sed_type_set_lambda().

double sed_rho_fresh_water ( void   ) 

Definition at line 802 of file sed_sediment.c.

References __rho_fresh_water.

Referenced by run_plume_hyper_inflow(), run_plume_hyper_sakura(), sed_hydro_array_eventize_conc(), sed_hydro_is_hyperpycnal(), sed_rho_fresh_water_units(), and sed_river_concentration().

double sed_rho_fresh_water_units ( Sed_units  units  ) 

Definition at line 809 of file sed_sediment.c.

References eh_require_not_reached, sed_rho_fresh_water(), UNITS_CGS, UNITS_IMPERIAL, and UNITS_MKS.

double sed_rho_mantle ( void   ) 

Definition at line 914 of file sed_sediment.c.

References __rho_mantle.

Referenced by get_flexure_parameter(), sed_rho_mantle_units(), subside_half_plane_load(), and subside_point_load().

double sed_rho_mantle_units ( Sed_units  units  ) 

Definition at line 920 of file sed_sediment.c.

References eh_require_not_reached, sed_rho_mantle(), UNITS_CGS, UNITS_IMPERIAL, and UNITS_MKS.

double sed_rho_quartz ( void   ) 

Definition at line 886 of file sed_sediment.c.

References __rho_grain.

Referenced by get_constant(), get_grain_size_threshold(), get_moveable_grains(), get_paola_diffusion(), get_threshold_depth(), sed_rho_quartz_units(), and sed_type_init().

double sed_rho_quartz_units ( Sed_units  units  ) 

Definition at line 892 of file sed_sediment.c.

References eh_require_not_reached, sed_rho_quartz(), UNITS_CGS, UNITS_IMPERIAL, and UNITS_MKS.

double sed_rho_sea_water ( void   ) 

Definition at line 771 of file sed_sediment.c.

References __rho_sea_water.

Referenced by compact(), get_constant(), get_erosion_depth(), get_grain_size_threshold(), get_moveable_grains(), get_paola_diffusion(), get_threshold_depth(), init_failure(), run_darcy_flow(), sed_column_water_pressure(), sed_cube_water_pressure(), sed_hydro_is_hyperpycnal(), sed_rho_sea_water_units(), sed_specific_gravity(), sed_type_density_compacted(), sed_type_init(), sed_type_rho_max(), sed_type_void_ratio(), and sed_type_water_content().

double sed_rho_sea_water_units ( Sed_units  units  ) 

Definition at line 778 of file sed_sediment.c.

References eh_require_not_reached, sed_rho_sea_water(), UNITS_CGS, UNITS_IMPERIAL, and UNITS_MKS.

double sed_sea_salinity ( void   ) 

Definition at line 860 of file sed_sediment.c.

References __salinity_sea.

Referenced by sed_sea_salinity_units().

double sed_sea_salinity_units ( Sed_units  units  ) 

Definition at line 865 of file sed_sediment.c.

References eh_require_not_reached, sed_sea_salinity(), UNITS_CGS, UNITS_IMPERIAL, and UNITS_MKS.

Sed_sediment sed_sediment_add_type ( Sed_sediment  sed,
const Sed_type  new_type 
)

Definition at line 196 of file sed_sediment.c.

References eh_require, sed_sediment_append(), sed_sediment_has_type(), and sed_sediment_resize().

Referenced by sed_sediment_read(), and sed_sediment_scan().

Sed_sediment sed_sediment_append ( Sed_sediment  s,
Sed_type  t 
)

Definition at line 291 of file sed_sediment.c.

References eh_require, and sed_type_dup().

Referenced by sed_sediment_add_type().

Sed_type sed_sediment_bedload ( const Sed_sediment  s  ) 

Definition at line 424 of file sed_sediment.c.

double sed_sediment_bedload_rho ( const Sed_sediment  s  ) 

Definition at line 534 of file sed_sediment.c.

References sed_type_rho_sat().

Sed_sediment sed_sediment_copy ( Sed_sediment  dest,
const Sed_sediment  src 
)

Definition at line 120 of file sed_sediment.c.

References eh_new, eh_require, sed_sediment_n_types(), sed_sediment_new(), and sed_type_dup().

Referenced by sed_sediment_dup().

Sed_sediment sed_sediment_destroy ( Sed_sediment  s  ) 

Definition at line 429 of file sed_sediment.c.

References eh_free, and sed_type_destroy().

Referenced by avulsion_full(), main(), sed_cube_new_from_file(), sed_sediment_resize(), sed_sediment_unset_env(), and test_2d().

Sed_sediment sed_sediment_dup ( const Sed_sediment  src  ) 

Definition at line 144 of file sed_sediment.c.

References sed_sediment_copy().

Referenced by sed_sediment_set_env().

Sed_sediment sed_sediment_env (  ) 

Definition at line 110 of file sed_sediment.c.

Referenced by sed_cell_new_bedload(), sed_cell_new_classed(), sed_cell_new_typed(), sed_hydro_add_cell(), sed_hydro_subtract_cell(), sed_hydro_suspended_volume_flux(), sed_sediment_env_n_types(), sed_sediment_env_size(), sed_sediment_property(), sed_sediment_property_avg(), sed_sediment_property_avg_1(), sed_sediment_property_avg_2(), sed_sediment_property_avg_with_data(), and sed_sediment_type().

gboolean sed_sediment_env_is_set (  ) 

Definition at line 115 of file sed_sediment.c.

Referenced by sed_cell_new_env(), sed_sediment_env_n_types(), and sed_sediment_env_size().

gint sed_sediment_env_n_types (  ) 

Definition at line 170 of file sed_sediment.c.

References sed_sediment_env(), and sed_sediment_env_is_set().

Referenced by _print_sediment_column(), _scan_sediment_column(), compact(), decider(), deposit_sediment_helper(), diffuse_sediment(), diffuse_sediment_2(), get_moveable_grains(), get_sediment_flux(), get_time_step(), inflow_deposit_sediment(), inflow_erode_sediment(), inflow_set_sediment_data_from_env(), init_plume_hypo_data(), main(), move_sediment(), muddy(), run_plume_hypo(), run_xshore(), sakura_deposit_sediment(), sakura_erode_sediment(), sakura_sed_add_sediment(), sakura_sed_get_phe(), sakura_sed_remove_sediment(), sakura_set_bathy_data_from_cube(), sakura_set_sediment_data_from_env(), sed_array_to_bio_array(), sed_cell_add_column(), sed_cell_grid_new_env(), sed_cell_new_env(), sed_column_add_vec(), sed_column_extract_top_fill(), sed_column_separate_top(), sed_column_separate_top_amounts(), sed_column_top(), sed_column_top_age(), sed_column_top_property_0(), sed_column_top_rho(), sed_cube_create_in_suspension(), sed_get_phe(), sed_sediment_n_types(), squall(), update_bruun_zone_data(), and xshore().

gssize sed_sediment_env_size (  ) 

Definition at line 157 of file sed_sediment.c.

References sed_sediment_env(), and sed_sediment_env_is_set().

void sed_sediment_foreach ( Sed_sediment  s,
GFunc  f,
gpointer  user_data 
)

Definition at line 304 of file sed_sediment.c.

References eh_require.

gssize sed_sediment_fprint ( FILE *  fp,
Sed_sediment  s 
)

Definition at line 272 of file sed_sediment.c.

References sed_type_fprint().

void sed_sediment_fprint_default ( FILE *  fp  ) 

Definition at line 579 of file sed_sediment.c.

References DEFAULT_SEDIMENT_FILE, and eh_require.

gboolean sed_sediment_has_type ( Sed_sediment  s,
Sed_type  t 
)

Definition at line 214 of file sed_sediment.c.

References sed_type_is_same().

Referenced by sed_sediment_add_type().

Sed_sediment sed_sediment_insert_sorted ( Sed_sediment  s,
Sed_type  t 
)

Definition at line 229 of file sed_sediment.c.

References eh_require, and sed_type_dup().

gssize sed_sediment_n_types ( const Sed_sediment  sed  ) 

Definition at line 149 of file sed_sediment.c.

References sed_sediment_env_n_types().

Referenced by get_moveable_grains(), main(), plume_centerline_deposit(), plume_width_averaged_deposit(), plume_width_averaged_deposit_num(), sed_cell_new_bedload(), sed_cell_new_classed(), sed_cell_new_typed(), sed_hydro_add_cell(), sed_hydro_subtract_cell(), sed_sediment_copy(), sed_sediment_property(), sed_sediment_write(), and test_2d().

Sed_sediment sed_sediment_new ( void   ) 

Definition at line 65 of file sed_sediment.c.

References NEW_OBJECT.

Referenced by sed_sediment_copy(), sed_sediment_new_sized(), sed_sediment_read(), sed_sediment_resize(), and sed_sediment_scan().

Sed_sediment sed_sediment_new_sized ( gssize  n  ) 

Definition at line 77 of file sed_sediment.c.

References sed_sediment_new(), and sed_sediment_resize().

double* sed_sediment_property ( Sed_sediment  s,
Sed_type_property_func_0  f 
)

Definition at line 316 of file sed_sediment.c.

References eh_new, sed_sediment_env(), and sed_sediment_n_types().

Referenced by compact(), diffuse_sediment(), diffuse_sediment_2(), get_moveable_grains(), get_sediment_flux(), get_time_step(), inflow_set_sediment_data_from_env(), muddy(), run_plume_hypo(), sakura_set_sediment_data_from_env(), squall(), and update_bruun_zone_data().

double sed_sediment_property_avg ( Sed_sediment  s,
double *  f,
Sed_type_property_func_0  p_func 
)

Definition at line 336 of file sed_sediment.c.

References sed_sediment_env().

Referenced by sed_cell_bulk_permeability(), sed_cell_c_consolidation(), sed_cell_cc(), sed_cell_clay_fraction(), sed_cell_compressibility(), sed_cell_cv(), sed_cell_density_0(), sed_cell_dynamic_viscosity(), sed_cell_friction_angle(), sed_cell_grain_density(), sed_cell_grain_size(), sed_cell_grain_size_in_phi(), sed_cell_hydraulic_conductivity(), sed_cell_max_density(), sed_cell_mud_fraction(), sed_cell_mv(), sed_cell_permeability(), sed_cell_plastic_index(), sed_cell_porosity(), sed_cell_porosity_max(), sed_cell_porosity_min(), sed_cell_relative_density(), sed_cell_sand_fraction(), sed_cell_silt_fraction(), sed_cell_size_class(), sed_cell_velocity(), sed_cell_viscosity(), sed_cell_void_ratio(), sed_cell_void_ratio_max(), sed_cell_void_ratio_min(), and sed_cell_yield_strength().

double sed_sediment_property_avg_1 ( Sed_sediment  s,
double *  f,
double  arg_1,
Sed_type_property_func_1  p_func 
)

Definition at line 353 of file sed_sediment.c.

References sed_sediment_env().

double sed_sediment_property_avg_2 ( Sed_sediment  s,
double *  f,
double  arg_1,
double  arg_2,
Sed_type_property_func_2  p_func 
)

Definition at line 370 of file sed_sediment.c.

References sed_sediment_env().

double sed_sediment_property_avg_with_data ( Sed_sediment  s,
double *  f,
Sed_type_property_func_with_data  p_func,
gpointer  data 
)

Definition at line 387 of file sed_sediment.c.

References sed_sediment_env().

Referenced by sed_cell_cohesion(), sed_cell_consolidation(), sed_cell_consolidation_rate(), sed_cell_density(), sed_cell_shear_strength(), sed_cell_size_class_percent(), and sed_cell_size_classes().

Sed_sediment sed_sediment_read ( FILE *  fp  ) 

Definition at line 556 of file sed_sediment.c.

References sed_sediment_add_type(), and sed_sediment_new().

Sed_sediment sed_sediment_resize ( Sed_sediment  s,
gssize  new_len 
)

Definition at line 179 of file sed_sediment.c.

References eh_renew, sed_sediment_destroy(), and sed_sediment_new().

Referenced by sed_sediment_add_type(), and sed_sediment_new_sized().

Sed_sediment sed_sediment_scan ( const char *  file,
GError **  error 
)

Scan sediment information from a file

Scan sediment information from a file. The file consists of a series of groups (one for each type of sediment). Each groups contains a key-value pairs describing the sediment type.

An example group:

This is the start of the next group.

Note:
The order that the sediment groups appear in the file are the order they are placed into the Sed_sediment class. They are no longer sorted by grain size.
Parameters:
file The name of the file to scan
error A GError
Returns:
A new Sed_sediment constructed from the file. Use sed_sediment_destroy to free.

Definition at line 614 of file sed_sediment.c.

References eh_free, eh_key_file_destroy(), eh_key_file_pop_group(), eh_key_file_scan(), eh_return_val_if_fail, eh_symbol_table_destroy(), sed_sediment_add_type(), sed_sediment_new(), SED_SEDIMENT_TEST_FILE, sed_type_destroy(), and sed_type_init().

Referenced by avulsion_full(), main(), sed_cube_new_from_file(), and test_2d().

Sed_sediment sed_sediment_set_env ( Sed_sediment  s  ) 

Definition at line 91 of file sed_sediment.c.

References sed_sediment_dup().

Referenced by avulsion_full(), main(), sed_cube_new_from_file(), and test_2d().

Sed_type sed_sediment_type ( const Sed_sediment  s,
gssize  id 
)

Definition at line 407 of file sed_sediment.c.

References eh_require, and sed_sediment_env().

Referenced by plume_centerline_deposit(), plume_width_averaged_deposit(), plume_width_averaged_deposit_num(), run_bedload(), sed_cell_new_classed(), sed_cell_new_typed(), sed_get_phe(), sed_hydro_add_cell(), sed_hydro_subtract_cell(), and sed_hydro_suspended_volume_flux().

Sed_sediment sed_sediment_unset_env (  ) 

Definition at line 102 of file sed_sediment.c.

References sed_sediment_destroy().

Referenced by avulsion_full(), main(), sedflux_finalize(), and test_2d().

gssize sed_sediment_write ( FILE *  fp,
const Sed_sediment  s 
)

Definition at line 539 of file sed_sediment.c.

References sed_sediment_n_types(), and sed_type_write().

double sed_set_gravity ( double  new_val  ) 

Definition at line 766 of file sed_sediment.c.

References __gravity.

Referenced by run_constants().

double sed_set_mu_water ( double  new_val  ) 

Definition at line 854 of file sed_sediment.c.

References __mu_water.

double sed_set_rho_fresh_water ( double  new_val  ) 

Definition at line 826 of file sed_sediment.c.

References __rho_fresh_water.

Referenced by run_constants().

double sed_set_rho_mantle ( double  new_val  ) 

Definition at line 936 of file sed_sediment.c.

References __rho_mantle.

Referenced by run_constants().

double sed_set_rho_quartz ( double  new_val  ) 

Definition at line 908 of file sed_sediment.c.

References __rho_grain.

Referenced by run_constants().

double sed_set_rho_sea_water ( double  new_val  ) 

Definition at line 795 of file sed_sediment.c.

References __rho_sea_water.

Referenced by run_constants().

double sed_set_sea_salinity ( double  new_val  ) 

Definition at line 880 of file sed_sediment.c.

References __salinity_sea.

Referenced by run_constants().

double sed_settling_velocity_to_removal_rate ( double  w_s  ) 

Definition at line 1071 of file sed_sediment.c.

References SED_BURSIK_CONST_A_3, and SED_BURSIK_CONST_H.

Referenced by sed_type_set_settling_velocity().

Sed_size_class sed_size_class ( const double  phi  ) 

Return the Wentworth size class from a grain size.

Returns the Wentworth size class for a grain size in phi units.

Parameters:
phi The grain size is phi units.
Returns:
The grain size as a Wentworth size class.
See also:
sed_cell_size_class , Sed_size_class .

Definition at line 1471 of file sed_sediment.c.

References S_SED_TYPE_CLAY, S_SED_TYPE_SAND, S_SED_TYPE_SILT, S_SED_TYPE_VERY_FINE_SAND_PHI, and S_SED_TYPE_VERY_FINE_SILT_PHI.

Referenced by sed_cell_size_class(), sed_type_grain_size_in_wentworth(), and sed_type_size_class().

double sed_specific_gravity ( const Sed_type  t  ) 

Definition at line 1263 of file sed_sediment.c.

References sed_rho_sea_water(), and sed_type_rho_grain().

double sed_type_c_consolidation ( const Sed_type  t  ) 

Definition at line 1076 of file sed_sediment.c.

Referenced by sed_cell_c_consolidation(), sed_cell_cc(), sed_type_consolidation(), and sed_type_consolidation_rate().

double sed_type_cohesion ( const Sed_type  t,
double  load 
)

Definition at line 1351 of file sed_sediment.c.

Referenced by sed_type_cohesion_with_data().

double sed_type_cohesion_with_data ( const Sed_type  t,
gpointer  data 
)

Definition at line 1360 of file sed_sediment.c.

References sed_type_cohesion().

Referenced by sed_cell_cohesion().

double sed_type_compressibility ( const Sed_type  t  ) 

Definition at line 1081 of file sed_sediment.c.

Referenced by compact(), sed_cell_compressibility(), sed_cell_mv(), sed_type_cv(), and sed_type_mv().

double sed_type_consolidation ( const Sed_type  t,
double  d,
double  dt 
)

Definition at line 1365 of file sed_sediment.c.

References sed_calculate_avg_consolidation(), and sed_type_c_consolidation().

double sed_type_consolidation_rate ( const Sed_type  t,
double  d,
double  dt 
)

Definition at line 1377 of file sed_sediment.c.

References sed_type_c_consolidation().

Referenced by sed_type_consolidation_rate_with_data(), and sed_type_consolidation_with_data().

double sed_type_consolidation_rate_with_data ( const Sed_type  t,
gpointer  data 
)

Definition at line 1391 of file sed_sediment.c.

References sed_type_consolidation_rate().

Referenced by sed_cell_consolidation_rate().

double sed_type_consolidation_with_data ( const Sed_type  t,
gpointer  data 
)

Definition at line 1372 of file sed_sediment.c.

References sed_type_consolidation_rate().

Referenced by sed_cell_consolidation().

Sed_type sed_type_copy ( Sed_type  dest,
Sed_type  src 
)

Definition at line 465 of file sed_sediment.c.

References eh_require, and sed_type_new().

Referenced by sed_type_dup().

double sed_type_cv ( const Sed_type  t  ) 

Definition at line 1335 of file sed_sediment.c.

References S_GAMMA_WATER, sed_type_compressibility(), and sed_type_hydraulic_conductivity().

Referenced by sed_cell_cv().

double sed_type_density_0 ( const Sed_type  t  ) 

Definition at line 1086 of file sed_sediment.c.

References sed_type_rho_sat().

Referenced by sed_cell_density_0().

double sed_type_density_compacted ( Sed_type  t,
gpointer  d 
)

Definition at line 1454 of file sed_sediment.c.

References sed_rho_sea_water(), sed_type_rho_grain(), and sed_type_void_ratio_compacted().

Referenced by sed_cell_density().

Sed_type sed_type_destroy ( Sed_type  t  ) 

Definition at line 453 of file sed_sediment.c.

References eh_free.

Referenced by sed_sediment_destroy(), and sed_sediment_scan().

double sed_type_diff_coef ( const Sed_type  t  ) 

Definition at line 1029 of file sed_sediment.c.

Referenced by diffuse_sediment(), diffuse_sediment_2(), muddy(), and run_plume_hypo().

Sed_type sed_type_dup ( Sed_type  src  ) 

Definition at line 477 of file sed_sediment.c.

References sed_type_copy().

Referenced by sed_sediment_append(), sed_sediment_copy(), and sed_sediment_insert_sorted().

double sed_type_dynamic_viscosity ( const Sed_type  t  ) 

Definition at line 1182 of file sed_sediment.c.

References S_MU_WATER, S_SED_TYPE_SAND, sed_type_porosity(), and sed_type_size_class().

Referenced by sed_cell_dynamic_viscosity().

gssize sed_type_fprint ( FILE *  fp,
Sed_type  t 
)

Definition at line 482 of file sed_sediment.c.

Referenced by sed_sediment_fprint().

double sed_type_friction_angle ( const Sed_type  t  ) 

Definition at line 1285 of file sed_sediment.c.

References sed_type_grain_size_in_meters(), and sed_type_relative_density().

Referenced by sed_cell_friction_angle().

double sed_type_grain_size ( const Sed_type  t  ) 

Definition at line 1014 of file sed_sediment.c.

Referenced by run_plume_hypo(), sed_cell_grain_size(), sed_type_grain_size_in_meters(), and sed_type_inv_grain_size_in_meters().

double sed_type_grain_size_in_meters ( const Sed_type  t  ) 

Definition at line 1101 of file sed_sediment.c.

References sed_type_grain_size().

Referenced by get_moveable_grains(), get_sediment_flux(), inflow_set_sediment_data_from_env(), sed_type_friction_angle(), sed_type_permeability(), and squall().

double sed_type_grain_size_in_phi ( const Sed_type  t  ) 

Definition at line 1111 of file sed_sediment.c.

References log2().

Referenced by sed_cell_grain_size_in_phi(), sed_cell_size_class(), sed_type_grain_size_in_wentworth(), and sed_type_size_class().

Sed_size_class sed_type_grain_size_in_wentworth ( const Sed_type  t  ) 

Definition at line 1152 of file sed_sediment.c.

References sed_size_class(), and sed_type_grain_size_in_phi().

double sed_type_hydraulic_conductivity ( const Sed_type  t  ) 

Definition at line 1251 of file sed_sediment.c.

References S_GAMMA_WATER, S_MU_WATER, and sed_type_permeability().

Referenced by sed_cell_hydraulic_conductivity(), and sed_type_cv().

Sed_type sed_type_init ( Eh_symbol_table  t  ) 

Definition at line 669 of file sed_sediment.c.

References eh_require, eh_symbol_table_dbl_value(), S_KEY_C, S_KEY_C_V, S_KEY_DIFF_COEF, S_KEY_GRAIN_SIZE, S_KEY_LAMBDA, S_KEY_RHO_GRAIN, S_KEY_RHO_SAT, S_KEY_VOID_MIN, sed_removal_rate_to_settling_velocity(), sed_rho_quartz(), sed_rho_sea_water(), and sed_type_new().

Referenced by sed_sediment_scan().

double sed_type_inv_grain_size_in_meters ( const Sed_type  t  ) 

Definition at line 1106 of file sed_sediment.c.

References sed_type_grain_size().

Referenced by sed_cell_bulk_permeability().

double sed_type_is_clay ( const Sed_type  t  ) 

Definition at line 1134 of file sed_sediment.c.

References S_SED_TYPE_CLAY, and sed_type_size_class().

Referenced by sed_cell_clay_fraction().

double sed_type_is_mud ( const Sed_type  t  ) 

Definition at line 1143 of file sed_sediment.c.

References S_SED_TYPE_MUD, and sed_type_size_class().

Referenced by sed_cell_mud_fraction().

gboolean sed_type_is_same ( Sed_type  t_1,
Sed_type  t_2 
)

Definition at line 698 of file sed_sediment.c.

References eh_require.

Referenced by sed_cell_new_typed(), and sed_sediment_has_type().

gboolean sed_type_is_same_size ( Sed_type  t_1,
Sed_type  t_2 
)

Definition at line 723 of file sed_sediment.c.

References eh_require.

double sed_type_is_sand ( const Sed_type  t  ) 

Definition at line 1116 of file sed_sediment.c.

References S_SED_TYPE_SAND, and sed_type_size_class().

Referenced by sed_cell_sand_fraction().

double sed_type_is_silt ( const Sed_type  t  ) 

Definition at line 1125 of file sed_sediment.c.

References S_SED_TYPE_SILT, and sed_type_size_class().

Referenced by sed_cell_silt_fraction().

double sed_type_is_size_class ( Sed_type  t,
Sed_size_class  size 
)

Definition at line 1430 of file sed_sediment.c.

References sed_type_size_class().

Referenced by sed_type_is_size_class_with_data().

double sed_type_is_size_class_with_data ( Sed_type  t,
gpointer  size 
)

Definition at line 1435 of file sed_sediment.c.

References sed_type_is_size_class().

Referenced by sed_cell_size_class_percent().

double sed_type_lambda ( const Sed_type  t  ) 

Definition at line 1034 of file sed_sediment.c.

Referenced by plume_centerline_deposit(), plume_width_averaged_deposit(), and plume_width_averaged_deposit_num().

double sed_type_lambda_in_per_seconds ( const Sed_type  t  ) 

Definition at line 1039 of file sed_sediment.c.

References S_DAYS_PER_SECOND.

Referenced by inflow_set_sediment_data_from_env(), run_plume_hypo(), and sakura_set_sediment_data_from_env().

double sed_type_mv ( const Sed_type  t  ) 

Definition at line 1330 of file sed_sediment.c.

References sed_type_compressibility().

Sed_type sed_type_new (  ) 

Definition at line 443 of file sed_sediment.c.

References NEW_OBJECT.

Referenced by sed_type_copy(), sed_type_init(), and sed_type_read().

double sed_type_permeability ( const Sed_type  t  ) 

Definition at line 1242 of file sed_sediment.c.

References S_F, sed_type_grain_size_in_meters(), and sed_type_void_ratio().

Referenced by sed_cell_permeability(), and sed_type_hydraulic_conductivity().

double sed_type_plastic_index ( const Sed_type  t  ) 

Definition at line 1019 of file sed_sediment.c.

Referenced by sed_cell_plastic_index(), and sed_type_shear_strength().

double sed_type_porosity ( const Sed_type  t  ) 

Definition at line 1223 of file sed_sediment.c.

References sed_type_void_ratio().

Referenced by sed_cell_porosity(), sed_type_dynamic_viscosity(), sed_type_porosity_max(), and sed_type_yield_strength().

double sed_type_porosity_max ( const Sed_type  t  ) 

Definition at line 1235 of file sed_sediment.c.

References sed_type_porosity().

Referenced by sed_cell_porosity_max(), and sed_type_void_ratio_max().

double sed_type_porosity_min ( const Sed_type  t  ) 

Definition at line 1229 of file sed_sediment.c.

References sed_type_void_ratio_min().

Referenced by sed_cell_porosity_min().

Sed_type sed_type_read ( FILE *  fp  ) 

Definition at line 520 of file sed_sediment.c.

References sed_type_new().

double sed_type_relative_density ( const Sed_type  t  ) 

Definition at line 1200 of file sed_sediment.c.

References sed_type_void_ratio(), sed_type_void_ratio_max(), and sed_type_void_ratio_min().

Referenced by sed_cell_relative_density(), and sed_type_friction_angle().

double sed_type_rho_grain ( const Sed_type  t  ) 

Definition at line 1009 of file sed_sediment.c.

Referenced by compact(), sakura_set_sediment_data_from_env(), sed_cell_grain_density(), sed_specific_gravity(), sed_type_density_compacted(), sed_type_rho_max(), sed_type_void_ratio(), and sed_type_water_content().

double sed_type_rho_max ( const Sed_type  t  ) 

Definition at line 1095 of file sed_sediment.c.

References sed_rho_sea_water(), sed_type_rho_grain(), and sed_type_void_ratio_min().

Referenced by compact(), and sed_cell_max_density().

double sed_type_rho_sat ( const Sed_type  t  ) 

Definition at line 1004 of file sed_sediment.c.

Referenced by compact(), inflow_set_sediment_data_from_env(), plume_centerline_deposit(), plume_width_averaged_deposit(), plume_width_averaged_deposit_num(), run_bedload(), run_plume_hypo(), sakura_set_sediment_data_from_env(), sed_get_phe(), sed_hydro_add_cell(), sed_hydro_subtract_cell(), sed_hydro_suspended_volume_flux(), sed_sediment_bedload_rho(), sed_type_density_0(), and sed_type_void_ratio().

Sed_type sed_type_set_c_consolidation ( Sed_type  t,
double  c_v 
)

Definition at line 992 of file sed_sediment.c.

Sed_type sed_type_set_compressibility ( Sed_type  t,
double  c 
)

Definition at line 998 of file sed_sediment.c.

Sed_type sed_type_set_diff_coef ( Sed_type  t,
double  k 
)

Definition at line 972 of file sed_sediment.c.

Sed_type sed_type_set_grain_size ( Sed_type  t,
double  gz 
)

Definition at line 954 of file sed_sediment.c.

Sed_type sed_type_set_lambda ( Sed_type  t,
double  l 
)

Definition at line 978 of file sed_sediment.c.

References sed_removal_rate_to_settling_velocity().

Sed_type sed_type_set_plastic_index ( Sed_type  t,
double  pi 
)

Definition at line 960 of file sed_sediment.c.

Sed_type sed_type_set_rho_grain ( Sed_type  t,
double  rho_grain 
)

Definition at line 948 of file sed_sediment.c.

Sed_type sed_type_set_rho_sat ( Sed_type  t,
double  rho_sat 
)

Definition at line 942 of file sed_sediment.c.

Sed_type sed_type_set_settling_velocity ( Sed_type  t,
double  w 
)

Definition at line 985 of file sed_sediment.c.

References sed_settling_velocity_to_removal_rate().

Sed_type sed_type_set_void_ratio_min ( Sed_type  t,
double  void_min 
)

Definition at line 966 of file sed_sediment.c.

double sed_type_settling_velocity ( const Sed_type  t  ) 

Definition at line 1060 of file sed_sediment.c.

Referenced by get_sediment_flux(), get_time_step(), and update_bruun_zone_data().

double sed_type_shear_strength ( const Sed_type  t,
double  load 
)

Definition at line 1341 of file sed_sediment.c.

References sed_type_plastic_index().

Referenced by sed_type_shear_strength_with_data().

double sed_type_shear_strength_with_data ( const Sed_type  t,
gpointer  data 
)

Definition at line 1346 of file sed_sediment.c.

References sed_type_shear_strength().

Referenced by sed_cell_shear_strength().

Sed_size_class sed_type_size_class ( const Sed_type  t  ) 

Definition at line 1158 of file sed_sediment.c.

References sed_size_class(), and sed_type_grain_size_in_phi().

Referenced by sed_cell_new_classed(), sed_type_dynamic_viscosity(), sed_type_is_clay(), sed_type_is_mud(), sed_type_is_sand(), sed_type_is_silt(), sed_type_is_size_class(), sed_type_sum_size_classes_with_data(), and sed_type_yield_strength().

double sed_type_sum_size_classes_with_data ( Sed_type  t,
gpointer  size 
)

Definition at line 1440 of file sed_sediment.c.

References sed_type_size_class().

Referenced by sed_cell_size_classes().

double sed_type_velocity ( const Sed_type  t  ) 

Definition at line 1163 of file sed_sediment.c.

References S_VELOCITY_IN_ROCK, S_VELOCITY_IN_WATER, and sed_type_void_ratio().

Referenced by sed_cell_velocity().

double sed_type_viscosity ( const Sed_type  t  ) 

Definition at line 1169 of file sed_sediment.c.

References S_ETA_WATER, sed_type_void_ratio(), and sed_type_void_ratio_min().

Referenced by sed_cell_viscosity().

double sed_type_void_ratio ( Sed_type  t  ) 

Definition at line 1209 of file sed_sediment.c.

References sed_rho_sea_water(), sed_type_rho_grain(), and sed_type_rho_sat().

Referenced by sed_cell_void_ratio(), sed_type_permeability(), sed_type_porosity(), sed_type_relative_density(), sed_type_velocity(), sed_type_viscosity(), sed_type_void_ratio_compacted(), and sed_type_water_content().

double sed_type_void_ratio_compacted ( Sed_type  t,
gpointer  d 
)

Definition at line 1449 of file sed_sediment.c.

References sed_type_void_ratio().

Referenced by sed_type_density_compacted().

double sed_type_void_ratio_max ( Sed_type  t  ) 

Definition at line 1217 of file sed_sediment.c.

References sed_type_porosity_max().

Referenced by sed_cell_void_ratio_max(), and sed_type_relative_density().

double sed_type_void_ratio_min ( const Sed_type  t  ) 

Definition at line 1024 of file sed_sediment.c.

Referenced by sed_cell_void_ratio_min(), sed_type_porosity_min(), sed_type_relative_density(), sed_type_rho_max(), and sed_type_viscosity().

double sed_type_water_content ( const Sed_type  t  ) 

Definition at line 1256 of file sed_sediment.c.

References sed_rho_sea_water(), sed_type_rho_grain(), and sed_type_void_ratio().

gssize sed_type_write ( FILE *  fp,
Sed_type  t 
)

Definition at line 505 of file sed_sediment.c.

References eh_require.

Referenced by sed_sediment_write().

double sed_type_yield_strength ( const Sed_type  t  ) 

Definition at line 1306 of file sed_sediment.c.

References eh_require_not_reached, S_SED_TYPE_CLAY, S_SED_TYPE_SAND, S_SED_TYPE_SILT, sed_type_porosity(), and sed_type_size_class().

Referenced by sed_cell_yield_strength().


Variable Documentation

double __gravity = S_GRAVITY

Definition at line 738 of file sed_sediment.c.

Referenced by sed_gravity(), sed_gravity_units(), and sed_set_gravity().

double __mu_water = S_MU_WATER

Definition at line 741 of file sed_sediment.c.

Referenced by sed_mu_water(), and sed_set_mu_water().

double __rho_fresh_water = S_RHO_FRESH_WATER

Definition at line 740 of file sed_sediment.c.

Referenced by sed_rho_fresh_water(), and sed_set_rho_fresh_water().

double __rho_grain = S_RHO_GRAIN

Definition at line 743 of file sed_sediment.c.

Referenced by sed_rho_quartz(), and sed_set_rho_quartz().

double __rho_mantle = S_RHO_MANTLE

Definition at line 744 of file sed_sediment.c.

Referenced by sed_rho_mantle(), and sed_set_rho_mantle().

double __rho_sea_water = S_RHO_SEA_WATER

Definition at line 739 of file sed_sediment.c.

Referenced by sed_rho_sea_water(), and sed_set_rho_sea_water().

double __salinity_sea = S_SALINITY_SEA

Definition at line 742 of file sed_sediment.c.

Referenced by sed_sea_salinity(), and sed_set_sea_salinity().


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