Méthode des volumes finis

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

En analyse numérique, la méthode des volumes finis est utilisée pour résoudre numériquement des équations aux dérivées partielles, comme la méthode des différences finies et celle des éléments finis.

Contrairement à la méthode des différences finies qui met en jeu des approximations des dérivées, les méthodes des volumes finis et des éléments finis exploitent des approximations d'intégrales. Toutefois, la méthode des volumes finis se base directement sur la forme dite forte de l'équation à résoudre, alors que la méthode des éléments finis se fonde sur une formulation variationnelle de l'équation (on parle aussi de formulation faible)


L'équation aux dérivées partielles est résolue de manière approchée à l’aide d’un maillage constitué de volumes finis qui sont des petits volumes disjoints (en 3D, des surfaces en 2D, des segments en 1D) dont la réunion constitue le domaine d'étude. Les volumes finis peuvent être construits autour de points d'un maillage initial, mais ce n’est pas une nécessité.

Les méthodes de volumes finis ont été initialement mises au point pour des lois de conservation hyperboliques, mais des développements récents permettent à présent de les utiliser pour des équations elliptiques et paraboliques.

Ces équations aux dérivées partielles contiennent des termes de divergence. En utilisant le théorème de flux-divergence, les intégrales de volume d'un terme de divergence sont transformées en intégrales de surface et ces termes de flux sont ensuite évalués aux interfaces entre les volumes finis. On utilise une fonction de flux numérique pour élaborer une approximation des flux aux interfaces. Puisque le flux entrant dans un volume donné est égal au flux sortant du volume adjacent, ces méthodes sont conservatives, donc parfaitement adaptées à la résolution de lois de conservation.

Un autre avantage de la méthode des volumes finis est qu'elle est facilement utilisable avec des maillages non structurés car, en matière de discrétisation des lois de conservation, sa formulation ne tient aucun compte de la complexité du maillage. En revanche, les caractéristiques géométriques du maillage peuvent jouer un rôle prépondérant lorsque des flux diffusifs entrent en jeu.

Les lois de conservation[modifier | modifier le code]

On s'intéresse ici aux lois de conservation, dont la forme générale est la suivante :

\frac{\partial \rho}{\partial t} + \mathrm{div} J = g, \qquad \forall (x,t) \in \Omega\times \mathbb{R}_{+}

à laquelle on ajoute des conditions aux limites et des conditions initiales, et où :

  • \rho (la densité) est l'inconnue
  • J le flux associé
  • g le terme source
  • \Omega \subset \mathbb{R}^{d}

De plus, J est de la forme suivante : J = F(x,t,\rho,\nabla \rho). On citera par exemple :

  1. Le flux de convection / transport : J = v(x,t) f(\rho) \;, où :
    • v(x,t) \in \mathbb{R}^d le champ de vecteur donné
    • f : \mathbb{R} \longrightarrow \mathbb{R}
  2. Le flux de diffusion :  J = - \kappa (x,t) \nabla \rho \; , où :
    •  \kappa (x,t) \in \mathbb{R} dans le cas classique
    •  \kappa (x,t) \in \mathcal{M}_{d} (\mathbb{R}) dans certains cas
  3. Le flux de convection et diffusion :  J = v(x,t) f(\rho) - \kappa (x,t) \nabla \rho \; .

Maillage du domaine[modifier | modifier le code]

Soit \Omega l'ensemble d'espace associé à l'équation aux dérivées partielles qui nous intéresse. On appelle volumes de contrôle les éléments de la suite  \left( K_{i} \right)_{1 \leqslant i \leqslant I} , cette suite définissant un maillage du domaine \Omega, soit vérifiant

  •  K_{i} un ouvert de  \Omega
  •  K_{i} \cap K_{j} = \varnothing, \; \forall i \neq j
  •  \cup_{i=1}^{I} \overline{K_{i}} = \overline{\Omega}

Dimension 1[modifier | modifier le code]

Maillage d'un segment [A,B] pour la méthode des volumes finis.

Soit \Omega = ]0,1[ .

Les volumes de contrôle  \left( K_{i} \right)_{1 \leqslant i \leqslant I} forment un maillage  \mathcal{T} de  \Omega . En dimension 1, les volumes de contrôle sont des intervalles ouverts, on note  K_{i} = \left]x_{i-\frac{1}{2}},x_{i+\frac{1}{2}} \right[ .

On note  \mathcal{E} l'ensemble des interfaces  \left( x_{i+\frac{1}{2}} \right)_{0 \leqslant i \leqslant I } ,les extrémités des volumes de contrôle.

Pour finir, on choisit un point  x_{i} dans chaque volume de contrôle  K_{i} et on note  \mathcal{P} l'ensemble de ces points  \left( x_{i} \right)_{1 \leqslant i \leqslant I} (on peut y ajouter les points  x_{0} = 0 et  x_{I+1} = 1 ).

Le maillage est donc la donnée  (\mathcal{T}, \mathcal{E}, \mathcal{P}) .

Le pas (taille) du maillage est toujours important dans un schéma numérique, il sera noté  h et on pose  h = \max_{1 \leqslant i \leqslant I} (x_{i+\frac{1}{2}} - x_{i-\frac{1}{2}})

Dimension supérieure[modifier | modifier le code]

Exemple d'un maillage triangulaire 2D.

On considère  \Omega un ouvert borné polyédrique de  \mathbb{R}^{d} (polygonal si  d = 2 ).

 \mathcal{T} est toujours l'ensemble des volumes de contrôle  \left( K_{i} \right)_{1 \leqslant i \leqslant I} .

 \mathcal{E} est l'ensemble des arêtes ou faces (selon la dimension) du maillage. Soit  \sigma \in \mathcal{E} , on a alors :

  • soit  \overline{\sigma} = \overline{K_{i}} \cap \overline{K_{j}}, \; i \neq j ,  \sigma est alors une arête intérieure (\sigma \in \mathcal{E}_{int} )
  • soit  \overline{\sigma} \subset \partial \Omega ,  \sigma est alors une arête du bord (\sigma \in \mathcal{E}_{ext} )

On se donne de même que précédemment, une suite de points  \mathcal{P} = (x_{i})_{1 \leqslant i \leqslant I} , \; \text{où} \; x_{i} \in K_{i}

Le maillage de  \Omega est la donnée (\mathcal{T}, \mathcal{E}, \mathcal{P}) .

On pose ici, pour le pas,  h = \max_{1 \leqslant i \leqslant I} \mathrm{diam} (K_{i}) .

Solution approchée[modifier | modifier le code]

Pour la méthode des volumes finis, et contrairement à la méthode des différences finies, les inconnues discrètes ne sont pas les extrémités des mailles, mais les inconnues sont situées à l'intérieur des mailles. L'ensemble de ces inconnues discrètes est l'ensemble  \mathcal{P} défini précédemment.

La solution approchée  u_{\mathcal{T}} , avec la méthode des volumes finis, est une solution constante par maille, que l'on reconstruit de la manière suivante :

u_{\mathcal{T}} (x) = \sum_{K} u_{K} 1\!\!1_{K}(x).

L'espace des solutions approchées pour le maillage  (\mathcal{T}, \mathcal{E}, \mathcal{P}) est :

X(\mathcal{T}) = \left\{ u_{\mathcal{T}} (x) = \sum_{K} u_{K} 1\!\!1_{K}(x) , \forall K \in \mathcal{T}, u_{K} \in \mathbb{R}  \right\}.
Remarque

En règle générale, l'espace des solutions vérifie

  •  X(\mathcal{T}) \subset \mathrm{L}^{\infty} (\Omega), ( \subset \mathrm{L}^{p},\; \forall p \geqslant 1 \; \text{si} \; \Omega \; \text{est borné})
  •  X(\mathcal{T}) \not\subset \mathrm{H}^{1}

Mise en place du schéma[modifier | modifier le code]

Normale sortante à K en sigma

Le méthode des volumes finis est utilisée pour discrétiser la partie spatiale des lois de conservation, le partie temporelle est quant-à-elle discrétisée par la méthode des différences finies. On considère donc ici seulement la partie spatiale, ce qui nous donne le système suivant :

\left\{
\begin{array}{l}
\mathrm{div}(J)=g \quad \text{sur} \; \Omega,\\
J=F(x,t,u,\nabla u)\\
\oplus \; \text{Conditions Limites}
\end{array}
\right.

On considère un maillage  (\mathcal{T}, \mathcal{E}, \mathcal{P}) \;  \text{de} \; \Omega . La méthode des volumes finis est basée sur l' intégration de l'EDP sur tous les volumes de contrôle du maillage.

On a, par le théorème de Stokes :

\forall K \in \mathcal{T},\int_{K} g(x)\, \mathrm{d} x= \int_{K} \mathrm{div}(J) = \int_{\partial K} J \cdot n_{K} \, \mathrm{d} \gamma

On sait que : \partial K = \cup_{\sigma \in \mathcal{E}_{K}} \sigma , \; \text{où} \; \mathcal{E}_{K} est l'ensemble des arêtes du volume de contrôle  K . d'où \sum_{\sigma \in \mathcal{E}_{K}} \int_{\sigma} J \cdot n_{K,\sigma} \, \mathrm{d} \gamma = \int_{K} g(x) \, \mathrm{d} x,\; n_{K,\sigma} \; est la normale à \; \sigma \; sortante de \; K.

On obtient le schéma volumes finis en faisant une approximation de la dernière égalité, ce qui donne :

\sum_{\sigma \in \mathcal{E}_{K}} \mathcal{F}_{K,\sigma} = mes(K) g_{K}, avec :
  •  \mathcal{F}_{K,\sigma} une approximation de \int_{\sigma} J \cdot n_{K,\sigma} \, \mathrm{d} \gamma
  •  g_{K} une approximation de \frac{1}{\mathrm{V}(K)} \int_{K} g(x) \, \mathrm{d}x

Propriété des flux numériques[modifier | modifier le code]

Les deux propriétés essentielles du flux numérique \mathcal{F}_{K,\sigma} pour que celui-ci soit une « bonne » approximation de \int_{\sigma} J \cdot n_{K,\sigma} \, \mathrm{d} \gamma, sont la conservativité et la consistance.

Conservativité des flux[modifier | modifier le code]

On impose que pour toute interface interne, le flux entrant est égal à l'opposé du flux sortant :

\forall \sigma \in \mathcal{E}_{int}, \sigma = \overline{K} \cap \overline{L}, \qquad \mathcal{F}_{K,\sigma} +\mathcal{F}_{L,\sigma}  =0

Consistance des flux[modifier | modifier le code]

Les flux numériques \mathcal{F}_{K,\sigma} s'expriment en fonction des (u_{L})_{L \in \mathcal{T}}. On remplace alors tous les u_{K}, \, u_{L} \; \text{par} \; u(x_{K}), \, u(x_{L}) où u est la solution exacte du problème, on obtient alors \tilde{\mathcal{F}}_{K,\sigma}^{ex}.

Pour qu'on ait la consistance des flux, il suffit que :

\lim_{h \to 0} \left|\frac{1}{m(\sigma)} \tilde{\mathcal{F}}_{K,\sigma}^{ex} - \frac{1}{m(\sigma)} \int_{\sigma} J \cdot n_{K,\sigma} \, \mathrm{d} \gamma \right| = 0

Exemple en dimension 1[modifier | modifier le code]

On cherche une solution classique du problème de Dirichlet suivant :

(\mathcal{P}) \left\{
\begin{array}{l}
-u''(x) = f(x) ,\quad \text{sur} \; (0,1)\\
u(0)=0=u(1)
\end{array}
\right.

f \in \mathcal{C} ([0,1], \mathbb{R} )

On utilise le maillage pour la dimension 1 défini précédemment.

On aura besoin également des paramètres suivants :h_{i} = m(K_{i}) = x_{i+\frac{1}{2}} - x_{i-\frac{1}{2}} \; \text{et} \; h_{i+\frac{1}{2}} = x_{i+1} - x_{i}, \quad \forall \, 0 \leqslant i \leqslant I

En intégrant l'équation -u''=f \; \text{sur} \; K_{i}, on obtient l'égalité suivante :

- u'(x_{i+\frac{1}{2}}) + u'(x_{i-\frac{1}{2}}) = \int_{x_{i-\frac{1}{2}}}^{x_{i+\frac{1}{2}}} f

Le schéma volumes finis s'écrit alors :


 (\mathcal{S}) \left\{
 \begin{array}{l}
 \mathcal{F}_{i+\frac{1}{2}} - \mathcal{F}_{i-\frac{1}{2}} = h_{i} f_{i}, \quad \forall \, 1 \leqslant i \leqslant I \\
 \mathcal{F}_{i+\frac{1}{2}}= - \frac{u_{i+1}-u_{i}}{h_{i+\frac{1}{2}}}, \quad \forall \, 0 \leqslant i \leqslant I \\
 u_{0}=0=u_{I+1}
 \end{array}
 \right.
avec  f_{i}= h_{i+\frac{1}{2}} \int_{x_{i-\frac{1}{2}}}^{x_{i+\frac{1}{2}}} f

Proposition — On a alors un schéma numérique (\mathcal{S}) pour lequel les flux sont conservatifs et consistants

Ce schéma numérique (\mathcal{S}) est un système d'équations linéaires:

  • I inconnues : (u_{i})_{1 \leqslant i \leqslant I}
  • I équations

On peut facilement mettre ce système sous forme matricielle : AU=B, \; U est le vecteur des inconnues.

Proposition — La matrice A du schéma (\mathcal{S}) est tridiagonale et symétrique définie positive. Elle est alors inversible et donc le schéma admet une unique solution

Attention 
La consistance, la conservativité et l'unicité de la solution du schéma n'impliquent pas la convergence du schéma.
Remarque 
il existe des théorèmes de convergence du schéma si f \in  \mathcal{C}([0,1], \mathbb{R}) où si  f \in \mathrm{L}^{2}(0,1)

Voir aussi[modifier | modifier le code]

Références[modifier | modifier le code]

  • R. Eymard, T. Gallouët, R. Herbin (2000) "The finite volume method" Handbook of Numerical Analysis, Vol. VII, 2000, p. 713–1020. Editors: P.G. Ciarlet and J.L. Lions.
  • D. Serre (1996) "Systèmes de lois de conservation,Tome1". I,Fondations . Editors: Diderot.