My Project
|
Low-level corner-point processing routines and supporting data structures. More...
Go to the source code of this file.
Classes | |
struct | grdecl |
Raw corner-point specification of a particular geological model. More... | |
struct | processed_grid |
Result structure representing minimal derived topology and geometry of a geological model in corner-point format. More... | |
Enumerations | |
enum | face_tag { I_FACE , J_FACE , K_FACE , NNC_FACE } |
Connection taxonomy. More... | |
Functions | |
void | process_grdecl (const struct grdecl *g, double tol, const int *is_aquifer_cell, struct processed_grid *out, int pinchActive) |
Construct a prototypical grid representation from a corner-point specification. More... | |
void | free_processed_grid (struct processed_grid *g) |
Release memory resources acquired in previous grid processing using function process_grdecl(). More... | |
Low-level corner-point processing routines and supporting data structures.
User code should typically employ higher-level routines such as create_grid_cornerpoint() in order to construct fully formed UnstructuredGrid data structures from a corner-point specification. Incidentally, the routines provided by this module are used to implement function create_grid_cornerpoint().
enum face_tag |
void free_processed_grid | ( | struct processed_grid * | g | ) |
Release memory resources acquired in previous grid processing using function process_grdecl().
Note: This function releases the resources associated to the individual fields of the processed_grid, but does not free() the structure itself.
[in,out] | g | Prototypical grid representation obtained in an earlier call to function process_grdecl(). |
void process_grdecl | ( | const struct grdecl * | g, |
double | tol, | ||
const int * | is_aquifer_cell, | ||
struct processed_grid * | out, | ||
int | pinchActive | ||
) |
Construct a prototypical grid representation from a corner-point specification.
Pinched cells will be removed irrespective of any explicit "active" map in the geological model input specification. On input, the result structure "out" must point to a valid management structure. In other words, the result structure must point to a region of memory that is typically backed by automatic or allocated (dynamic) storage duration.
[in] | g | Corner-point specification. If "actnum" is NULL, then the specification is interpreted as if all cells are initially active. |
[in] | tol | Absolute tolerance of node-coincidence. |
[in,out] | out | Minimal grid representation featuring face-to-cell neighbourship definition, vertex geometry, face's constituent vertices, and local-to-global cell mapping. |
[in] | pinchActive | Whether cells with zero volume should be pinched out and neighboring cells should be connected. |