2. User manual

2.1. General description

THYRSIS (Transport HYdrogéologique Rapide Simulé en Insaturé et Saturé i.e. fast simulated hydrological flow in unsaturated and saturated porous environment) is a software to simulate flow and hydrogeological transport of chimicals and radiologic substance in both unsaturated and saturated porous environment.

It is a QGIS extension,so it could use all features provided by this GIS (Geographical Information System).

The 3D environment modeling is composed 1D unsaturated columns (vertical axis), that are coupled with a 2D water table model (horizontal axis). The water table flow model can be imported or directly created with THYRSIS. To create it, THYRSIS includes the GMSH mesh builder [Geuzaine2009] and provide a inversion process [Renard2008], [Renard2016].

1D and 2D simulation are realized with a external software specialized in flow and hydrogeological transport in porous environnement. The software used is METIS (Modélisation des Écoulements et des Transports avec Interaction en milieu Saturé i.e. flow and transport modeling in interaction with saturated environment), developped by the Ecole des Mines de Paris [Goblet1989]. This software does flow and transport simulations of miscible material, in porous and fratured environment. It also handles simulations in saturated and unsaturated zone. The use of other flow simulation software is in progress, especially OpenFoam.

THYRSIS can handle several injection type (flux, concentration or mass) on several zones. Injection can be define in surface or underground. It can also be a diffuse on the whole study area. Injection can also be done directly in the water table, ignoring the unsaturated zone.

THYRSIS includes incertainty management using Hypercube Latin. The user can generate several simulations with different parameters. To do it, user has to define probability law for each parameters, and THYRSIS provides main statistics : mean, standard deviation and confidence interval. It also provide probability maps according to a threshold on a value.

The plugin uses parallelized calculation with the MPI protocol. Parallelized calculation is done for several unsaturaed columns but also in case of incertainty calculation with several parameters sets.

Chemical modelization is limited to the solubility limit aspect, that defines solute flux on surface, and to the retention coefficient, which induce a slow-down in the solute flow. Compound speciation, complexation with organic material of humic substance type and complex interaction with rock groundmass are ignored during the simulation.

THYRSIS plugin, assorted to the METIS software, can simulate flow and material transport in “dual-porosity” model, as formulated by Gerke & Van Genuchten [Gerke1993].

THYRSIS is integrated to QGIS, so that users can define in a interactive way the injection zones and its caracteristics, so as the simulation parameters. User can also launch simulation, display the results both in the 2D interface of QGIS but also in 3D in a specific panel, and also generate in 1D for unsaturated columns visualisation, including mass balance graph over time, allowing comparison with real measures.

The plugin is based on Spatialite database, which stores hydrogeological model carateristics of the different area study (called site) and also the simulation parameters.


2.2. Modeling

The flow and hydrogeological transport modelization in THYRSIS is composed of a coupling of a vertical flow model in unsaturated zone and a horizontalflow model in saturated zone. These model are based on a flow field on permanent regime, builded for each site.

This flow field can be imported in THYRSIS from external calculation or directly from the methods present in the plugin. To do it, a 2D mesh has to be created with the GMSH mesh builder [Geuzaine2009] and the flow characteristics has to be determined using the HYNVERSE inverse process [Renard2008], [Renard2016].

2.2.1. Groundwater flow in permanent regime

Groundwater flow in permanent regime must be defined, because it is used for the transient flow calculation and for the transport in saturated zone. But it is also needed to build flow simulation and vertical transports in unsaturated zone, especially to define for each injection zone :

  • unsaturated zone thickness,

  • permeability in saturation,

This process is a 2D calculation whose parameters are :

  • infiltration, a constant in permanent regime, but can be heterogeneous,

  • water table thickness, inconstant on the whole modelized domain,

  • permeability field.

The output are :

  • potential field, or piezometric field, i.e the altitude of the water table in case of unconfined groundwater.

  • Darcy’s velocity field.

Futhermore, it is the same mesh that is used for flow and transport in saturated zone.

All this informations are saved in spatialite databases.

Groundwater flow in permanent regime is a complex hydrogeological modeling process. The model is build using a great amount of geologic data (vertical extension of the aquifer, according to his impermeability state level), topography, meteorology (for infiltration estimation) and hydrogeology. These data are the result of bibliographic study and borehole analysis on the site and its neighborhood, because the domain extent is often wider than the studied site. The permeability field definition is a hard task, mostly resolved using inversion calculation, coupling geostatistic and optimization process (HYNVERSE [Renard2008], [Renard2016]).

2.2.2. Groundwater flow in transient regime

Groundwater flow in transient regime is based on the model build in permanent regime, adding a storage capacity value, equal to the effective porosity in case of unconfined groundwater.

The flow simulation in transient regime needs the knowledge of the infiltration variation during time. This information is provided as an extern file, according to the appropriated syntax (cf. METIS files).

2.2.3. Flow and transport in unsaturated zone

Unsaturated zone modeling is based on 1D verticual columns creation. There is as many columns as injection zones, and there thickness are calculated using the topographic altitude and the piezometric value in permanent regime.

Flow is calculated using the Richards equation, using the Van Genuchten formula [Genuchten1980], modified by [Ippisch2006] :

S_{e}=\begin{cases} \frac{1}{S_{c}}\left[1+\left(\alpha h\right)^{n}\right]^{-m} & h>h_{e}\\ 1 & h\leq h_{e} \end{cases}

K=\begin{cases} K_{s}\sqrt{S_{e}}\left[\frac{1-\left(1-\left(S_{e}S_{c}\right)^{1/m}\right)^{m}}{1-\left(1-S_{c}^{1/m}\right)^{m}}\right]^{2} & S_{e}<1\\ K_{s} & S_{e}\geq1 \end{cases}

with :

  • h : pressure potential (L)

  • h_{e} : input pressure (L)

  • K : permeability (L.T^{-1})

  • K_{s} : saturation permeability (L.T^{-1})

  • S_{e}=\frac{\theta-\theta_{r}}{\theta_{s}-\theta_{r}} : reduced water content, or effective saturation

  • S_{c}=\left[1+\left(\alpha h_{e}\right)^{n}\right]^{-m}

  • \theta : water content

  • \theta_{r} : residual water content

  • \theta_{s} : saturated water content

  • m=1-\frac{1}{n}

  • n et \alpha (L^{-1}) are parameters to adjust model.

There is a one to one connection between water content \theta and the saturation permeability s using \omega : \theta=s\omega .

When h_{e}=0 , then S_{c}=1 and we found the original Van Genuchten formula.

2.2.3.1. Mesh building of unsaturated columns

The columns are splited in centimetric thickness elements, on one hand to keep numeric stability even for low dispersivity value, and on the other hand to secure accurate mass balance.

More precisely, at the top of the column, the thickness of the first element is :

min\left(1cm,\frac{e_{ZNS}}{100}\right)

where e_{ZNS} is the thickness of the unsaturated column, expressed in centimeters.

The first element thickness is mostly equal to 1 cm, except for columns with a thickness inferior to 1m. Then elements thicknesses increase with a geometric progression until the middle of the columns, to finally dicrease in symmetry to reach the bottom of the column.The geometric progression is deduce from the ratio between the thickness of the middle column element and the thickness of the top column element. The ratio is equal to 5 by default and can be configured by the user (coef_maillage in simulations table).

2.2.3.2. Unsaturated zone parameters

The unsaturated zone differs from the saturated zone, bacause the flow and the transport are processed in a single simulation, that begins with a flow calculation in permanent regime followed by a transport calculation (and flow calculation as appropriate) in transient regime.

The migration model parameters in unsaturated zone are :

  • kinematic porosity \omega_{c} (fracture and/or matrix pore system, according to the studied site),

  • total porosity \omega_{t},

  • chemical volumetric mass density \rho_{s},

  • \alpha et n de van Genuchten coefficients,

  • maximal and residual saturations,

  • longitudinal dispersivity (transverse dispersivity doesn’t exist in 1D),

  • chemical retention rate K_{d} ,

  • chemical solubility L_{s} (cf. Mass injection).

Among these parameters, the total porosity and the volumetric mass density are used to calculate the time delay coefficient R, used in the transport equation, according to the following formula :

R=1+\frac{\left(1-\omega_{t}\right)}{\omega_{c}}\rho_{s}K_{d}

As in saturated zone, transient infiltration simulation in unsaturated zone requires to know the infiltration variation along time, that is provided as an extern file, according to the appropriate syntax(cf. annexe METIS files).

2.2.3.3. Diffuse injection on the whole domain

It is possible to simulate a diffuse injection on the whole domain, either by simulating as many unsaturated vertical columns as mesh nodes, or by simulating columns groups (composed of similar thickness and permeability) to reduce the amount of simulations. In this case, two parameters must be defined (simulations table) :

  • pas_echant_zns is the column sampling step, in case of column group formation by size. It defines the size of a same group. If the step is defined to 5 m, groups will be defined as follow [0,5], [5,10], [10,15], etc. More the step is high, the more the number of groups is low.

  • rapport_max_permeabilite is the maximal ratio of permeability tolerated in a same group of columns, by default equal to 10.

2.2.4. Transport in saturated zone

Transport in saturated zone is based on the flow model in permanent regime or in transient regime.

A injection in the water table can be :

  • a flux, with a concentration or a mass, defined via the interface, if the migration in unsaturated zone has not to be modeled (cf. injection),

  • a flux, defined from fluxes calculated at the bottom of unsaturated columns. In this case, the flux is injected to the mesh nodes related to each injections zones. Like this it will cover the injection surface.

Transport model paramaters in saturated zone are :

  • porosity (fracture and/or matrix pore system, according to the studied site),

  • longitudinal and transverse dispersivities,

  • chemical retention rate.

In case of a flow in transient regime, the calculation is made using the METIS software with the “ phreatique ” option, and the storage capacity coefficient is equal to the effective porosity.

2.2.5. Injection characteristics

Chemical injection is defined by the following characteristics :

  • coordinates (x, y) of the injection zone center,

  • depth,

  • area S concerned by the injection,

  • flux F, expressed in kg/s or Bq/s,

  • injection duration \Delta T.

To ease the use, the injection can be defined as a concentration or a mass, as described below. A leak can also be modeled. To define it, it is needed to define a water volume.

2.2.5.1. Concentration injection

In case of definition by concentration C, flux F is calculated from :

F=ISC

where I is the rain water infiltration flux, defined with the flow model in permanent regime.

2.2.5.2. Mass injection

In case of definition by mass, flux F and duration \Delta T are calculated using the solubility limit of the chemical L_{s} :

F=ISL_{s}

\Delta T=\frac{M}{F}

2.2.5.3. Leak

It is possible to add a water injection to the chimical injection by defining the water volume injected V, in addition of flux F or concentration C. In that case, injection velocity is calculated from :

v=\frac{V}{S \Delta T}

This velocity can’t be greater to the saturated permeability K_{s}. Otherwise injection duration is modified by :

v > 0.9 K_{s}

alors la durée d’injection est modifiée par :

\Delta T=\frac{V}{0.9 S K_{s}}

and a message is emited to signal that it is advised to grow the injection area to :

S=\frac{V}{0.9 K_{s} \Delta T}

If concentration C is provided, then flux is equal to :

F=vSC

The following spreadsheet summarize the flux calculation, according to the available data :

Data

V=0

V>0

F, \Delta T

F

v=min(\frac{V}{S \Delta T}, 0.9 K_{s}), \Delta T = max(\Delta T, \frac{V}{0.9 S K_{s}})

C, \Delta T

F=ISC

v=min(\frac{V}{S \Delta T}, 0.9 K_{s}), \Delta T = max(\Delta T, \frac{V}{0.9 S K_{s}}), F=vSC

M, L_{s}

F=ISL_{s}

No calculation

2.2.6. Incertainty analysis

THYRSIS provides a feature to create several parameters set for flow and transport model in saturated and unsaturated zone. These paramters set will vary according to a defined probability law (uniform, log-uniform, normal, log-normal). Doing this will be useful to deduce confidence intervals on the simulated concentration at the calcul points, or to create probability map according to a threshold that should not be excessed.

To use incertainty analysis, a number of simulation must be define (above 1), but also a probability law and min/max toletared values for each parameter. Then parameters sets are generated by Hypercube Latin, and THYRSIS will do a simulation per parameters set (simulations can be parallelized according to the Preferences defined), and finally THYRSIS will agregate results (mean, standard deviation).

Graphics will display confidence intervals or probability maps feature will be activate.

2.2.7. Dual porosity model

Dual-porosity flow model, as explained by Gerke & Van Genuchten [Gerke1993], is available in THYRSIS thanks to Metis software. This model is based on the hypothesis that the Richard equation applies in a matrix pore system but also in a fracture pore system. For a one dimensional vertical system, flow equations in a elementary volume are :

C_{f}\frac{\partial h_{f}}{\partial t}=\frac{\partial}{\partial z}\left(K_{f}\frac{\partial h_{f}}{\partial z}-K_{f}\right)-\frac{\Gamma_{w}}{w_{f}}-S_{f} in fracture pore system

C_{m}\frac{\partial h_{m}}{\partial t}=\frac{\partial}{\partial z}\left(K_{m}\frac{\partial h_{m}}{\partial z}-K_{m}\right)-\frac{\Gamma_{w}}{1-w_{f}}-S_{m} in matric pore system

with :

C_{f,m}=S_{w}S_{s}^{f,m}+\omega_{f,m}\frac{\partial S_{w}}{\partial h}

\Gamma_{w}=\alpha_{w}\left(h_{f}-h_{m}\right)

\alpha_{w}=\alpha_{w}^{*}K_{a}

\alpha_{w}^{*}=\frac{\beta}{a^{2}}\gamma_{w}

and :

K_{f} and K_{m} (L.T^{-1}) : frature and matrix pore system permeabilities,

h_{f} and h_{m} (L) : frature and matrix pore system hydraulic potential,

\Gamma_{w} (T^{-1}) : exchange term describing water transfert between frature and matrix pore system,

S_{f} and S_{m} (T^{-1}) : source terms in frature and matrix pore system,

w_{f} : volume fraction of the frature pore system in the total system,

C_{f} and C_{m} (L^{-1}) : specific water capabilities in frature and matrix pore system,

S_{w} : water saturation rate,

S_{s} (L^{-1}) : specific storage capacity coefficient in frature and matrix pore system,

\omega_{f} and \omega_{m} : porosity in frature and matrix pore system,

K_{a} (L.T^{-1}) : transition permeability between frature and matrix pore system,

a (L) : mean half-distance between fractures,

\beta : structure factor, that is the geometry of the fracture system (beta=3 in case of a set of orthogonal and regularly spaced fratures),

\gamma_{w} : empiric factor equal to 0,4.


2.3. Installation

2.3.1. THYRSIS installation

2.3.1.1. On Windows

To install Thyrsis on Windows, you need to use the OSGeo4W installer. Run it and choose the Advanced Install.

_images/osgeo4w_11.png

Follow the instructions until the installer asks you to choose the mirror to download package, add the following url :

And select it before clicking on next.

_images/osgeo4w_21.png

Search thyrsis amongst the available packages, and click on Skip to switch it on install (the thyrsis package version will be shown).

_images/osgeo4w_31.png

Then click on Next until the installation begins.

2.3.1.2. On Linux

Debian and related distributions

Clone the THYRSIS git deposit in a directory:

git clone https://link_to_the_repository

THYRSIS uses python3 (should be already installed with QGIS ) and some dependencies are required.

Note

Preferably, favor your distribution packages to pip packages. Distribution packages tend to be more stable to pip

A Makefile is provided to install THYRSIS and the dependencies. Use the following command :

If you already installed the dependency, you can install THYRSIS only using :

or directly use thyrsis.package module to configure the installation :

python -m thyrsis.package -d <optional: no documentation> --loc <optional: locale to use for documentation en/fr> -i <optional: path to your QGIS user plugin directory, default: ~/.local/share/QGIS/QGIS3/profiles/default/python/plugin>

Use the -d to install THYRSIS without documentation.

You will need to activate THYRSIS extension into the QGIS plugins menus (Plugins > Manage and Install Plugins…). During the QGIS first launch, a .thyrsis folder should be created into the $HOME directory.

On CentOS and related distribution

You can now use the makefile as Debian-like system.

Note

Depending on you Centos version, package name can change. Please take a look of yum_requirements.txt

With some distribution (Centos6 for instance), it is not possible to access hidden folder through QGIS files explorer. To skip this problem, we recommand you to create a symbolic link of the plugin installation in a accessible folder. For example :

ln -s .local/share/QGIS/QGIS3/profiles/default/python/plugins/thyrsis ~/

2.3.2. Simulation codes

Simulation codes are executables needed by the plugin. These executables are used to simulate flow and hydrogeological transport.

The METIS software is provided with THYRSIS (installed with the Makefile or with OSGeo4W) and should be added to the $PATH.

OPENFOAM can also be used. If you install it, make sure the groundwaterFoam executable is accessible through the $PATH

You will choose the simulation codes using the Preferences dialog in QGIS.

2.3.3. Install presentation

To work, THYRSIS is based on several spatialite databases, which are organized in a .thyrsis folder in your home folder, as such :

  • a Spatialite database named sites.sqlite, which contains caracteristics of the modeled sites, the measured data on theses sites, and also the parameters of saved simulations.

  • a mesh directory for hydrogeological model, which contains each Spatialite database associated to each hydrogeological model, named as :

    SITE_MODEL_STUDY.mesh.sqlite, where :

    • SITE is the site name - saved in sites.sqlite database,

    • MODEL is the model name - a model is composed of a mesh and of several field and hydrogeological parameters,

    • STUDY is the name of a particular study, associated to the considered model.

  • a lin64 directory for 64 bits linux binaries.

  • a win32 directory for 32 bits windows binaries and .dll fils associated.

THYRSIS plugin adds a new menu to the QGIS menu bar and gives access to several features. Theses features are resumed in the Interface chapter. This chapter begins with the “Preferences” menu, because it explains how to set each parameters.


2.4. Interface

2.4.1. Preferences

The Preferences menu allows to define the general configuration. The configuration is savedxa0:

  • in the .thyrsis.ini file for each project folder where the calculation database is saved,

  • in the thyrsis.ini file of the $HOME/.thyrsis folder.

At the first use of the plugin, the second file if automatically created with default values. Use the Preference menu to modify the standard configuration (cf. infra).

When a project is re-opened, the configuration loaded is the .thyrsis.ini file of the database folder. Therefore it is possible to define configuration for each project.

2.4.1.1. Installation

_images/Preferences_installation.png

Figure 2.4.1 : Preferences menu, installation window

Installation preference defines the location of files and folders needed by the plugin :

  • the folder where the background layer map are saved (.vrt files),

  • the MPI configuration file, that included computational units to use and the number of proccess available for each unit, writed like :

    tata:8
    titi:8
    toto:4
    

Futhermore, it is also possible to define the number of process to use for parallelized calculation and the maximum number of vertical 1D columns to display.

Finally, two checkbox are present to define :

  • if the logs have to be displayed in the terminal,

  • if detailled logs is wanted (verbosed mode).

2.4.1.2. Variables

_images/Preferences_variables.png

Figure 2.4.2 : Preferences menu, Variables window

The variables preferences is available to define the values to assess and save, among :

  • Potential,

  • Darcy’s speed,

  • Concentration,

  • Activity,

  • Saturation,

and also the display of these value by choosing:

  • the unit,

  • the scale,

  • the number of classes.

The scale define the ratio between the minimal and maximal value obtained after the simulation calculation. By default the defined scale is 0.001, but a lower value can be chosen to get a better view of the plume extent.

The number of classes is used to display the plume with a graduated scale.

The unit for masse balance display can also be defined in this window. It’s also possible to use a checkbox to hide units, for communication purpose.

2.4.1.3. Animation

_images/Preferences_animation.png

Figure 2.4.3 : Preferences menu, Animation window

The refresh rate used for video export can be configure in this window.

2.4.1.4. Matplotlib

_images/Preferences_matplotlib.png

Figure 2.4.4 : Preferences menu, Matplotlib window

This window allows to configure size of label and 1D legend of graph curves displayed using matplotlib.

2.4.1.5. Database

_images/Preference_database.png

Figure 2.4.5 : Preference menu, Database window

This window allows the user to use experimental database.

2.4.4. Dialogs and panels

2.4.4.1. 2D Panel

_images/Thyrsis_2D.png

Figure 2.4.19 : Example of 2D panel, with result layer displayed after a simulation

The 2D panel is the main interface of QGIS, more precisely the map canvas. It is connected this the “Layers” panel and it displays 2D map layer assorted with background map, the specific values of the hydrogeological model that are displayed are :

  • mesh nodes,

  • mesh,

  • points of interest,

  • boreholes,

  • contours,

  • potential (piezometric level),

  • permeability,

  • DEM,

  • aquifer wall altitude,

  • Darcy’s velocity,

  • unsatured zone thickness,

  • water table tickness in permanent regime,

  • potential of reference, that is obtained by interpolation of the piezometric data, and could be used to build the hydrogeological model, through inversion calculation.

Injection zones, defined in the Thyrsis panel, are displayed in the 2D panel.

Ater a calculation, a result layer are also displayed in the 2D panel. The date and the variable to display are controled by the Menu bar.

2.4.4.2. THYRSIS panel

_images/Thyrsis_Injection_defaut.png

Figure 2.4.20 : Example of the Thyrsis panel, used to define injection zones

The THYRSIS panel is used to define injection zones.

The first values to define are :

  • the simulation name,

  • the chemical to use, to select in the checkbox,

  • the retention coefficient (or share coefficient) and the solubility limit in case of mass injection,

  • the begin date of the simulation, DD/MM/YYYY [hh:mm:ss] format,

  • a tuple (duration, step), that defines the simulations dates output.

Then the type of injection can be choosen by clicking on :

_images/Thyrsis_Flux.png

Figure 2.4.21 : Example of THYRSIS panel to define a flux injection zone

According to the injection type selected, fields to define will differ, as mention in the injection part. A non-null water volume is a leak that induced a flow simulation in transient state regime.

It is possible to add as many injections as wanted by clicking again on the button type, but it is impossible to mix several injection type in the same simulation.

The center coordinates of the injection zone can be defined manually or by clicking on ◎ and then clicking on the wanted location in the map canvas

Similary the surface can be defines manually in the Area field, or automatically calculated by clicking on draw and then drawing the shape on the map canvas.

Below the THYRSIS panel, three buttons allows to cancel or save the modifications, and also to launch calculation :

  • “Cancel” will cancel current modifications and reload the saved informations that are stored in the database.

  • “Save” will save the modifications (data and geometry) in the calculation database.

  • run_simulation will launch the simulation.

Note : If you made modifications, it is important to save it by clicking on “Save” before launching the calculation by clicking on run_simulation .

2.4.4.3. Borehole

_images/Thyrsis_Forage.png

Figure 2.4.22 : Example of stratigraphic log diplayed in the borehole panel

When stratigraphic and lithologic informations are mentionned in the sites.sqlite database, the stratigraphic log can be displayed in the borehole panel. Click on forage in the bar menu and select the borehole directly in the map canvas. If the fracturated rate is known, it is displayed in the stratigraphic log.

This graphic representation is based on differents codifications presented in the stratigraphic logs annexe :

  • codification on the geological time scale (BRGM),

  • RGB colorimetric codification of the Commission for the geological map of the world (CGMW),

  • the figure codification from USGS.

2.4.4.4. 3D panel

_images/Thyrsis_3D.png

Figure 2.4.23 : Exeaple of the 3D panel

The 3D panel is used to display a three dimension representation of three different level :

  • the aquifer water table (or waterproof basis),

  • potential (or pizzométric level),

  • topographic altitude (DEM).

If results from a simulation are available, it is displayed on the potential layer, withe the same symbology used in the map canvas.

This panel is controled through the options of the “3D parameters panel” :

  • the cursor is used to ajust vertical scale,

  • checkbox can be activated to display :
    • texture,

    • contours,

    • boreholes,

    • calculation points.

Color of the DEM and contours can be modified.

2.4.4.5. Unsaturated zone (ZNS)

_images/Thyrsis_ZNS.png

Figure 2.4.24 : Example of results displayed in the panel dedicated to the unsaturated zone

The ZNS panel displays the temporal evolution of the simulated variables, in the modelized unsatured zone columns.

These variables and units must be selected in the combo box of the bar menu.

Few options are available to define the legend :

  • Automatic scale update of the legend : the legend scale is updated for each date. If desactivated, the legend is calculated on the whole timeseries.

  • Legend : this action open a dialog to custom the legend,

  • Legend position : used to choose the legend position.

2.4.4.6. 1D panel

The temporal evolution curves are obtained by clicking on the plot button or the plot_bilan button in the Menu bar, and are displayed in a new panel :

  • plot_bilan displays the temporal evolution of mass balance (if existing).

  • plot displays the temporal evolution of the selected variable in the combo box of the Menu bar, for each selected points in the QGIS map canvas.

_images/Thyrsis_1D_bilan.png

Figure 2.4.25 : Example of 1D representation (temporal evolution of mass balance)

_images/Thyrsis_1D_potentiel.png

Figure 2.4.26 : Example of 1D representation (temporal evolution of potential value with measure point)


2.5. Mesh

2.5.1. Operating principle

The mesh building is based on the use of the GMSH software [Geuzaine2009]. To build a mesh it is necessary to define the limits (called contours) of the study area (called domain) and of the sub-domains to model. Each sub-domain could a different size of mesh. It is possible to define fix points and lines that will be integrated to the mesh.

For each element (polyline) of a contour, it is possible to define if the limit will have a imposed potential. Doing this will identity the nodes on this contour as the limit. By default, imposed potential value is equal to the topographic altitude value (DEM), to fit with river and outcrop.

The mehs build needs two raster layer :

  • MNT (DEM), digital elevation model,

  • MUR, aquifer watertable altitude, or waterproof basis.

Once the mesh built, it is needed to define the attributes table of nodes and mesh layer to finish the hydrogeological model. This can be done manually or by following the inversion process in the next chapter.

2.5.2. Implementation

2.5.2.1. New mesh project creation

The mesh project will be created according to the current projection, available on the bottom right corner of QGIS :

_images/srid.png

Please apply the wanted projection before creating the project.

To create a new mesh project, use the menu Thyrsis->Nouveau->Maillage…

_images/mesh01.png

Figure 2.5.1 : New mesh creation

Then enter a name for the mesh project, e.g. SACLAY_TEST. The name must :

  • begin with the site name (⚠ case sensitive),

  • follow with a suffix, begining with _, to distinguish the model.

A Spatialite databse named SACLAY_TEST.mesh.sqlite is created, with a SACLAY_TEST.mesh.qgs (QGIS project). This project will be open in QGIS.

_images/mesh02.png

Figure 2.5.2 : New mesh project created

2.5.2.2. MNT and MUR layer definition

Open raster layer (.tif files) needed for the mesh build. It is necessary to provide a DEM layer (MNT) and a aquifer watertable altitue layer (MUR).

User can use xyz_to_tif python script to transform a .xyz file into a .tif file :

python -m thyrsis.utilities.xyz_to_tif file.xyz

Add as many raster/vector layers useful to the mesh definition (i.e satellite images, buildings, site contours).

_images/mesh03.png

Figure 2.5.3 : Open the raster layer (MNT and MUR).

Zoom on the layers extent.

_images/mesh04.png

Figure 2.5.4 : DEM layer opened in QGIS, after a zoom on the layer.

2.5.2.3. Contour elements definition

_images/mesh05.png

Figure 2.5.5 : Add of a contour layer providing the contours of the site and the domain to mesh (if it exists).

Select the contours layer and configure the snapping mode to use snap on vertex in the QGIS preferences.

_images/mesh06.png

Figure 2.5.6 : Snapping option selection

_images/mesh07.png

Figure 2.5.7 : Snapping menu. Snap on vertex with a 10m precision. Topological edition will move together all vertex placed at the same location.

Activate the edition mode on the contours layer, then add contours manually or copy contours from a existing contours layer :

  • Existing contours can be copied in the contours layer using copy/paste action,

  • Contour part can be defined by selecting a contour and cutting it with the “Edit > Separate entities” tools,

  • Contours part can be merged together by selecting it and using the “Edit > Merge selected entities”.

It is necessary to define a element length for each contour element. To do it, open the attribute table of the contours table. If the element has an imposed potential, define the field value to 1. In this case, potential will be taken from the DEM layer.

When every elements are defined, close the edition mode and save the changes.

_images/mesh08.png

Figure 2.5.8 : Specify for each contour element its length (m) and if it will have a imposed potential value (=1).

Once changes are saved, domaines and extremites layer will be automatically updated. It will check topological consistency.

_images/mesh09.png

Figure 2.5.9 : Area after changes on the contours layer, defining a closed domain.

Notes :

  • An end feature (in the extremites layer) in the middle of a contour is almost linked to a wrong snapping configuration,

  • Creating a contour element, it is not possible to use snapping on itself (QGIS limitation). To create a closed domain using one element, draw almost closed contour, then use the node tools to move the last vertex on the first one (using snapping)),

  • Open contours are accepted inside a validated domain, they are considered as fix lines of the mesh..

2.5.2.4. Fix point definition

It is also possible to define fix points that will be integrated to the mesh nodes. The neighbouring nodes of a fix node is specified by the longueur_element attribute. Fix points can be copied from another layer.

⚠ Caution: element length is required for every fix points.

_images/mesh10.png

Figure 2.5.10 : Adding fix points.

2.5.2.5. Mesh generation

Once the domains and fix points defined, click on the maillage button to create the mesh. In the dialog, choose the DEM layer (MNT) and the water table altitude layer (MUR). If it exists, you can add a potential layer. THYRSIS generates several layers:

  • maillage, containing triangles of the mesh,

  • noeuds, containing the mesh nodes,

  • altitude, a layer that provide altitude at each mesh node, based on the MNT (DEM) layer,

  • altitude_mur, a layer that provide altitude of the water table at each mesh node, based on the MUR layer.

  • potentiel_reference, provides the potential value at each node, if the potential layer has been provided.

_images/mesh11.png

Figure 2.5.11 : Dialog window for the mesh building, with MNT, MUR and potential layer selection.

_images/mesh12.png

Figure 2.5.12 : Final mesh with transparency.

2.5.2.6. Parameters definition

To finish the model definition, user has to define parameters value in the parametres table :

_images/mesh13.png

Figure 2.5.13 : Parametres table to fulfill.


2.6. Inversion

2.6.1. Operating principle

The goal of the inversion process is to determined the permeability field so that it fits with a flow calulation as described by the input piezometric data.

The piezometric data can be:

  • values provided as ponctual location, called pilot points (points pilotes),

  • values provided on the whole study area, with a piezometric layer, called reference potential (potentiel de référence). This layer is a result of geostatistical methods from ponctual measures.

The inversion process integrated in the plugin is limited to permanent regime (homogenous infiltration) and is based on the pilot points method [Renard2008], [Renard2016].

The operating principle is to ajust permeability on several “pilots zones), using an iterative calculation to minimize the mean error between the piezometric simulated values and the measured values :

e_{i}=\frac{1}{n}\sum_{k=1}^{n}\left|h_{k}^{i}-h_{k}^{m}\right|

where :

  • n is the number of pilot point,

  • h_{k}^{i} is the piezometric value calculated at the k location for the i iteration,

  • h_{k}^{m} is the piezometric value measured at the k location.

at each iteration, permeabilities of each pilot zoneare ajusted as follow :

K_{j}^{i+1}={\displaystyle (1+\alpha \frac{\delta_{j}^{i}}{\delta_{max}^{i}}) K_{j}^{i}}

with :

\delta_{j}^{i}=\frac{1}{n_{j}}\sum_{k=1}^{n_{j}}\left(h_{k}^{i}-h_{k}^{m}\right)

where :

  • \alpha is stricty between 0 et 1,

  • K_{j}^{i} is the permeability of the j zone for the i iteration,

  • n_{j} is the number of pilot points in the j zone.

  • \delta_{max}^{i} is the maximal value of |\delta_{j}^{i}| for the i iteration.

\alpha parameter is initiated to 0.5. The value seems to be a good compromise between precision and speed convergence. When the error increasing in a to important way, \alpha parameter is divided by two and a new iteration starts from the before last iteration.

For each permeabilty zone, permeability is constrained by min and max value :

\forall i,j\;\;\;K_{j}^{min}\leq K_{j}^{i}\leq K_{j}^{max}

Iterative process is stopped in several case :

  • when the maximal number of iteration is reached,

  • when the calculated error is inferior to a limit value e_{max} : e_{i}\leq e_{max},

  • when \alpha parameter is inferior to the minimal value : \alpha\leq \alpha_{min},

  • when the number of attempt to decrease \alpha parameter has been reached.

2.6.2. Implementation

Inversion is triggered by clicking on inversion button.

At first user must define pilots point in the points_pilote layer, with informations about the zone each point belongs and the piezometric value measured (altitude_piezo_mesuree). Zone must be numbered from 1 without empty number. Several pilot points can belong to the same zone.

It is possible to import delimited text files in QGIS (QGIS menu “Layer > Add a layer > Add a delimited text layer”) and do a copy/paste action between the imported layer and the points_pilote layer. To ease the copy/paste action, our advice is to name the columns in the imported layer as the points_pilote table columns (nom, zone, altitude_piezo_mesuree).

_images/inversion01.png

Figure 2.6.1 : Points pilots table

Then user must define the parameters contained in the hynverse_parametres table :

  • infiltration : yearly mean infiltration m/s. For heterogeneous infiltration, please enter 0 value and provide a u_infiltration.sat file (include a value for each node).

  • icalc : calcul type (default value : 3),

  • niter : number of iteration (default value : 20),

  • errlim : error limit, process stops when the error is inferior to this value (default value : 0.1 m),

  • alfmin : minimal value for \alpha, process stops when \alpha is inferior to this value (default value : 10^{-5}),

  • alfa : initial \alpha value (default value : 0,5),

  • terr : initial value of the maximum permissible growth rate of error (default value : 1.2), if the growth rate of error is superior, the last iteration is not take into account and a new one is done by dividing \alpha by 2. This can be done nbessaismax time (see below),

  • nessaismax : number of iteration possible by dividing \alpha by 2 (default value : 10),

  • permini : initial permeability value (default value : 2.10^{-5}),

  • permin : min permeability value (default value : 2.10^{-7}),

  • permax : max permeability value (default value : 2.10^{-4}),

  • nv_npp : number of closest nodes from the control points, used for control points potential estimation (default value : 4),

  • nv_ppm : number of closest control points from meshes center, used for permeability field estimation at each mesh (default value : 10),

  • dv_pp : radius (m) from control points to smooth permeability field by local mean (default value : 300 m),

  • d_mesh : min length from mesh center to node with imposed potential, used to add the center as control points (in case of an extern referencial to potential) (default value : 100 m).

_images/inversion02.png

Figure 2.6.2 : hynverse_parametres table

inversion button will open the following dialog :

_images/tutorial17_bis1.png

Select the first item to launch inversion.

Note

You can use a permability field (raster layer or constant value) to build the model without doing the inversion

Inversion process will display a new panel with two graphs :

  • the first one displays error evolution at each iteration,

  • the second displays correlation evolution between simulated and measured piezometric values at each iteration, group by zone.

The process updates the permeability map at each iteration and the layer is displayed if it has been activated before the calculation.

_images/inversion03.png

Figure 2.6.3 : QGIS windows during a inversion process

Note that in the above figure, nodes with imposed potential are highlighted. To do it, you can do it in the DBManager (QGIS menu “Database>DBManager…”). Open it, select the current calculation databse and execute the following SQL request :

select * from noeuds, potentiel_impose where noeuds.OGC_FID=potentiel_impose.nid

When the result is loaded, use the “Load as a new layer” utilities, define the geometry column in the “GEOMETRY” field, and name the new layer :

_images/noeuds_potentiel_impose.png

2.7. Spatialite database

This capter describes the three type of databse used by THYRSIS plugin.

2.7.1. sites.sqlite database

sites.sqlite database, defined in the installation preference, contains different table, describing available chemicals to use in simulation, the sites and the reference simulations.

2.7.1.1. elements_chimiques table

The elements_chimiques table contains the main characteristics of chemical elements and isotopes : number and atomic mass, specific activity and radioactive decay.

2.7.1.2. Sites tables

  • sites: this table links each site to a integer id.

  • points_interet: this table contains all interest points for each site, and associates a name and a belonging group to each of it.

  • mesures: this table contains all the measures associated to the interest point, with a date, an id of the measured chemical, the concentration, the piezometric level and its incertainty.

  • forages: this table contains general characteristics of borehole, which are used for stratigraphic display (nom, type, date de réalisation, profondeur, hauteur du tube par rapport au sol).

  • lithologies: this table provides for each borehole the rock type and its USGS code, according to the depth.

  • stratigraphies: this table provides for each borehole the geological formation and its BRGM code, according to the depth.

  • fracturations: this table provides for each borehole the fraturated rate, according to the depth.

2.7.1.3. Reference simulation tables

Some simulations, qualified as reference simulation, are stored in the sites.sqlite database, and can be use as starting point to new simulations. Several tables are used to store these informations :

  • simulations: this table refers to a site and a hydrogeological model, and defines some parameters as follow :
    • nombre_de_simulations is the number of simulations to do, upper to 1 in case of incertainty calculation.

    • coef_maillage is the ratio between the mesh thickness in the middle of column and the thickness of first mesh on surface, default value : 5.

    • pas_echant_zns is the column sampling step, in case of column group formation by size. It defines the size of a same group. If the step is defined to 5 m, groups will be defined as follow [0,5], [5,10], [10,15], etc. More the step is high, the more the number of groups is low.

    • rapport_max_permeabilite is the maximal ratio of permeability tolerated in a same group of columns, by default equal to 10.

    • permeabilite_zns_uniforme is the permeability value used in saturated zone, if it is a non-null value and if the u_permeabiliteZNS.sat file is missing, this value is attributed to each unsaturated column. Default value is null by default.

    • type_injection is the injection type used, the available values are ‘aucune’ (default) i.e. none, ‘flux’, ‘concentration’ ou ‘mass’.

    • type_infiltration is the infiltration type used, the available values are ‘permanente’ (default) i.e. permanent regime ou ‘transitoire’ i.e. transient state regime.

    • insature can be ‘oui’ (default) i.e. yes or ‘non’ i.e no that defines if the unsatured zone has to be modeled.

  • parametres: this table refers to the simulations table, and defines the values of each parameters for a specific simulation :
    • nom is the code that refers to the followings values :

      • WC, cinematic porosity

      • VGA, Alpha van Genuchten (m^{-1})

      • VGN, n van Genuchten

      • VGR, residual saturation

      • VGS, maximal saturation

      • VGE, inlet pression

      • WT, total porosity

      • VM, volumic mass (kg/m³)

      • DK, partition coefficient (m³/kg)

      • SL, solubility limit (kg/m³)

      • DLZNS, ZNS longitudinal dispersivity (m)

      • DLZS, ZSl longitudinal dispersivity (m)

      • WM, porosity matrix

    • valeur will be the parameter value if the number of simulation is 1,

    • valeur_min is the minimal value of the parameter in case of Hypercube Latin use,

    • valeur_max is the maximal value of the parameter in case of Hypercube Latin use,

    • loi_de_variation will be the probability law used for the parameter in case of Hypercube Latin use. Available values are ‘constant’ (default), ‘normal’, ‘lognormal’, ‘uniform’ ou ‘loguniform’.

    VGA, VGN, VGR, VGS, VGE parameters are the coefficients \alpha, n, \theta_{r}, \theta_{s}, h_{e} in the Ippisch & Vogel (ZNS) formulation.

    In case of dual-porosity simulation, the parameters listed above are duplicated, with the 2 suffix, asn four parameters are added :

    • PL, bond permeability (m/s),

    • ASHAPE, factor corresponding to the average half-distance between two fractures,

    • BSHAPE, factor depending to the fractured geometry (3 value corresponds to regularly spaced orthogonal fractures),

    • CSHAPE, empirical coefficient, usually equals to 0,4.

    PL, ASHAPE, BSHAPE et CSHAPE parameters are the coefficients K_{a}, a, \beta et \gamma_{w} of the Dual-porosity.

  • metis_options: this table refers to the simulations table and groups all METIS options. The default values suit for almost all case. But some modifications can be necessary for special case. This options are briefly defined below, with the default values.

    • niter_gc_zns: maximal number of ZNS (unsaturated zone) iteration for the conjugate gradient (100).

    • niter_gc_zs: maximal number of ZS (saturated zone) iteration for the conjugate gradient (100).

    The following options affect the flow resolution in permanent regime in the ZNS :

    • saturation_initiale: initial saturation value used for the ZNS flow calculation in permanent regime (0.8),

    • rmult_cormax: multiplier of the maximum dimension, that defines the maximal variation of hydraulic head (0.1),

    • c_pstep: initial value of the solution fractionation (0.1),

    • c_ps_inc: initial value of the increment (0.1),

    • c_ps_tol: tolerance on the parameter of parameter stepping: we consider that we have converged when c_pstep is greater than 1 - c_ps_tol (allows to shorten a laborious convergence where we tend towards 1 without ever exactly reaching it) (1.e-5 ),

    • ratio_max_res: comparison of two methods of calculating residues. Allows more precise detection of local convergence in cases where the residues oscillate a little (1.e-6),

    • critereres : residual convergence criterion. The calculation is converged when c_pstep is worth 1 and redres <critereres (1.e-5),

    • niterns: number of iteration for the ZNS flow calculation in permanent regime (1000).

    • courant: ‘oui’/’non’ (yes/no). The Courant number is calculated from est calculé à partir d’une saturation front pseudo-speed. If courant = ‘oui’, time step will be ajusted to constraint the front progression to one element per step. Useful for 1D for steep front. (‘oui’).

    • emmagasinement: specific storage (m^{-1}), used to handle important leak with the option ‘sat_nonsat’ = on, assorted to ‘courant’ = ‘oui’ (1.e-3).

    • kdecoup_delt_zns: initial time step ZNS (10).

    • kdecoup_dmin_zns: minimal time step ZNS (1).

    • kdecoup_delt_zs: initial time step ZS (100).

    • kdecoup_dmin_zs: minimal time step ZS (1).

    • force_fin_phase: ‘oui’/’non’ (yes/no), enforces the end stage with a greater time step when the time step become too short (‘oui’).

    • max_iter: maximal number of iteration for phreatic calculation (200),

    • relax_phreat: relaxation coefficient (weight attributed to the last iteration) (0.5).

    • critere_pot: convergence criterion on potential (0.1 m),

    • phrea_min: minimal water table thickness (1.0 m).

  • injections: this table refers to simulations table, and defines injection characteristics:
    • profondeur: injection depth (m)

    • debut: injection begin date, DD/MM/YYYY format

    • duree: injection duration, in ‘day’, ‘month’ or ‘year’ unit

    • nom: injection name

    • volume_eau: water volume injected, en m³

    • coefficient_surface: ratio between the real area of the injection and the area of the nodes (in case of a borehole injection, the real injection surface is limited to the borehole surface, which is inferior to the influence surface of the nodes) ;

    • coefficient_injection: ratio between the real quantity injected and the maximal quantity that it is possible to inject, according to the solubility (in this way, it considers only a part of the whole mass, or a injection duration calculated from the total mass - only useful in case of mass injection. In case of concentration or flux injection, it will be only a multiplier of the concentration/flux) ;

    • permeabilite: permeability value in saturation, automatically deduce from the permeability field of the saturated zone, or from a u_permeabiliteZNS.sat file if it exists, or equal to the permeabilite_zns_uniforme value of the simulations table, if not null.

    • infiltration: infiltration value above the unsaturated column, deduce automatically from the hydrogeological model.

    • epaisseur: ZNS column thickness, deduce automatically from the hydrogeological model.

    • altitude: top altitude of the ZNS column, deduce automatically from the hydrogeological model.

  • dates_resultats: this table refers to simulations table and defines output dates of simulation :
    • duree: duration, in ‘day’, ‘month’ or ‘year’ unit,

    • pas_de_temps: time stap, to sample the duration, in ‘day’, ‘month’ or ‘year’ unit.

2.7.2. Modèles

Hydrogeological models are saved in independant spatialite database, placed in the models forder that is defined in the installation preferences. Each database contains the tables defining the 2D mesh, the hydrogeological model characteristics and the paramaters used for inversion process (if it has been done).

2.7.2.1. Mesh

The following tables are used to define and build the mesh. Only contours and points_fixes tables are manually edited by the user. The other tables are automatically created and are secondary.

  • bords: secondary table used for the mesh building process,

  • contours: this table contains the definition of the contour elements used for the domain, with the following field :
    • groupe: is the contour class (site, river, etc), this information is not used currently,

    • nom: is the name of the contour element,

    • longueur_element: is the distance (in meters) between two nodes placed along the element (enforce the mesh size),

    • potentiel_impose: is equal to 1 if the potential is enforced for the contour element, otherwise equal to NULL or 0.

  • domaines: secondary table used to describe the domains to mesh, according to the contours,

  • extremites: secondary table containing the extremity of the contour elements,

  • points_fixes: table containing the points to insert into the mesh :
    • nom: fix point name,

    • groupe: group name of the fix point,

    • longueur_element: distance, in meter, between two nodes neightbour to the fix point.

_images/table_contours.png

Figure 2.7.1 : Contours table example

_images/table_points_fixes.png

Figure 2.7.2 : Fix point table example

2.7.2.2. Inversion

The following tables are used to definie the inversion process parameters, the METIS software options, and the pilot points to use for the inversion (cf. Inversion) :

  • hynverse_parametres: inversion parameters (cf. Inversion),

  • metis_hynverse_options: METIS software options:
    • niter_gc_zs: maximal number of iteration ZS for the conjuged gradient (100),

    • max_iter: maximal number of iteration for the phreatic calculation (200),

    • relax_phreat: relaxation coefficient (weight affected to the last iteration) (0.5).

    • critere_pot: convergence criterion for the potential (0.1 m),

    • phrea_min: minimal water table thickness (1.0 m) (1.0 m).

  • points_pilote: pilot points to use for the inversion process :
    • nom : name of the control point

    • groupe : group of control points used for correlation visualization (exp. organism origin of the data)

    • zone : zone, used to associate additional pilot points

    • altitude_piezo_mesuree : altitude of the water table from measure (m)

    • altitude_piezo_calculee : altitude of the water table from simulation (m)

    • difference calcul mesure : difference between both water table altitude (m)

  • zones: permeability for a zone, contains also the min/max value tolerated during inversion process.

2.7.2.3. Model

The following tables contains mesh and hydrogeological model characteristics :

  • mailles: this table contains each entity of the mesh. Id is composed with a ordered list of three (triangle) or four (quadrangle) number (node id). The table also contains the following fields:
    • permeabilite_x: permeability on x axis (m/s),

    • permeabilite_y: permeability on y axis (m/s),

    • v_x: Darcy velocity on x axis (m/s),

    • v_y: Darcy velocity on y axis (m/s),

    • v_norme: Darcy velocity norm (m/s),

  • noeuds: this table contains, for each node, several values that are defining the hydrogeological model :
    • altitude: topographic altitude (m),

    • altitude_mur: water table altitude (m),

    • potentiel_reference: reference piezometric value (m, optional),

    • potentiel: piezométric value (m), according to the hydrogeological model,

    • pot_grad_x: potential gradient on x axis (-),

    • pot_grad_y: potential gradient on y axis (-),

    • epaisseur_zs: water table thickness (saturated zone) (m),

    • epaisseur_zns: unsaturated zone thickness (m),

    • epaisseur_aquifere: aquifer thickness (m), to initiate the water table calculation (this is not a real thickness),

    • permeabilite_x: permeability on x axis (m/s),

    • permeabilite_y: permeability on y axis (m/s),

    • permeabilite_zns: permeability of the unsaturated zone (m/s),

    • infiltration: infiltration value (m/s),

    • surface: surface bound to the node (m^{2}),

    • transmissivite: node transmissivity (m^{2}/s),

    • groupe: node group (unused).

  • noeuds_contour: contains the id of the nodes placed on the contour.

  • parametres: contains the hydrogeolocial model parameters (cf. Reference simulation tables).

  • potentiel_impose: contains the id of the nodes with a enforced potential, with the enforced value.

2.7.3. Calculation project

For each calculation projet, a calculation base is created as follow :

  • from a copy of the model database specified as input,

  • from creation of the sites.sqlite tables and insertion of the entries concerned by the site,

  • from creation of results tables.

The calculation database created contains the following tables:

  • from the model database :
    • bords

    • contours

    • domaines

    • extremites

    • hynverse_parametres

    • mailles

    • metis_hynverse_options

    • noeuds

    • noeuds_contour

    • parametres

    • points_fixes

    • points_pilote

    • potentiel_impose

    • zones

  • from the sites database for the considered site :
    • dates_resultats

    • elements_chimiques

    • forages

    • fracturations

    • injections

    • lithologies

    • mesures

    • metis_options

    • points_interet

    • simulations

    • sites

    • stratigraphies

  • with results tables creation :
    • bilan_masse

    • dates_simulation

    • isovaleur

    • mailles_zns

    • noeuds_zns

    • noeuds_injections

    • parametres_simulation


2.8. References

Goblet1989

Goblet, P., Programme METIS. Simulation d’écoulement et de transport miscible en milieu poreux et fracturé. Notice de conception. ENSMP/CIG, 1989

Renard2008(1,2,3,4)

Renard, F.; Jeannée, N. Estimating transmissivity fields and their influence on flow and transport: the case of Champagne mounts. Water Resources Research, 2008 , 44, W11414, doi:10.1029/2008WR007033

Renard2016(1,2,3,4)

Renard, F.; Tognelli, A. A new quasi-3D unsaturated-saturated hydrogeologic model of the Plateau de Saclay (France). Journal of Hydrology, 2016, 535, 495-508, doi:10.1016/j.jhydrol.2016.02.014

Gerke1993(1,2)

Gerke, H. H.; Van Genuchten, M. T. A Dual-Porosity Model For Simulating The Preferential Movement Of Water And Solutes In Structured Porous-Media. Water Resources Research, 1993, 29, 305-319 doi:doi.org/10.1029/92WR02339

Geuzaine2009(1,2,3)

Geuzaine, C.; Remacle, J. F. Gmsh: A 3-D finite element mesh generator with built-in pre- and post-processing facilities. International Journal For Numerical Methods In Engineering, 2009, 79, 1309-1331, doi:doi.org/10.1002/nme.2579

Genuchten1980

Van Genuchten, M.T. A closed-form equation for predicting the hydraulic conductivity of unsaturated soils. Soil Sci. Soc. Am. J., 1980, 44, 892-898 doi:10.2136/sssaj1980.03615995004400050002x

Ippisch2006

Ippisch, O. and Vogel, H. J. and Bastian, P. Validity limits for the van Genuchten-Mualem model and implications for parameter estimation and numerical simulation. Advances In Water Resources, 2006, 29, 1780-1789, doi:doi.org/10.1016/j.advwatres.2005.12.011


2.9. Annexes

2.9.1. Hypercube Latin

L’Hypercube Latin is a sampling method, that fits with incertainty calculation. It reduce the number of samples compared to the Monte Carlo method.

The operating principle is based on a variation interval of each parameter in n number of equally sub-interval. Then a random value is chosen in each sub-interval. Finally n samples are build randomly by using only one time each sub-interval value. Figure 2.9.1 : provides this shematic illustration of a two parameters samples set, with five samples.

_images/lhs1.png

Figure 2.9.1 : two-dimensionnal illustration of a set of samples using Hypercube Latin with two parameters and five samples (n=5 ). X1 has a normal distribution between A1 and B1, X2 has a uniform distribution between A2 and B2.

To define n equaly likely sub-intervals of each probability density,the image of the distribution function has to be divide in n regular interval, then the distribution function has to be inverted.

2.9.1.1. uniform or log-uniform law

In case of a uniform or log-uniform law in the [A,B] interval, inversion is :

\begin{cases} X=A+r\left(B-A\right)\\ \ln X=\ln A+r\left(\ln B-\ln A\right) \end{cases}

where r is the randomly generated number in each of the n regular intervals, sampling [0,1].

A example is provided Figure 2.9.2 :, in case of 5 samples and a uniform law between A2 and B2.

_images/lhs2.png

Figure 2.9.2 : Correspondancelink between the intervals on one hand, and on the other the probability density dans the distribution function. Example with n=5 , uniforme distribution between A2 and B2.

2.9.1.2. normal or log-normal law

In case of a normal or log-normal law, inversion is more complex and uses the error function defined as :

erf\left(x\right)=\frac{2}{\sqrt{\pi}}\int_{0}^{x}e^{-t^{2}}dt

which is generally shown as spreedsheet, and is available in informatic librairy.

The distribution function of a normal law, with a mean mu and a standard deviation sigma is :

F_{\mu,\sigma}\left(x\right)=\frac{1}{\sigma\sqrt{2\pi}}\int_{-\infty}^{x}e^{-\frac{\left(t-\mu\right)^{2}}{2\sigma^{2}}}=\frac{1}{2}\left[1+erf\left(\frac{x-\mu}{\sigma\sqrt{2}}\right)\right]

where :

x=\mu+\sigma\sqrt{2}\: erf^{-1}\left(2z-1\right)

z is a random value in each sub-interval that composed the repartition function image.

Usually, \mu and \sigma are not mentionned, and we enforce the variation interval of the parameter between A and B, defined as the 0,001 and 0,999 quantile, so that the formula is:

B=\mu+\sigma\sqrt{2}\: erf^{-1}\left(0,998\right)=\mu+3,09\:\sigma

then, as \mu=\frac{A+B}{2} :

\sigma=\frac{B-A}{2\sqrt{2}\: erf^{-1}\left(0,998\right)}=\frac{B-A}{6,18}

A example is provided Figure 2.9.3 :, in case of 5 samples and a normal distribution between A1 and B1.

_images/lhs3.png

Figure 2.9.3 : Link between the sampled intervals on one hand, and on the other hand the probabilité density and the distribution function. Example with n=5 , distribution normale entre A1 et B1.


2.9.2. Stratigraphic logs

This annex introduces the codifications used for the graphic illustration of the stratigraphics logs :

_images/BRGM_temps_geologiques.png

Figure 2.9.4 : Geological time scale codification from the BRGM.

_images/RGB.png

Figure 2.9.5 : RGB colorimetric codification from the CGMW.

_images/USGS1.png

Figure 2.9.6 : Lithologic figure codification from USGS (1).

_images/USGS2.png

Figure 2.9.7 : Lithologic figure codification from USGS, selon USGS (2).

_images/USGS3.png

Figure 2.9.8 : Lithologic figure codification from USGS, selon USGS (3).


2.9.3. Fichiers utilisateur

Cette annexe présente les formats des fichiers externes utilisés par le plugin THYRSIS pour modifier certaines données du modèle hydrogéologique. Leur format est indépendant du code d’hydrogéologie utilisé. Les unités sont des unités SI, à savoir : dates en secondes, longueurs en m, valeurs d’infiltration et de perméabilité en m/s.

2.9.3.1. u_epaisseurZNS.sat

The u_epaisseurZNS.sat file defines the unsaturated zone thickness at each node of the 2D mesh. This file is useful to enforce a unsaturated zone thickness value that differs from the model value. The file contains as many lines as nodes in the mesh, with a thickness (in meters) to consider for each line.

Example:

27.6423
27.6636
27.6938
27.7452
27.7969
27.8473
27.9090
...

2.9.3.2. u_permeabiliteZNS.sat

The u_permeabiliteZNS.sat file defines the unsaturated zone permeability at each node of the 2D mesh. This file is useful to enforce a specific permeability in the unsaturated zone. By default it is the permeability value in the saturated zone that is used for the unsaturated column. The file contains as many lines as nodes, with a permeability value (m/s) to consider for each line.

Example:

0.10062337E-04
0.10151087E-04
0.10006153E-04
0.10216447E-04
0.10134652E-04
0.98510526E-05
0.10076285E-04
...

2.9.3.3. u_infiltration.sat

This file defines the infiltration value in permanent regime at each node of the 2D mesh. This file is useful to enforce a infiltration value in permanent regime that differs from the model value. The file contains as many lines as nodes, with a infiltration value (m/s) to consider for each line.

Example:

2.98e-09
2.98e-09
2.98e-09
2.98e-09
2.98e-09
2.98e-09
...

2.9.4. METIS files

This annex introduces external files format used by METIS software, which are used to realize transient infiltration or material flux. In each file, units are SI units. In consequence, dates are in seconds, infiltration values in m/s, materiel flux in kg/s. Input flux has to be negative, according to the METIS convention.

2.9.4.1. u_infiltration_transitoire.sat

The u_infiltration_transitoire.sat file is used to indicate a variable infiltration in time but homogeneous in the whole domain in case of a simulation without unsaturated zone (edse condition in the METIS software).

This file is required for flow simulation in transient regime when the unsaturated zone is ignored.

Example:

date  0.0000000E+00
-0.6498923E-08
date  0.2629800E+07
-0.1411746E-07
date  0.5259600E+07
-0.9015090E-08
etc.

2.9.4.2. u_infiltration_transitoire.insat

The u_infiltration_transitoire.insat file is used to indicate a variable infiltration in time but homogeneous in the whole domain in case of a simulation with unsaturated zone (esui condition in the METIS software). This file is similar to the u_infiltration_transitoire.sat file , but with the 0 value.

This file is required for flow simulation in transient regime when the unsaturated zone is considered.

Example:

date  0.0000000E+00
-0.6498923E-08 0
date  0.2629800E+07
-0.1411746E-07 0
date  0.5259600E+07
-0.9015090E-08 0
etc.

2.9.4.3. u_debit_eau_entrant.sat

This file defines the material flux in case of a calculation without unsaturated zone. It defines injection nodes and flux injected (direcly in the water table) for several dates. Usually, this file is automatically generated by Thyrsis.

Example:

date  0.000000e+00
12943  -0.000000e+00
11032  -0.000000e+00
11029  -0.000000e+00
11030  -0.000000e+00
11031  -0.000000e+00
...
date  3.155760e+07
12943  -2.261438e-26
11032  -6.379388e-27
11029  -8.420673e-27
11030  -9.180771e-27
11031  -1.391532e-26
...
date  6.311520e+07
12943  -7.932372e-19
11032  -2.237677e-19
11029  -2.953693e-19
11030  -3.220309e-19
11031  -4.881033e-19
...

2.9.4.4. u_debit_entrant.insat*

These files, whose names end with the unsaturated columns number, define material flux to consider in the unsaturated zone. These files define injection nodes and injected flux in each unsaturated columns, for several dates. Usually, these files are automatically generated by Thyrsis.

Example:

date   0.0000000E+00
1   6.0025774E-10
date   5.3654400E+08
1   6.0025774E-10

2.9.4.5. u_debit_eau_entrant.sat

The u_debit_eau_entrant.sat file enforce a variable and heterogeneous infiltration as input of the saturated model (edve condition in the METIS software). Unlike the previous files, it need to define for each date as many infiltration values (m^{3}/s) as nodes present in the mesh of the saturated zone (with the syntax “ node_id infiltration_value ”, because the nodes are not necessarily sorted - but the order has to be the same from one date to an other).

This file is dominant on the one generated by Thyrsis, so it will enforce transient and heterogeneous infiltration on the whole domain, by doing a localized transport to a few injection zones. It is advised to do a flow calculation in transient regime, then save the edve.sat created by Thyrsis, and re-used it in a second simulation with localized transport. If not, the permanent regime is used for all mesh nodes that are not concerned by the material injection.

Example:

date    0.0000000E+00
     50  0.1772273E-04
     51  0.2141895E-04
   1071  0.1701869E-04
   1121  0.1624731E-04
...
   2606  0.1190476E-04
   2607  0.1190476E-04
   2608  0.1190476E-04
   2609  0.1190476E-04
date    0.3150000E+06
     50  0.2021130E-04
     51  0.2442652E-04
   1071  0.1940840E-04
   1121  0.1852870E-04
...