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

#include <stdio.h>
#include <math.h>
#include <pthread.h>
#include <utils/utils.h>
#include <sed/sed_sedflux.h>
#include "failure.h"

Go to the source code of this file.

Classes

struct  Init_failure_t

Defines

#define SECONDS_PER_YEAR   31536000.
#define FAIL_LOCAL_MODEL
#define FAIL_MIN_COL_LEN   (128)
#define FAIL_INIT_N_THREADS   (10)
#define FAIL_NO_FAIL_SURFACE   (G_MAXDOUBLE)
#define N_THREADS   (4)

Functions

Sed_cube get_failure_surface (const Sed_cube p, int start, int len)
gboolean fail_check_failure_plane_is_valid (const Sed_cube p, int start, int len, const double *failure_plane)
double * get_circle (const Sed_cube p, int failure_start, int n_points, double *circle)
double * get_ellipse (const Sed_cube p, int failureStart, int nPoints, double *ellipse)
double get_m (const Sed_column s, double depth, double consolidation)
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)
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)
void init_column (gpointer data, gpointer user_data)
Fail_profilefail_init_fail_profile (Sed_cube p, Failure_t fail_const )
Fail_profilefail_reinit_fail_profile (Fail_profile *f, Sed_cube p, Failure_t fail_const )
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)
void fail_destroy_failure_profile (Fail_profile *f)
double * fail_get_failure_line (Sed_cube p)
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 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)
double fail_get_fail_profile_fos (Fail_profile *f, int start, int len)
Fail_slice ** fail_get_janbu_parameters (Fail_profile *f, int start, double *fail_height, int fail_len)
Fail_columnfail_reinit_fail_column (Fail_column *f, Sed_column c, double h, Failure_t fail_const )
Fail_columnfail_init_fail_column (Sed_column c, double h, Failure_t fail_const )


Define Documentation

#define FAIL_INIT_N_THREADS   (10)

Definition at line 395 of file getsurface.c.

Referenced by fail_reinit_fail_profile().

#define FAIL_LOCAL_MODEL

Definition at line 32 of file getsurface.c.

Referenced by fail_reinit_fail_column().

#define FAIL_MIN_COL_LEN   (128)

Definition at line 272 of file getsurface.c.

Referenced by fail_create_fail_column().

#define FAIL_NO_FAIL_SURFACE   (G_MAXDOUBLE)

Definition at line 564 of file getsurface.c.

Referenced by fail_get_failure_line(), and fail_surface_is_valid().

#define N_THREADS   (4)

Definition at line 599 of file getsurface.c.

Referenced by fail_examine_fail_profile(), run_compaction(), and subside_grid_load().

#define SECONDS_PER_YEAR   31536000.

Definition at line 29 of file getsurface.c.


Function Documentation

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_column::size, and Fail_profile::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, Init_failure_t::fail_const, Fail_profile::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(), Init_failure_t::p, Fail_profile::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_column::size, and Fail_profile::size.

Referenced by run_failure().

double* get_circle ( const Sed_cube  p,
int  failure_start,
int  n_points,
double *  circle 
)

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  p,
int  failureStart,
int  nPoints,
double *  ellipse 
)

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().

Sed_cube get_failure_surface ( const Sed_cube  p,
int  start,
int  len 
)

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().

double get_m ( const Sed_column  s,
double  depth,
double  consolidation 
)

Definition at line 231 of file getsurface.c.

References S_SECONDS_PER_YEAR, sed_cell_age(), sed_column_index_depth(), sed_column_nth_cell(), and sed_column_thickness().

Referenced by fail_reinit_fail_column(), and get_janbu_parameters().

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().

void init_column ( gpointer  data,
gpointer  user_data 
)

Definition at line 534 of file getsurface.c.

References fail_reinit_fail_column(), and sed_cube_col().

Referenced by fail_reinit_fail_profile().


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