#include "glib.h"
#include <utils/utils.h>
Go to the source code of this file.
Defines | |
#define | GLIB_H |
Functions | |
double * | solve_excess_pore_pressure (double *psi, double *k, double *c, int n, double dz, double dt, double psi_top, double sed_rate) |
void | get_matrix_coefficients (double *psi, double *k, double *c, double ds, double dz, double dt, double psi_top, int n, double f, double *l, double *d, double *u, double *b) |
double * | solve_excess_pore_pressure_mg (double *psi, double *k, double *c, int n, double dz, double dt, double sed_rate) |
double * | restrict_1d (double *u_2h, double *u_h, int n_h) |
double * | inter_1d (double *u_h, double *u_2h, int n_2h) |
double * | relax_1d (double *u, double *k, double *f, int n, double dz, double dt) |
double * | residual_1d (double *res, double *u, double *k, double *f, int n, double dz, double dt) |
double * | solve_1d (double *u, double *k, double *f, double dz, double dt) |
double * | add_inter_1d (double *u_h, double *u_2h, int n_2h) |
double * | mgm_1d (double *u_h, double *k_h, double *f_h, int n_h, double dz, double dt) |
double * | fmg_1d (double *u_h, double *k_h, double *f_h, int n_h, double dz, double dt) |
double ** | solve_excess_pore_pressure_mg_2d (double **psi, double **kx, double **kz, double **c, int n, double dx, double dz, double dt, double *sed_rate) |
double ** | restrict_2d (double **u_2h, double **u_h, int n_h) |
double ** | inter_2d (double **u_h, double **u_2h, int n_2h) |
double ** | relax_2d (double **u, double **kx, double **kz, double **f, int n, double dx, double dz, double dt) |
double ** | residual_2d (double **res, double **u, double **kx, double **kz, double **f, int n, double dx, double dz, double dt) |
double ** | solve_2d (double **u, double **kx, double **kz, double **f, double dx, double dz, double dt) |
double ** | add_inter_2d (double **u_h, double **u_2h, int n_2h) |
double ** | mgm_2d (double **u_h, double **kx_h, double **kz_h, double **f_h, int n_h, double dx, double dz, double dt) |
double ** | fmg_2d (double **u_h, double **kx_h, double **kz_h, double **f_h, int n_h, double dx, double dz, double dt) |
double *** | solve_excess_pore_pressure_mg_3d (double ***psi, double ***kx, double ***kz, double ***c, int n, double dx, double dz, double dt, double **sed_rate) |
double *** | restrict_3d (double ***u_2h, double ***u_h, int n_h) |
double *** | inter_3d (double ***u_h, double ***u_2h, int n_2h) |
double *** | relax_3d (double ***u, double ***kx, double ***kz, double ***f, int n, double dx, double dz, double dt) |
double *** | residual_3d (double ***res, double ***u, double ***kx, double ***kz, double ***f, int n, double dx, double dz, double dt) |
double *** | solve_3d (double ***u, double ***kx, double ***kz, double ***f, double dx, double dz, double dt) |
double *** | add_inter_3d (double ***u_h, double ***u_2h, int n_2h) |
double *** | mgm_3d (double ***u_h, double ***kx_h, double ***kz_h, double ***f_h, int n_h, double dx, double dz, double dt) |
double *** | fmg_3d (double ***u_h, double ***kx_h, double ***kz_h, double ***f_h, int n_h, double dx, double dz, double dt) |
double * | allocate_1d (int) |
double ** | allocate_2d (int) |
double *** | allocate_3d (int) |
void | free_2d (double **) |
void | free_3d (double ***) |
double* add_inter_1d | ( | double * | u_h, | |
double * | u_2h, | |||
int | n_2h | |||
) |
double** add_inter_2d | ( | double ** | u_h, | |
double ** | u_2h, | |||
int | n_2h | |||
) |
Definition at line 586 of file flow.c.
References allocate_2d(), eh_free, and inter_2d().
Referenced by mgm_2d().
double*** add_inter_3d | ( | double *** | u_h, | |
double *** | u_2h, | |||
int | n_2h | |||
) |
Definition at line 605 of file flow.c.
References allocate_3d(), free_3d(), and inter_3d().
Referenced by mgm_3d().
double** allocate_2d | ( | int | ) |
Definition at line 974 of file flow.c.
References eh_new.
Referenced by add_inter_2d(), fmg_2d(), main(), mgm_2d(), and solve_excess_pore_pressure_mg_2d().
double*** allocate_3d | ( | int | ) |
Definition at line 985 of file flow.c.
References eh_new.
Referenced by add_inter_3d(), fmg_3d(), main(), mgm_3d(), and solve_excess_pore_pressure_mg_3d().
double* fmg_1d | ( | double * | u_h, | |
double * | k_h, | |||
double * | f_h, | |||
int | n_h, | |||
double | dz, | |||
double | dt | |||
) |
Definition at line 748 of file flow.c.
References eh_new, inter_1d(), log2(), mgm_1d(), and restrict_1d().
Referenced by solve_excess_pore_pressure_mg().
double** fmg_2d | ( | double ** | u_h, | |
double ** | kx_h, | |||
double ** | kz_h, | |||
double ** | f_h, | |||
int | n_h, | |||
double | dx, | |||
double | dz, | |||
double | dt | |||
) |
Definition at line 796 of file flow.c.
References allocate_2d(), eh_new, free_2d(), inter_2d(), log2(), mgm_2d(), and restrict_2d().
Referenced by solve_excess_pore_pressure_mg_2d().
double*** fmg_3d | ( | double *** | u_h, | |
double *** | kx_h, | |||
double *** | kz_h, | |||
double *** | f_h, | |||
int | n_h, | |||
double | dx, | |||
double | dz, | |||
double | dt | |||
) |
Definition at line 871 of file flow.c.
References allocate_3d(), eh_free, eh_new, free_3d(), inter_3d(), log2(), mgm_3d(), and restrict_3d().
Referenced by solve_excess_pore_pressure_mg_3d().
void free_2d | ( | double ** | ) |
void free_3d | ( | double *** | ) |
Definition at line 1022 of file flow.c.
References eh_free.
Referenced by add_inter_3d(), fmg_3d(), mgm_3d(), and solve_excess_pore_pressure_mg_3d().
void get_matrix_coefficients | ( | double * | psi, | |
double * | k, | |||
double * | c, | |||
double | ds, | |||
double | dz, | |||
double | dt, | |||
double | psi_top, | |||
int | n, | |||
double | f, | |||
double * | l, | |||
double * | d, | |||
double * | u, | |||
double * | b | |||
) |
double* inter_1d | ( | double * | u_h, | |
double * | u_2h, | |||
int | n_2h | |||
) |
double** inter_2d | ( | double ** | u_h, | |
double ** | u_2h, | |||
int | n_2h | |||
) |
double*** inter_3d | ( | double *** | u_h, | |
double *** | u_2h, | |||
int | n_2h | |||
) |
double* mgm_1d | ( | double * | u_h, | |
double * | k_h, | |||
double * | f_h, | |||
int | n_h, | |||
double | dz, | |||
double | dt | |||
) |
Definition at line 624 of file flow.c.
References add_inter_1d(), eh_free, eh_new, eh_new0, mgm_1d(), relax_1d(), residual_1d(), restrict_1d(), and solve_1d().
double** mgm_2d | ( | double ** | u_h, | |
double ** | kx_h, | |||
double ** | kz_h, | |||
double ** | f_h, | |||
int | n_h, | |||
double | dx, | |||
double | dz, | |||
double | dt | |||
) |
Definition at line 659 of file flow.c.
References add_inter_2d(), allocate_2d(), eh_free, mgm_2d(), relax_2d(), residual_2d(), restrict_2d(), and solve_2d().
double*** mgm_3d | ( | double *** | u_h, | |
double *** | kx_h, | |||
double *** | kz_h, | |||
double *** | f_h, | |||
int | n_h, | |||
double | dx, | |||
double | dz, | |||
double | dt | |||
) |
Definition at line 705 of file flow.c.
References add_inter_3d(), allocate_3d(), free_3d(), mgm_3d(), relax_3d(), residual_3d(), restrict_3d(), and solve_3d().
double* relax_1d | ( | double * | u, | |
double * | k, | |||
double * | f, | |||
int | n, | |||
double | dz, | |||
double | dt | |||
) |
double** relax_2d | ( | double ** | u, | |
double ** | kx, | |||
double ** | kz, | |||
double ** | f, | |||
int | n, | |||
double | dx, | |||
double | dz, | |||
double | dt | |||
) |
double*** relax_3d | ( | double *** | u, | |
double *** | kx, | |||
double *** | kz, | |||
double *** | f, | |||
int | n, | |||
double | dx, | |||
double | dz, | |||
double | dt | |||
) |
double* residual_1d | ( | double * | res, | |
double * | u, | |||
double * | k, | |||
double * | f, | |||
int | n, | |||
double | dz, | |||
double | dt | |||
) |
double** residual_2d | ( | double ** | res, | |
double ** | u, | |||
double ** | kx, | |||
double ** | kz, | |||
double ** | f, | |||
int | n, | |||
double | dx, | |||
double | dz, | |||
double | dt | |||
) |
double*** residual_3d | ( | double *** | res, | |
double *** | u, | |||
double *** | kx, | |||
double *** | kz, | |||
double *** | f, | |||
int | n, | |||
double | dx, | |||
double | dz, | |||
double | dt | |||
) |
double* restrict_1d | ( | double * | u_2h, | |
double * | u_h, | |||
int | n_h | |||
) |
double** restrict_2d | ( | double ** | u_2h, | |
double ** | u_h, | |||
int | n_h | |||
) |
double*** restrict_3d | ( | double *** | u_2h, | |
double *** | u_h, | |||
int | n_h | |||
) |
double* solve_1d | ( | double * | u, | |
double * | k, | |||
double * | f, | |||
double | dz, | |||
double | dt | |||
) |
double** solve_2d | ( | double ** | u, | |
double ** | kx, | |||
double ** | kz, | |||
double ** | f, | |||
double | dx, | |||
double | dz, | |||
double | dt | |||
) |
double*** solve_3d | ( | double *** | u, | |
double *** | kx, | |||
double *** | kz, | |||
double *** | f, | |||
double | dx, | |||
double | dz, | |||
double | dt | |||
) |
double* solve_excess_pore_pressure | ( | double * | psi, | |
double * | k, | |||
double * | c, | |||
int | n, | |||
double | dz, | |||
double | dt, | |||
double | psi_top, | |||
double | sed_rate | |||
) |
Definition at line 25 of file flow.c.
References eh_free, eh_new, eh_watch_dbl, get_matrix_coefficients(), and tridiag().
Referenced by main(), and run_darcy_flow().
double* solve_excess_pore_pressure_mg | ( | double * | psi, | |
double * | k, | |||
double * | c, | |||
int | n, | |||
double | dz, | |||
double | dt, | |||
double | sed_rate | |||
) |
double** solve_excess_pore_pressure_mg_2d | ( | double ** | psi, | |
double ** | kx, | |||
double ** | kz, | |||
double ** | c, | |||
int | n, | |||
double | dx, | |||
double | dz, | |||
double | dt, | |||
double * | sed_rate | |||
) |
double*** solve_excess_pore_pressure_mg_3d | ( | double *** | psi, | |
double *** | kx, | |||
double *** | kz, | |||
double *** | c, | |||
int | n, | |||
double | dx, | |||
double | dz, | |||
double | dt, | |||
double ** | sed_rate | |||
) |