00001 #if !defined( BIO_H )
00002 #define BIO_H
00003
00004 #include <glib.h>
00005 #include <utils/utils.h>
00006 #include <sed/sed_sedflux.h>
00007
00008 #define BIO_PROGRAM_NAME "bio"
00009 #define BIO_MAJOR_VERSION_S "0"
00010 #define BIO_MINOR_VERSION_S "1"
00011 #define BIO_MICRO_VERSION_S "0"
00012 #define BIO_MAJOR_VERSION (0)
00013 #define BIO_MINOR_VERSION (1)
00014 #define BIO_MICRO_VERSION (0)
00015
00016 typedef enum
00017 {
00018 BIO_ERROR_BAD_PARAM ,
00019 BIO_ERROR_BAD_ALGORITHM
00020 }
00021 Bio_error;
00022
00023 #define BIO_ERROR bio_error_quark()
00024 GQuark bio_error_quark( void );
00025
00026 typedef enum
00027 {
00028 BIO_METHOD_DIFFUSION ,
00029 BIO_METHOD_CONVEYOR ,
00030 BIO_METHOD_UNKNOWN
00031 }
00032 Bio_method;
00033
00034 GOptionGroup* bio_get_option_group( void );
00035 void bioturbate ( double** col , gint n_grains , gint n_layers , double dz , double k , double total_t );
00036
00037 double** bio_diffuse_layers ( double* t , gint n_layers , double dz , double k , double duration );
00038 double** bio_conveyor_layers( double* t , gint n_layers , double dz , double r , double duration );
00039
00040 Sed_proc_init bio_init;
00041 Sed_proc_run bio_run;
00042 Sed_proc_destroy bio_destroy;
00043
00044 #endif