Stencil (analyse numérique)

En mathématiques, un stencil est une représentation géométrique d'un réseau nodal illustrant les points d'intérêt utilisés dans un schéma de discrétisation pour la résolution numérique des équations différentielles, notamment des équations aux dérivées partielles combinant variables temporelles et spatiales.

Le stencil de la méthode de Crank-Nicolson en une dimension.

Les stencils peuvent être compacts ou non, selon les niveaux utilisés autour du point d'intérêt.

Étymologie

modifier

Les représentations graphiques d'arrangements nodaux et les coefficients associés sont vite apparus dans l’étude des équations aux dérivées partielles. Certains auteurs utilisent des termes différents comme « schémas de relaxation », « instructions opérantes », « logenzes » ou « schémas de points »[1],[2]. Le mot « stencil » a été retenu pour de tels schémas pour refléter l'utilisation d'un stencil sur une grille de calcul afin de repérer uniquement les points utiles[2].

Calcul de coefficients

modifier

Les coefficients de différences finies pour un stencil donné dépendent du choix des points. Ils peuvent s'obtenir par le calcul des dérivées des polynômes de Lagrange interpolant ces points[3], par résolution d'un système linéaire obtenu à partir d'un développement de Taylor autour de chaque point[4] ou en imposant que le stencil est exact pour chaque monôme jusqu'au degré du schéma[3]. Dans le cas des points équirépartis, on peut également utiliser efficacement l'approximant de Padé de xs (log x)m, avec m l'ordre de dérivation recherché et s la « distance » entre les nœuds de calcul les plus à gauche sur les deux étages du stencil[5].

Avec les polynômes interpolateurs de Lagrange

modifier

Un moyen d'obtenir les poids des différences finies est de passer par la dérivation du polynôme interpolateur de Lagrange aux nœuds de calcul du stencil choisi. Pour un stencil de longueur n, on note les polynômes d'interpolation :

 

On obtient ainsi un polynôme pn(x) de degré n interpolant ƒ(x) en ces n points

 

et de son polynôme dérivé

 

Ainsi, on a l'approximation de la dérivée première au point xc avec :

 

Le calcul des coefficients   permet de retrouver les coefficients obtenus auparavant.

On remarque que la formule est totalement définie sans un pas de discrétisation, ce qui la rend directement applicable aux grilles non uniformes.

Avec les approximants de Padé

modifier

Les coefficients de pondération des schémas peuvent être également déterminés par un approximant de Padé, dans le cas où le schéma est semi-implicite.

On considère un stencil de la forme :

 

où les points xi sont sur une grille régulière de pas h, soit donc xi = x + ih. On remplace f (x) = ex :

 

On pose ξ = eh. Le schéma se réécrit alors, par abus de notation :

 

Les coefficients optimaux s'obtiennent donc en calculant l'approximant de Padé d'ordre [n,m] autour de ξ = 1.

Compacité du stencil

modifier
 
Un stencil compact 2D utilisant le nœud central (en rouge) et les 8 nœuds adjacents.

Un stencil compact n'utilise que neuf points pour la discrétisation en 2D, en l'occurrence le nœud central et les nœuds adjacents. Ainsi, sur une grille structurée utilisant un stencil compact en dimension 1, 2 ou 3, le nombre maximum de nœuds utilisés est de 3, 9 ou 27 respectivement.

Les stencils compacts sont couramment utilisés et sont au cœur de plusieurs solveurs basant leurs modèles sur des équations aux dérivées partielles[6],[7]

 
Un stencil non compact 2D.

À l'inverse, un stencil non compact peut faire intervenir tout nœud du voisinage du nœud d'intérêt. Le principal désavantage est que l’utilisation de points éloignés va augmenter le temps de calcul nécessaire à la résolution.

Stencils en une dimension

modifier
À deux points

Le stencil à deux points pour la dérivée première d'une fonction est donné par :

 .

qui est obtenu classiquement par un développement limité autour de x0 :

 
À trois points

Le stencil à trois points pour la dérivée seconde d'une fonction est donné par :

 

Ce stencil compact est le plus usuel pour cette dérivée.

À cinq points

Le stencil à 5 points en une dimension s'étend sur la grille

 

Le stencil pour la dérivée première est donné par :

 

Il est obtenu à partir des développements limités autour de x0 de ƒ(x0 ± h) et ƒ(x ± 2h) jusqu'à l'ordre 3 (5 si on cherche également une estimation de l'erreur) et en recombinant les quatre équations obtenues. On remarque ainsi qu'on a :

 

dont on tire :

 

Formellement, on devrait avoir des O(h 5) mais on peut l'écrire ainsi sans perte de généralités dans ce cadre.

Le jeu de coefficients (8, -8,-1,1) obtenu ici est un cas spécifique de l'algorithme de Savitzky-Golay.

Estimation de l'erreur

En utilisant les termes d'ordre supérieur (négligés pour l'obtention du stencil), on a une estimation de l'erreur de ce schéma [8] :

 

Dérivées d'ordres supérieurs

modifier

Sur un schéma à cinq points, on peut obtenir des formules centrées (avec une symétrie dans les coefficients autour du nœud central) pour les dérivées d'ordres supérieurs[8] :

 

Deux dimensions

modifier

Sur une grille régulière 2D, le stencil à 5 points autour du nœud (xy) est donc donné par :

 

Il forme donc un quinconce.

Il apparait dans le calcul du laplacien discret d'une fonction à deux variables[9]:

 

Stencils des schémas numériques usuelles

modifier

Les stencils sont représentés graphiquement sur une grille : le nœud (j,n) correspond au point u(xj,tn) utilisé dans le schéma.

Références

modifier
  1. Howard W. Emmons, « The numerical solution of partial differential equations », Quarterly of Applied Mathematics, vol. 2, no 3,‎ , p. 173–195 (DOI 10.1090/qam/10680, lire en ligne, consulté le )
  2. a et b (en) William Edmund Milne, Numerical solution of differential equations., Wiley, , 1re éd., 128–131 p. (lire en ligne)
  3. a et b Bengt Fornberg et Natasha Flyer, A Primer on Radial Basis Functions with Applications to the Geosciences, Society for Industrial and Applied Mathematics, , 221 p. (ISBN 978-1-61197-402-7, DOI 10.1137/1.9781611974041.ch1, lire en ligne), « Brief Summary of Finite Difference Methods »
  4. (en) Cameron Taylor, « Finite Difference Coefficients Calculator », sur web.media.mit.edu (consulté le )
  5. Bengt Fornberg, « Classroom Note: Calculation of Weights in Finite Difference Formulas », SIAM Review, vol. 40, no 3,‎ , p. 685–691 (DOI 10.1137/S0036144596322507)
  6. W. F. Spotz. High-Order Compact Finite Difference Schemes for Computational Mechanics. PhD thesis, University of Texas at Austin, Austin, TX, 1995.
  7. Communications in Numerical Methods in Engineering, Copyright © 2008 John Wiley & Sons, Ltd.
  8. a et b Abramowitz & Stegun, Table 25.2
  9. Abramowitz & Stegun, 25.3.30

Voir aussi

modifier

Bibliographie

modifier

Articles connexes

modifier
  NODES
Note 2