HydroGeoSphere/Porous Medium (Saturated)

Default porous media saturated flow properties
HydroGeoSphere is designed to perform the flow simulation in saturated mode unless instructed otherwise, and unless you modify the default values, all zones (and elements) in the domain will be assigned the default porous media properties which are listed in Table 5.5. These values are representative of a sand.

Note that the default state of the hydraulic conductivity tensor ($$K$$ in Equation 2.2) is that it is isotropic and that all off-diagonal terms are zero.


 * &bull; &bull; &bull;

General porous medium layout
You can use the general methods and instructions outlined in Section 5.8.1 to modify the default distribution of saturated porous media properties. A general porous medium layout is shown as the following instruction:

Note that each instruction given here has an associated scope of operation. For example, some can only be used in the prefix.grok file, in which case they will affect the current set of chosen zones or elements. Other instructions can only be used in a porous media properties (.mprops) file, in which case they affect only the named material of which they are a part. Finally, some instructions can be used in both types of files, in which case their behaviour will be as described above, and will depend on which type of file (i.e. prefix.grok or .mprops) that they are placed in. It is very important that the user understand this behaviour, and the scope of each instruction will be clearly indicated as they are introduced and discussed below.
 * &bull; &bull; &bull;

K isotropic
Scope: .grok .mprops
 * 1) kval Hydraulic conductivity [L T−1].

Assign an isotropic hydraulic conductivity (i.e. $$K_{xx}$$ = $$K_{yy}$$ = $$K_{zz}$$).
 * &bull; &bull; &bull;

K anisotropic
Scope: .grok .mprops
 * 1) kvalx, kvaly, kvalz Hydraulic conductivities [L T−1] in the x-, y- and z-directions respectively.

Assigns anisotropic hydraulic conductivities.
 * &bull; &bull; &bull;

K tensor
Scope: .grok .mprops
 * 1) valx, valy, valz Main-diagonal terms of the hydraulic conductivity tensor $$K_{xx}$$, $$K_{yy}$$ and $$K_{zz}$$ [L T−1].
 * 2) valxy, valxz, valyz Off-diagonal terms of the hydraulic conductivity tensor $$K_{xy}$$, $$K_{xz}$$ and $$K_{yz}$$ [L T−1].

Assign hydraulic conductivities which include the off-diagonal terms. Note that this option will only work if HydroGeoSphere is running in finite element mode and so this switch will automatically be set.
 * &bull; &bull; &bull;

Specific storage
Scope: .grok .mprops
 * 1) val Specific storage [L−1], $$S_s$$ in Equation 2.10.
 * &bull; &bull; &bull;

Porosity
<tt>Scope: .grok .mprops</tt>
 * 1) val Porosity [L3 L−3], $${\theta}_s$$ in Equation 2.1.
 * &bull; &bull; &bull;

Poisson ratio
<tt>Scope: .grok .mprops</tt>
 * 1) val Poisson’s Ratio [dimensionless], $${\nu}^\ast$$ in Equation 2.28b.
 * &bull; &bull; &bull;

Loading efficiency
<tt>Scope: .grok .mprops</tt>
 * 1) val Loading efficiency [dimensionless], $${\zeta}^\ast$$ in Equation 2.28b.
 * &bull; &bull; &bull;

Compute loading efficiency
<tt>Scope: .grok .mprops</tt>

This command should be included in the input file if you want the preprocessor to compute the loading efficiency [dimensionless] based on Equation 2.28b. In this case, values of Poisson’s ratio and compressibility of solids and water for the current media will be used. Porous media compressibility will be computed from the specific storage value. If this command is not included, the default or user-defined loading efficiency value is used instead.
 * &bull; &bull; &bull;

Solids compressibility
<tt>Scope: .grok .mprops</tt>
 * 1) val Solids compressibility [L T2 M−1], $$K_s$$ in Equation 2.22.
 * &bull; &bull; &bull;

Element K isotropic
<tt>Scope: .grok</tt>
 * 1) kval Hydraulic conductivity [L T−1].

Chosen elements are assigned isotropic hydraulic conductivities (i.e. $$K_{xx}$$ = $$K_{yy}$$ = $$K_{zz}$$).
 * &bull; &bull; &bull;

Element K anisotropic
<tt>Scope: .grok</tt>
 * 1) kvalx, kvaly, kvalz Hydraulic conductivities [L T−1] in the x-, y- and z-directions respectively.

Chosen elements are assigned anisotropic hydraulic conductivities.
 * &bull; &bull; &bull;

Read elemental k from file
<tt>Scope: .grok</tt>
 * 1) input_k_file_name Name of the file which contains the variable $$K$$ data supplied by the user.
 * &bull; &bull; &bull;

This file should contain the following input data:
 * 1) element_number, kxx, kyy, kzz Element number, hydraulic conductivities [L T−1] in the x-, y- and z-directions respectively.

All elements are assigned a variable $$K$$ from the file. For example, if there are 4 elements, with $$K_{xx}$$ = $$K_{yy}$$ = 5 m day−1 and $$K_{zz}$$ = 2 m day−1, the file would contain:

The user can supply variable values for any number of elements in file input_k_file_name. grok will then produce data for all elements honouring any previous zoned values and the user specified element-variable values, which are written to the file prefix<tt>o.elemental_k</tt>.

Map isotropic k from raster
<tt>Scope: .grok</tt>
 * 1) rasterfile Name of the raster file containing the hydraulic conductivity [L T−1] values. This is a string variable. The file should be formatted as outlined in Section H.

For each element in the set of currently chosen zones, a value for the isotropic hydraulic conductivity (i.e. $$K_{xx}$$ = $$K_{yy}$$ = $$K_{zz}$$) will be interpolated from the raster file data.
 * &bull; &bull; &bull;

Map anisotropic k from raster
<tt>Scope: .grok</tt>
 * 1) rasterfile_x Name of the raster files containing the x-component (i.e. $$K_{xx}$$) hydraulic conductivity [L T−1] values. This is a string variable. The file should be formatted as outlined in Section H.
 * 2) rasterfile_y As above but for the y-component (i.e. $$K_{yy}$$) hydraulic conductivity [L T−1] values.
 * 3) rasterfile_z As above but for the z-component (i.e. $$K_{zz}$$) hydraulic conductivity [L T−1] values.

For each element in the set of currently chosen zones, values for the anisotropic hydraulic conductivity (i.e. $$K_{xx}$$, $$K_{yy}$$ and $$K_{zz}$$) will be interpolated from the raster file data.
 * &bull; &bull; &bull;

Map porosity from raster
<tt>Scope: .grok</tt>
 * 1) rasterfile Name of the raster file containing the porosity values. This is a string variable. The file should be formatted as outlined in Section H.

For each element in the set of currently chosen zones, a value for the porosity will be interpolated from the raster file data.
 * &bull; &bull; &bull;

Read elemental porosity from file
<tt>Scope: .grok</tt>
 * 1) input_por_file_name Name of the file which contains the variable porosity data supplied by the user. This file should contain the following input data:
 * (a) element_number, por Element number, porosity.

All elements are assigned a variable porosity from the file. The user can supply variable values for any number of elements in file input_por_file_name. grok will then produce data for all elements honouring any previous zoned values and the user specified element-variable values, which are written to the file prefix<tt>o.elemental_por</tt>.
 * &bull; &bull; &bull;

Read elemental specific storage from file
<tt>Scope: .grok</tt>
 * 1) input_stor_file_name Name of the file which contains the variable specific storage data supplied by the user. This file should contain the following input data:
 * (a) element number, stor Element number, specific storage [L−1], $$S_s$$ in Equation 2.10.

All elements are assigned a variable specific storage from the file. The user can supply variable values for any number of elements in file input_stor_file_name. grok will then produce data for all elements honouring any previous zoned values and the user specified element-variable values, which are written to the file prefix<tt>o.elemental_stor</tt>.
 * &bull; &bull; &bull;

Map tortuosity from raster
<tt>Scope: .grok</tt>
 * 1) rasterfile Name of the raster file containing the tortuosity values. This is a string variable. The file should be formatted as outlined in Section H.

For each element in the set of currently chosen zones, a value for the tortuosity will be interpolated from the raster file data.
 * &bull; &bull; &bull;

Read elemental tortuosity from file
<tt>Scope: .grok</tt>
 * 1) input_tort_file_name Name of the file which contains the variable tortuosity data supplied by the user. This file should contain the following input data:
 * (a) element_number, tort Element number, tortuosity.

All elements are assigned a variable tortuosity from the file. The user can supply variable values for any number of elements in file input_por_file_name. grok will then produce data for all elements honouring any previous zoned values and the user specified elementvariable values, which are written to the file prefix<tt>o.elemental_tort</tt>.
 * &bull; &bull; &bull;

Write element k
<tt>Scope: .grok</tt>
 * 1) filenm Name of the file in which to write the hydraulic conductivity information.

Writes a file of element hydraulic conductivity values in ascii format.
 * &bull; &bull; &bull;

The following FORTRAN code segment shows how the file is opened and the data written:

where kxx, kyy and kzz are the hydraulic conductivity values in the three principal directions and ne is the number of elements in the mesh. If $$K$$ values are zoned, then the variable iprop(i) refers to the element zone id number of element i.

Write element k at z
<tt>Scope: .grok</tt>
 * 1) zfix z-coordinate for choosing which element to write.
 * 2) rtol Distance from zfix for test.
 * 3) filenm Name of the file in which to write the hydraulic conductivity information.

This instruction is identical to write element k except that information if only written for elements whose centroid is within a distance of rtol of the z-coordinate zfix are written to the file.
 * &bull; &bull; &bull;

Get average k
<tt>Scope: .grok</tt>

For the group of currently chosen elements, this instruction computes the average hydraulic conductivity and writes it to the <tt>.lst</tt> file. This is useful for example, when a random conductivity field has been generated and the user would like to know the average hydraulic conductivity of a region of the domain.
 * &bull; &bull; &bull;

AECL properties
<tt>Scope: .grok</tt>
 * 1) aecl_nd_file Name of the file which contains the nodal coordinates for the AECL Motif mesh.
 * 2) aecl_ne_file Name of the file which contains the element incidences and material property numbers for the AECL Motif mesh.

AECL Motif grid element material numbers are mapped onto the existing HydroGeoSphere mesh. The mapping is performed based on the proximity of HydroGeoSphere and AECL Motif element centroids. Once the material numbers have been mapped, zones should be chosen and appropriate material properties should be assigned.
 * &bull; &bull; &bull;

Random K field from FGEN
<tt>Scope: .grok</tt>
 * 1) fgenfile Name of file which contains the random hydraulic conductivity information generated by FGEN.

A random $$K$$ field which was generated by the program FGEN [Robin et al., 1993] is mapped onto the current mesh. HydroGeoSphere automatically dimensions and treats the hydraulic conductivity vector as an elemental property, as opposed to a zoned property.

FGEN generates two cross-correlated random fields having user-specified geostatistical properties. The user can also control the type and degree of cross-correlation. The user should contact the authors regarding the availability of FGEN.

The output from FGEN is in the form of values distributed on a rectangular grid which can be either 2-D or 3-D. Normally, a 3-D distribution is used and values are mapped by first determining which rectangular grid block the element centroid falls in, and then generating a value at the centroid by trilinear interpolation of the 8 neighbouring grid values. If an element is located outside of the FGEN grid, it is assigned a missing value, which is read from the FGEN file.

If the FGEN data is 2-D, values are generated using bilinear interpolation. For example, suppose the FGEN values are distributed on a plane parallel to the xy-plane. In this case any element whose centroid had xy-coordinates that fell inside the range of the FGEN data would receive a value determined by bilinear interpolation from the 4 neighbouring grid values, but independent of the z-coordinate of the element centroid.

The resulting element-variable hydraulic conductivity data are written to the file prefix<tt>o.elemental_k</tt>.
 * &bull; &bull; &bull;