GRASS Programmer's Manual
6.5.svn(2014)-r66266
|
#include "N_pde.h"
Go to the source code of this file.
Data Structures | |
struct | N_gwflow_data3d |
This data structure contains all data needed to compute the groundwater mass balance in three dimension. More... | |
struct | N_gwflow_data2d |
This data structure contains all data needed to compute the groundwater mass balance in two dimension. More... | |
Macros | |
#define | N_GW_CONFINED 0 /*confined groundwater */ |
#define | N_GW_UNCONFINED 1 /*unconfined groundwater */ |
#define | N_GW_DRY_CELL 0 /*a dry cell */ |
#define | N_GW_SURFACE_CELL 1 /*a surface cell */ |
#define | N_GW_NORMAL_CELL 2 /*a normal wet cell */ |
Functions | |
N_data_star * | N_callback_gwflow_3d (void *gwdata, N_geom_data *geom, int col, int row, int depth) |
This callback function creates the mass balance of a 7 point star. More... | |
N_data_star * | N_callback_gwflow_2d (void *gwdata, N_geom_data *geom, int col, int row) |
This callback function creates the mass balance of a 5 point star. More... | |
N_gwflow_data3d * | N_alloc_gwflow_data3d (int cols, int rows, int depths, int river, int drain) |
Allocate memory for the groundwater calculation data structure in 3 dimensions. More... | |
N_gwflow_data2d * | N_alloc_gwflow_data2d (int cols, int rows, int river, int drain) |
Alllocate memory for the groundwater calculation data structure in 2 dimensions. More... | |
void | N_free_gwflow_data3d (N_gwflow_data3d *data) |
Release the memory of the groundwater flow data structure in three dimensions. More... | |
void | N_free_gwflow_data2d (N_gwflow_data2d *data) |
Release the memory of the groundwater flow data structure in two dimensions. More... | |
#define N_GW_CONFINED 0 /*confined groundwater */ |
Definition at line 23 of file N_gwflow.h.
#define N_GW_DRY_CELL 0 /*a dry cell */ |
Definition at line 26 of file N_gwflow.h.
#define N_GW_NORMAL_CELL 2 /*a normal wet cell */ |
Definition at line 28 of file N_gwflow.h.
#define N_GW_SURFACE_CELL 1 /*a surface cell */ |
Definition at line 27 of file N_gwflow.h.
#define N_GW_UNCONFINED 1 /*unconfined groundwater */ |
Definition at line 24 of file N_gwflow.h.
N_gwflow_data2d* N_alloc_gwflow_data2d | ( | int | cols, |
int | rows, | ||
int | river, | ||
int | drain | ||
) |
Alllocate memory for the groundwater calculation data structure in 2 dimensions.
The groundwater calculation data structure will be allocated including all appendant 2d arrays. The offset for the 3d arrays is one to establish homogeneous Neumann boundary conditions at the calculation area border. This data structure is used to create a linear equation system based on the computation of groundwater flow in porous media with the finite volume method.
cols | int |
rows | int |
Definition at line 148 of file N_gwflow.c.
References N_gwflow_data2d::bottom, menudata::data, N_gwflow_data2d::drain_bed, N_gwflow_data2d::drain_leak, N_gwflow_data2d::hc_x, N_gwflow_data2d::hc_y, N_alloc_array_2d(), N_gwflow_data2d::nf, NULL, N_gwflow_data2d::phead, N_gwflow_data2d::phead_start, N_gwflow_data2d::q, N_gwflow_data2d::r, N_gwflow_data2d::river_bed, N_gwflow_data2d::river_head, N_gwflow_data2d::river_leak, N_gwflow_data2d::s, N_gwflow_data2d::status, and N_gwflow_data2d::top.
Allocate memory for the groundwater calculation data structure in 3 dimensions.
The groundwater calculation data structure will be allocated including all appendant 3d and 2d arrays. The offset for the 3d arrays is one to establish homogeneous Neumann boundary conditions at the calculation area border. This data structure is used to create a linear equation system based on the computation of groundwater flow in porous media with the finite volume method.
cols | int |
rows | int |
depths | int |
Definition at line 38 of file N_gwflow.c.
References menudata::data, N_gwflow_data3d::drain_bed, N_gwflow_data3d::drain_leak, N_gwflow_data3d::hc_x, N_gwflow_data3d::hc_y, N_gwflow_data3d::hc_z, N_alloc_array_2d(), N_alloc_array_3d(), N_gwflow_data3d::nf, NULL, N_gwflow_data3d::phead, N_gwflow_data3d::phead_start, N_gwflow_data3d::q, N_gwflow_data3d::r, N_gwflow_data3d::river_bed, N_gwflow_data3d::river_head, N_gwflow_data3d::river_leak, N_gwflow_data3d::s, and N_gwflow_data3d::status.
N_data_star* N_callback_gwflow_2d | ( | void * | gwdata, |
N_geom_data * | geom, | ||
int | col, | ||
int | row | ||
) |
This callback function creates the mass balance of a 5 point star.
The mass balance is based on the common groundwater flow equation:
This equation is discretizised with the finite volume method in two dimensions.
gwdata | N_gwflow_data2d * |
geom | N_geom_data * |
col | int |
row | int |
Definition at line 379 of file N_gwflow.c.
References N_gwflow_data2d::bottom, C, menudata::data, N_gwflow_data2d::drain_bed, N_gwflow_data2d::drain_leak, N_gwflow_data2d::dt, N_geom_data::dx, N_geom_data::dy, G_debug(), N_gwflow_data2d::hc_x, N_gwflow_data2d::hc_y, N, N_calc_arith_mean(), N_calc_harmonic_mean(), N_create_5star(), N_get_array_2d_d_value(), N_get_geom_data_area_of_cell(), N_gwflow_data2d::nf, N_gwflow_data2d::phead, N_gwflow_data2d::phead_start, N_gwflow_data2d::q, forms::q, r, N_gwflow_data2d::r, N_gwflow_data2d::river_bed, N_gwflow_data2d::river_head, N_gwflow_data2d::river_leak, N_gwflow_data2d::s, and N_gwflow_data2d::top.
N_data_star* N_callback_gwflow_3d | ( | void * | gwdata, |
N_geom_data * | geom, | ||
int | col, | ||
int | row, | ||
int | depth | ||
) |
This callback function creates the mass balance of a 7 point star.
The mass balance is based on the common groundwater flow equation:
This equation is discretizised with the finite volume method in three dimensions.
gwdata | N_gwflow_data3d * |
geom | N_geom_data * |
col | int |
row | int |
depth | int |
Definition at line 263 of file N_gwflow.c.
References C, menudata::data, N_geom_data::depths, N_gwflow_data3d::dt, N_geom_data::dx, N_geom_data::dy, N_geom_data::dz, G_debug(), N_gwflow_data3d::hc_x, N_gwflow_data3d::hc_y, N_gwflow_data3d::hc_z, N, N_calc_harmonic_mean(), N_create_7star(), N_get_array_2d_d_value(), N_get_array_3d_d_value(), N_get_geom_data_area_of_cell(), N_gwflow_data3d::nf, N_gwflow_data3d::phead_start, N_gwflow_data3d::q, forms::q, r, N_gwflow_data3d::r, and N_gwflow_data3d::s.
void N_free_gwflow_data2d | ( | N_gwflow_data2d * | data | ) |
Release the memory of the groundwater flow data structure in two dimensions.
data | N_gwflow_data2d * |
Definition at line 200 of file N_gwflow.c.
References N_gwflow_data2d::bottom, N_gwflow_data2d::drain_bed, N_gwflow_data2d::drain_leak, G_free(), N_gwflow_data2d::hc_x, N_gwflow_data2d::hc_y, N_free_array_2d(), N_gwflow_data2d::nf, NULL, N_gwflow_data2d::phead, N_gwflow_data2d::phead_start, N_gwflow_data2d::q, N_gwflow_data2d::r, N_gwflow_data2d::river_bed, N_gwflow_data2d::river_head, N_gwflow_data2d::river_leak, N_gwflow_data2d::s, N_gwflow_data2d::status, and N_gwflow_data2d::top.
void N_free_gwflow_data3d | ( | N_gwflow_data3d * | data | ) |
Release the memory of the groundwater flow data structure in three dimensions.
data | N_gwflow_data3d * |
Definition at line 92 of file N_gwflow.c.
References N_gwflow_data3d::drain_bed, N_gwflow_data3d::drain_leak, G_free(), N_gwflow_data3d::hc_x, N_gwflow_data3d::hc_y, N_gwflow_data3d::hc_z, N_free_array_2d(), N_free_array_3d(), N_gwflow_data3d::nf, NULL, N_gwflow_data3d::phead, N_gwflow_data3d::phead_start, N_gwflow_data3d::q, N_gwflow_data3d::r, N_gwflow_data3d::river_bed, N_gwflow_data3d::river_head, N_gwflow_data3d::river_leak, N_gwflow_data3d::s, and N_gwflow_data3d::status.