2.4.3 Modélisation directe
Définition
La modélisation directe consiste à calculer le signal résultant d’une excitation à partir d’un modèle physique. On pourrait écrire de façon symbolique
\[f = F(\theta) ,\]où $f$ est le signal, $\theta$ un ensemble de paramètres décrivant l’excitation et $F$ est la fonction qui décrit un modèle physique.
En gravimétrie, le signal est le changement dans l’accélération gravitationnelle ($\Delta g_z$) et l’excitation est attribuée aux contrastes de densités dans le sol ($\Delta\rho$) et à la géométrie du problème. Dans sa forme la plus générale, le problème de modélisation directe en gravimétrie se résume donc à
\[\Delta g_z = F(\Delta\rho, x, y, z) .\]Comme vous l’avez peut-être remarqué lors de notre survol des réponses analytiques générées par des géométries simples, la fonction $F$ peut s’écrire comme un facteur géométrique $G$ multiplié par le contraste de densité et des constantes, tel que
\[\Delta g_z \propto G(x, y, z)\,\Delta\rho.\]Cette relation est vraie spécifiquement pour la gravimétrie (et la magnétométrie). Nous verrons pourquoi dans la page sur le principe de superposition.
L’inverse est-il possible?
Oui. Il est effectivement possible d’estimer l’ensemble des paramètres décrivant l’excitation (la densité et la géométrie) en analysant le signal (la réponse gravimétrique). C’est ce qu’on appelle la modélisation inverse ou encore l’inversion géophysique. Nous ferons une courte introduction de ce sujet passionnant vers la fin de la session.
Exemple : anciennes galeries minières
Problématique
On a vu qu’on peut estimer la réponse gravimétrique produite par un contraste de densité dans le sol à l’aide d’équations analytiques lorsque la géométrie du problème est relativement simple.
Dans cet exemple, on s’intéresse à la caractérisation de deux tunnels cylindriques enfouis. Il pourrait s’agir, par exemple, d’anciennes galeries minières qu’on tente de mieux localiser en prévision de travaux à la surface. Le premier tunnel s’est rempli d’eau avec le temps (densité ~ 1000 kg/m$^3$), alors que le second est rempli d’air (densité ~ 0 kg/m$^3$). La densité du milieu encaissant est de 2600 kg/m$^3$. On se souvient que l’anomalie gravimétrique ($\Delta g_z$) d’un long cylindre est donnée par
\[\Delta g_z = \frac{2\pi G R^2 \Delta\rho} {\Delta z(1 + (\Delta x/\Delta z)^2)},\]où $\Delta z$ et $\Delta x$ sont respectivement les distances verticale et horizontale entre le centre du cylindre et le gravimètre, $G$ est la constante gravimétrique, $R$ le rayon du cylindre et $\Delta\rho$ le contraste de densité entre le tunnel et sont milieu encaissant. On suppose aussi qu’on réalise des levés gravimétriques selon un tracé perpendiculaire à l’axe des tunnels, qui sont considérés comme infiniment longs.
$\Delta x$ et $\Delta z$ sont des distances, il faut se souvenir qu’elles correspondent à la différence entre les positions où les mesures sont réalisées (dans système de coordonnées $x$ et $z$) et la position absolue ($x_0$, $z_0$) du centre du cylindre dans ce système.
\[\Delta g_z = \frac{2\pi G R^2 \Delta\rho} { (z-z_0) \left[1 + \left(\frac{x-x_0}{z - z_0} \right)^2\right]}.\]Nous utiliserons Python pour comparer graphiquement les réponses de ces deux tunnels. Commençons par importer les modules nécessaires :
import numpy as np # outils numériques
import matplotlib.pyplot as plt # graphiques
Définissons aussi des constantes importantes pour le levé, soit la constante gravitationnelle $G$, l’élévation du gravimètre ($\Delta z$) et un vecteur donnant les positions où les mesures seront réalisées (les stations $\Delta x$ le long d’un profil). Notez qu’on définira toutes les constantes et variables en unités SI.
G = 6.674e-11 # m^3 kg^−1 s^−2
x = np.arange(-100, 100, 1) # m
z = 0 # m
On a fixé l’élévation du gravimètre à 0 m, car il se trouve à la surface. On a aussi défini des stations de mesure allant de -100 à 100 m, avec un pas de 1 m.
Définissons maintenant une fonction qui correspond à l’équation du cylindre :
def cylindre(x, z, x0, z0, R, delta_rho):
return 2*np.pi*G*R**2*delta_rho / ( (z - z0)*(1 + ( (x-x0) / (z-z0) )**2) )
La fonction dépend de $x$, $z$, $x_0$, $z_0$, $R$ et $\Delta\rho$.
Tunnel rempli d’eau
Le premier tunnel a les paramètres suivants :
- $R = 5$ m
- $\Delta \rho = -1600$ kg/m$^3$
- $x_0 = -25$ m
- $z_0 = -15$ m
Ce qu’on traduit en Python par :
R_eau = 5 # m
rho_eau = -1600 # kg/m^3
x0_eau = -25 # m
z0_eau = -15 # m
Utilisons ces informations pour calculer la réponse gravimétrique :
gz_eau = cylindre(x, z, x0_eau, z0_eau, R_eau, rho_eau)
Le vecteur gz_eau
contient les réponses gravimétriques mesurées à chacune des stations $x$. Pour tracer cette réponse (Figure 1) on peut utiliser le module pyplot
importé au début.
plt.plot(x, gz_eau, lw=2)
plt.xlabel('$x$ (m)')
plt.ylabel('$\Delta g_z$ (m/s$^2$)')
plt.show()
Figure 1. Réponse gravimétrique de la galerie remplie d’eau.
Notez que la réponse gravimétrique de la galerie remplie d’eau est négative à cause de son contraste de densité négatif par rapport au milieu encaissant. De plus, l’anomalie est symétrique autour de $x = x_0 = -25$ m.
Tunnel rempli d’air
Le tunnel rempli d’air possède le même rayon que celui rempli d’eau. Cependant il se situe 5 m plus bas et est caractérisé par un contraste de densité et une position $x_0$ différente :
- $\Delta \rho = -2600$ kg/m$^3$
- $x_0 = +25$ m
- $z_0 = -20$ m
On définit donc ces nouvelles variables et on les passe à l’équation de la réponse du cylindre :
R_air = 5 # m
rho_air = -2600 # kg/m^3
x0_air = +25 # m
z0_air = -20 # m
gz_air = cylindre(x, z, x0_air, z0_air, R_air, rho_air)
Traçons la réponse du cylindre rempli d’air sur le même graphique que celle du cylindre rempli d’eau pour les comparer (Figure 2).
plt.plot(x, gz_eau, lw=2, label="Eau")
plt.plot(x, gz_air, lw=2, label="Air")
plt.xlabel('$x$ (m)')
plt.ylabel('$\Delta g_z$ (m/s$^2$)')
plt.legend()
plt.show()
Figure 2. Réponses gravimétriques de la galerie remplie d’eau et de celle remplie d’air.
Discussion
Que remarquez-vous par rapport à
- la symétrie,
- l’amplitude,
- la largeur à mi-hauteur,
- les cas limites ($x \to \pm\infty$),
pour les deux anomalies?