/Users/huttone/Devel/sedflux-new/sedflux/trunk/ew/failure/failure.h File Reference

#include <sed/sed_sedflux.h>

Go to the source code of this file.

Classes

struct  fs_t
struct  Fail_slice
struct  Fail_column
struct  Failure_t
struct  Fail_profile

Defines

#define MIN_FAILURE_LENGTH   (5)
#define MAX_FAILURE_LENGTH   (100)
#define MIN_FACTOR_OF_SAFETY   (1.)
#define DECIDER_MAX_LENGTH   (2500.0)
#define DECIDER_THRESHOLD   (0.4)
#define DECIDER_TURBIDITY_CURRENT   (0)
#define DECIDER_DEBRIS_FLOW   (1)
#define DECIDER_SLUMP   (2)
#define FAILURE_DEFAULT_CONSOLIDATION   (1e-6)
#define FAILURE_DEFAULT_COHESION   (1000.)
#define FAILURE_DEFAULT_FRICTION_ANGLE   (30.)
#define FAILURE_DEFAULT_GRAVITY   (9.81)
#define FAILURE_DEFAULT_DENSITY_SEA_WATER   (1028.)
#define FAIL_FOS_NOT_VALID   (-1.)
#define FAIL_IGNORE_SURFACE   (-2.)
#define FAIL_MIN_DELTA_H   (1e-5)

Functions

void factor_of_safety (double x, gconstpointer, double *fn, double *dfn)
double rtsafe_fos (void(*funcd)(double, gconstpointer, double *, double *), gconstpointer data, double x1, double x2, double xacc)
Sed_cube get_failure_surface (const Sed_cube, int, int)
double * get_ellipse (const Sed_cube, int, int, double *)
double * get_circle (const Sed_cube, int, int, double *)
double get_factor_of_safety (const Sed_cube p, const Failure_t *failure_const )
int decider (const Sed_cube, double)
Fail_columnfail_create_fail_column (int n, gboolean allocate)
Fail_columnfail_reuse_fail_column (Fail_column *f)
Fail_columnfail_resize_fail_column (Fail_column *f, int n)
Fail_columnfail_init_fail_column (Sed_column c, double h, Failure_t fail_const )
Fail_columnfail_reinit_fail_column (Fail_column *f, Sed_column c, double h, Failure_t fail_const )
void fail_destroy_fail_column (Fail_column *f)
void fail_dump_fail_column (Fail_column *f, FILE *fp)
gboolean fail_load_fail_column (Fail_column *f, FILE *fp)
Fail_profilefail_reuse_fail_profile (Fail_profile *f)
Fail_profilefail_create_fail_profile (int n_cols)
void fail_dump_fail_profile (Fail_profile *f, FILE *fp)
void fail_load_fail_profile (FILE *fp)
Fail_profilefail_resize_fail_profile (Fail_profile *f, int n_cols)
Fail_profilefail_reinit_fail_profile (Fail_profile *f, Sed_cube p, Failure_t fail_const )
Fail_profilefail_init_fail_profile (Sed_cube p, Failure_t fail_const )
void fail_examine_fail_profile (Fail_profile *p)
void fail_reset_fail_profile (Fail_profile *p)
void fail_update_fail_profile (Fail_profile *p)
void fail_destroy_failure_profile (Fail_profile *f)
double * fail_get_failure_line (Sed_cube p)
double fail_get_fail_profile_fos (Fail_profile *f, int start, int len)
void get_node_fos (gpointer data, gpointer user_data)
gboolean fail_fos_is_valid (double fos)
gboolean fail_surface_is_valid (double h)
void fail_set_failure_surface_ignore (Fail_profile *f, int start, int len)
gboolean fail_get_ignore_surface (Fail_profile *f, int start, int len)
Fail_slice ** fail_get_janbu_parameters (Fail_profile *f, int start, double *fail_height, int fail_len)
gboolean fail_check_failure_plane_is_valid (const Sed_cube p, int start, int len, const double *failure_plane)


Define Documentation

#define DECIDER_DEBRIS_FLOW   (1)

Definition at line 39 of file failure.h.

Referenced by decider(), and run_failure().

#define DECIDER_MAX_LENGTH   (2500.0)

Definition at line 36 of file failure.h.

#define DECIDER_SLUMP   (2)

Definition at line 40 of file failure.h.

Referenced by run_failure().

#define DECIDER_THRESHOLD   (0.4)

Definition at line 37 of file failure.h.

#define DECIDER_TURBIDITY_CURRENT   (0)

Definition at line 38 of file failure.h.

Referenced by decider(), and run_failure().

#define FAIL_FOS_NOT_VALID   (-1.)

Definition at line 48 of file failure.h.

Referenced by fail_create_fail_column(), fail_get_fail_profile_fos(), fail_reset_fail_profile(), and fail_update_fail_profile().

#define FAIL_IGNORE_SURFACE   (-2.)

Definition at line 49 of file failure.h.

Referenced by fail_get_ignore_surface(), and fail_set_failure_surface_ignore().

#define FAIL_MIN_DELTA_H   (1e-5)

Definition at line 50 of file failure.h.

#define FAILURE_DEFAULT_COHESION   (1000.)

Definition at line 43 of file failure.h.

#define FAILURE_DEFAULT_CONSOLIDATION   (1e-6)

Definition at line 42 of file failure.h.

#define FAILURE_DEFAULT_DENSITY_SEA_WATER   (1028.)

Definition at line 46 of file failure.h.

#define FAILURE_DEFAULT_FRICTION_ANGLE   (30.)

Definition at line 44 of file failure.h.

#define FAILURE_DEFAULT_GRAVITY   (9.81)

Definition at line 45 of file failure.h.

#define MAX_FAILURE_LENGTH   (100)

Definition at line 30 of file failure.h.

Referenced by factor_of_safety(), fail_create_fail_column(), fail_get_failure_line(), fail_reset_fail_profile(), fail_reuse_fail_column(), fail_update_fail_profile(), and get_node_fos().

#define MIN_FACTOR_OF_SAFETY   (1.)

Definition at line 33 of file failure.h.

Referenced by run_failure().

#define MIN_FAILURE_LENGTH   (5)

Definition at line 27 of file failure.h.

Referenced by fail_get_failure_line(), and get_node_fos().


Function Documentation

int decider ( const   Sed_cube,
double   
)

Definition at line 47 of file decider.c.

References DECIDER_DEBRIS_FLOW, DECIDER_TURBIDITY_CURRENT, eh_require, sed_cell_add(), sed_cell_clay_fraction(), sed_cell_destroy(), sed_cell_new(), sed_cell_sand_fraction(), sed_column_top(), sed_cube_col(), sed_cube_is_1d(), sed_cube_n_y(), sed_cube_thickness(), and sed_sediment_env_n_types().

Referenced by run_failure().

void factor_of_safety ( double  x,
gconstpointer  ,
double *  fn,
double *  dfn 
)

gboolean fail_check_failure_plane_is_valid ( const Sed_cube  p,
int  start,
int  len,
const double *  failure_plane 
)

Definition at line 108 of file getsurface.c.

References eh_require, sed_cube_base_height(), sed_cube_is_1d(), sed_cube_n_y(), and sed_cube_top_height().

Referenced by get_circle().

Fail_column* fail_create_fail_column ( int  n,
gboolean  allocate 
)

Definition at line 274 of file getsurface.c.

References Fail_column::c, eh_new, FAIL_FOS_NOT_VALID, FAIL_MIN_COL_LEN, fail_resize_fail_column(), Fail_column::height, Fail_column::len, MAX_FAILURE_LENGTH, Fail_column::phi, Fail_column::size, Fail_column::u, and Fail_column::w.

Referenced by fail_reinit_fail_column().

Fail_profile* fail_create_fail_profile ( int  n_cols  ) 

Definition at line 483 of file getsurface.c.

References Fail_profile::col, Fail_profile::count, eh_new, eh_new0, Fail_profile::len, and Fail_profile::size.

Referenced by fail_reinit_fail_profile().

void fail_destroy_fail_column ( Fail_column f  ) 

Definition at line 332 of file getsurface.c.

References Fail_column::c, eh_free, Fail_column::height, Fail_column::phi, Fail_column::u, and Fail_column::w.

Referenced by fail_destroy_failure_profile().

void fail_destroy_failure_profile ( Fail_profile f  ) 

Definition at line 550 of file getsurface.c.

References Fail_profile::col, eh_free, fail_destroy_fail_column(), and Fail_profile::size.

Referenced by destroy_failure().

void fail_dump_fail_column ( Fail_column f,
FILE *  fp 
)

Definition at line 349 of file getsurface.c.

References Fail_column::c, Fail_column::height, Fail_column::len, Fail_column::phi, Fail_column::u, and Fail_column::w.

Referenced by fail_dump_fail_profile().

void fail_dump_fail_profile ( Fail_profile f,
FILE *  fp 
)

Definition at line 497 of file getsurface.c.

References Fail_profile::col, fail_dump_fail_column(), Fail_profile::p, sed_cube_write(), and Fail_profile::size.

void fail_examine_fail_profile ( Fail_profile p  ) 

Definition at line 601 of file getsurface.c.

References Fail_profile::col, eh_free, eh_new, eh_require, get_node_fos(), N_THREADS, Fail_column::need_update, Fail_profile::p, sed_cube_river_mouth_1d(), and Fail_profile::size.

Referenced by run_failure().

gboolean fail_fos_is_valid ( double  fos  ) 

Definition at line 835 of file getsurface.c.

Referenced by fail_update_fail_profile(), and get_node_fos().

double fail_get_fail_profile_fos ( Fail_profile f,
int  start,
int  len 
)

Definition at line 855 of file getsurface.c.

References Fail_profile::col, eh_free, eh_new, factor_of_safety(), FAIL_FOS_NOT_VALID, fail_get_janbu_parameters(), get_circle(), Fail_column::need_update, Fail_profile::p, and rtsafe_fos().

Referenced by get_node_fos().

double* fail_get_failure_line ( Sed_cube  p  ) 

Definition at line 566 of file getsurface.c.

References eh_free, eh_new, eh_require, FAIL_NO_FAIL_SURFACE, get_circle(), MAX_FAILURE_LENGTH, MIN_FAILURE_LENGTH, sed_cube_is_1d(), and sed_cube_n_y().

Referenced by fail_reinit_fail_profile(), and fail_update_fail_profile().

gboolean fail_get_ignore_surface ( Fail_profile f,
int  start,
int  len 
)

Definition at line 850 of file getsurface.c.

References Fail_profile::col, FAIL_IGNORE_SURFACE, and Fail_column::fs.

Referenced by get_node_fos().

Fail_slice** fail_get_janbu_parameters ( Fail_profile f,
int  start,
double *  fail_height,
int  fail_len 
)

Definition at line 902 of file getsurface.c.

References Fail_profile::col, eh_free, eh_new, eh_require, M_PI, Fail_profile::p, sed_cube_top_height(), Fail_profile::size, and Fail_column::size.

Referenced by fail_get_fail_profile_fos().

Fail_column* fail_init_fail_column ( Sed_column  c,
double  h,
Failure_t  fail_const 
)

Definition at line 1131 of file getsurface.c.

References fail_reinit_fail_column().

Fail_profile* fail_init_fail_profile ( Sed_cube  p,
Failure_t  fail_const 
)

Definition at line 389 of file getsurface.c.

References fail_reinit_fail_profile().

Referenced by init_failure_data().

gboolean fail_load_fail_column ( Fail_column f,
FILE *  fp 
)

Definition at line 359 of file getsurface.c.

References Fail_column::c, eh_new, Fail_column::height, Fail_column::len, Fail_column::phi, Fail_column::u, and Fail_column::w.

Referenced by fail_load_fail_profile().

void fail_load_fail_profile ( FILE *  fp  ) 

Definition at line 506 of file getsurface.c.

References Fail_profile::col, eh_new, fail_load_fail_column(), Fail_profile::len, Fail_profile::p, sed_cube_read(), and Fail_profile::size.

Fail_column* fail_reinit_fail_column ( Fail_column f,
Sed_column  c,
double  h,
Failure_t  fail_const 
)

Definition at line 1024 of file getsurface.c.

References Fail_column::c, Failure_t::cohesion, Failure_t::consolidation, Failure_t::density_sea_water, eh_require, fail_create_fail_column(), FAIL_LOCAL_MODEL, fail_resize_fail_column(), fail_reuse_fail_column(), fail_surface_is_valid(), Fail_column::failure_line, Failure_t::frictionAngle, get_m(), Fail_column::height, Fail_column::phi, S_RADS_PER_DEGREE, sed_cell_excess_pressure(), sed_cell_size(), sed_column_avg_property(), sed_column_avg_property_with_load(), sed_column_base_height(), sed_column_index_at(), sed_column_nth_cell(), sed_column_top_height(), sed_column_top_nbins(), sed_column_top_rho(), sed_column_water_pressure(), sed_gravity(), sed_property_destroy(), sed_property_new(), Fail_column::u, and Fail_column::w.

Referenced by fail_init_fail_column(), fail_update_fail_profile(), and init_column().

Fail_profile* fail_reinit_fail_profile ( Fail_profile f,
Sed_cube  p,
Failure_t  fail_const 
)

Definition at line 397 of file getsurface.c.

References Fail_profile::col, eh_free, eh_new, eh_require, Fail_profile::fail_const, Init_failure_t::fail_const, fail_create_fail_profile(), fail_get_failure_line(), FAIL_INIT_N_THREADS, fail_resize_fail_profile(), fail_reuse_fail_profile(), Init_failure_t::failure_line, init_column(), Fail_profile::p, Init_failure_t::p, sed_cube_is_1d(), sed_cube_n_y(), and Init_failure_t::slice.

Referenced by fail_init_fail_profile(), and run_failure().

void fail_reset_fail_profile ( Fail_profile p  ) 

Definition at line 666 of file getsurface.c.

References Fail_profile::col, FAIL_FOS_NOT_VALID, Fail_column::fs, Fail_profile::fs_min_len, Fail_profile::fs_min_start, Fail_profile::fs_min_val, MAX_FAILURE_LENGTH, Fail_column::need_update, and Fail_profile::size.

Fail_column* fail_resize_fail_column ( Fail_column f,
int  n 
)

Definition at line 315 of file getsurface.c.

References Fail_column::c, Fail_column::height, Fail_column::len, Fail_column::phi, Fail_column::size, Fail_column::u, and Fail_column::w.

Referenced by fail_create_fail_column(), and fail_reinit_fail_column().

Fail_profile* fail_resize_fail_profile ( Fail_profile f,
int  n_cols 
)

Definition at line 518 of file getsurface.c.

References Fail_profile::col, Fail_profile::len, and Fail_profile::size.

Referenced by fail_reinit_fail_profile().

Fail_column* fail_reuse_fail_column ( Fail_column f  ) 

Definition at line 304 of file getsurface.c.

References Fail_column::fs, MAX_FAILURE_LENGTH, and Fail_column::need_update.

Referenced by fail_reinit_fail_column().

Fail_profile* fail_reuse_fail_profile ( Fail_profile f  ) 

Definition at line 468 of file getsurface.c.

References Fail_profile::count, eh_require, Fail_profile::fs_min_len, Fail_profile::fs_min_start, Fail_profile::fs_min_val, and Fail_profile::p.

Referenced by fail_reinit_fail_profile().

void fail_set_failure_surface_ignore ( Fail_profile f,
int  start,
int  len 
)

Definition at line 845 of file getsurface.c.

References Fail_profile::col, FAIL_IGNORE_SURFACE, and Fail_column::fs.

Referenced by run_failure().

gboolean fail_surface_is_valid ( double  h  ) 

Definition at line 840 of file getsurface.c.

References FAIL_NO_FAIL_SURFACE.

Referenced by fail_reinit_fail_column().

void fail_update_fail_profile ( Fail_profile p  ) 

Definition at line 682 of file getsurface.c.

References Fail_profile::col, Fail_profile::count, eh_free, eh_require, Fail_profile::fail_const, fail_fos_is_valid(), FAIL_FOS_NOT_VALID, fail_get_failure_line(), fail_reinit_fail_column(), Fail_column::failure_line, Fail_column::fs, Fail_profile::fs_min_len, Fail_profile::fs_min_start, Fail_profile::fs_min_val, Fail_column::height, MAX_FAILURE_LENGTH, Fail_column::need_update, Fail_profile::p, sed_column_top_height(), sed_cube_col(), Fail_profile::size, and Fail_column::size.

Referenced by run_failure().

double* get_circle ( const   Sed_cube,
int  ,
int  ,
double *   
)

Definition at line 137 of file getsurface.c.

References eh_free, eh_new0, eh_require, fail_check_failure_plane_is_valid(), sed_cube_is_1d(), sed_cube_n_y(), sed_cube_top_height(), and sed_cube_y_res().

Referenced by fail_get_fail_profile_fos(), fail_get_failure_line(), and get_failure_surface().

double* get_ellipse ( const   Sed_cube,
int  ,
int  ,
double *   
)

Definition at line 189 of file getsurface.c.

References eh_free, eh_new, eh_require, sed_cube_is_1d(), sed_cube_top_height(), and sed_cube_y_res().

double get_factor_of_safety ( const Sed_cube  p,
const Failure_t failure_const 
)

Definition at line 41 of file failure.c.

References eh_free, eh_new, eh_require, factor_of_safety(), FACTOR_OF_SAFETY_ERROR, get_janbu_parameters(), rtsafe_fos(), sed_cube_is_1d(), and sed_cube_n_y().

Sed_cube get_failure_surface ( const   Sed_cube,
int  ,
int   
)

Definition at line 35 of file getsurface.c.

References eh_free, eh_new0, get_circle(), sed_column_thickness(), sed_cube_col(), sed_cube_copy_cols(), sed_cube_destroy(), sed_cube_n_y(), sed_cube_thickness(), and sed_cube_top_height().

Referenced by run_failure().

void get_node_fos ( gpointer  data,
gpointer  user_data 
)

Definition at line 776 of file getsurface.c.

References Fail_profile::col, Fail_profile::count, fail_fos_is_valid(), fail_get_fail_profile_fos(), fail_get_ignore_surface(), Fail_column::fs, Fail_profile::fs_min_len, Fail_profile::fs_min_start, Fail_profile::fs_min_val, MAX_FAILURE_LENGTH, MIN_FAILURE_LENGTH, and Fail_profile::size.

Referenced by fail_examine_fail_profile().

double rtsafe_fos ( void(*)(double, gconstpointer, double *, double *)  funcd,
gconstpointer  data,
double  x1,
double  x2,
double  xacc 
)


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