Les fonctions d’Argyris (ou éléments d’Argyris) est un outil en méthodes des éléments finis. Elles sont utilisées pour décrire un polynôme dans un triangle d’un maillage en employant seulement des données connues sur le bord du triangle (comme les valeurs au sommet, les valeurs des dérivées premières et secondes au sommet, ainsi que les valeurs « liées aux arêtes »). l'avantage est que l'on peut se ramener à un espace de dimension finie que l'on peut utilisé pour le calcul numérique.
Utilisées en modélisation numérique, ces fonctions furent introduites dans les années 1950; mais d'autres styles de fonctions sont également employées en pratique en fonction des problèmes à résoudre.
Introduction
Contexte
John Hadji Argyris (1913-2004) est l’un des précurseurs dans le domaine des méthodes des éléments finis, utilisée lors de résolution numérique d’équations différentielles issues de la physique, mécanique… comme la théorie des plaques. Ses concepts sont apparus en premier lors de la Seconde Guerre Mondiale, ce qui rendait ses premiers résultats top secret.
Le principe des fonctions d'Argyris consiste à exprimer un polynôme avec pour seules informations des données relatives au maillage du domaine. Bien évidemment, d'autres fonctions sont utilisées en Méthodes des Eléments Finis (Lagrange, Raviart-Thomas, Nédélec, GaussLobatto, Hermite, Morley, Bell…) ayant chacune leurs avantages ainsi que leurs inconvénients (tout dépend du problème que l'on veut résoudre).
Les éléments d'Argyris sont exclusivement dénommés ainsi pour la dimension 2 (R2). En dimension 1, voire 3, on parle plutôt d'éléments de type Argyris.
Cadre d’étude
On se place dans R2. Les variables sont appelées x et y. Soit T un triangle quelconque, non aplati.
Les fonctions d'Argyris liées à T sont des fonctions de base de l'espace vectorielP5(T) qui représente l'ensemble des polynômes à deux variables x et y ((x,y)∈T) de degré au plus 5.
Approche formelle
Un élément M∈P5(T) s'écrit de manière unique sous la forme
Ainsi, la seule donnée des coefficients a0,a1,a2,a3,a4,a5,b1,b2,b3,b4,b5,c2,c3,c4,c5,d3,d4,d5,e4,e5,f5 suffit à écrire tout élément de P5(T). C'est pourquoi l'espace P5(T) est un espace de dimension 21 (nombre de coefficients à déterminer).
Il nous faut alors 21 relations (conditions) indépendantes afin de pouvoir déterminer ces 21 coefficients : on appelle cela les degrés de liberté.
Une base possible est {1,x,y,x,x**y,y,x,x,y,y,x,x**y,x**y,x**y,y,x,x**y,x**y,x**y,x**y,y}: on l'appelle la base canonique.
Dans la pratique, il est extrêmement difficile (et surtout pas pratique) de pouvoir trouver les 21 coefficients avec cette base. C'est pourquoi nous formulons une base différente formée des fonctions d'Argyris. Elles sont liées à des conditions données :
sur la valeur de la fonction M en chaque sommet (3 relations);
sur la valeur des dérivées premières de la fonction M en chaque sommet (6 relations);
sur la valeur des dérivées secondes de la fonction M en chaque sommet (9 relations);
sur la valeur "liée à la normale" pour chaque arête (3 relations).
Remarque 1 : Ces conditions ne sont pas uniques : on peut toujours trouver d'autres conditions, mais celles-ci sont les plus simples à mettre en application.
Remarque 2 : Le dernier point concerne la valeur "liée à la normale". C'est une définition un peu particulière qui peut être différente selon les travaux. Vous trouverez ici une définition possible et qui est la plus couramment utilisée.
Avec ces données, il est possible de calculer toutes les fonctions d'Argyris pour n'importe quel triangle : il suffit pour cela de résoudre un système linéaire AU=B où :
A est une matrice 21*21;
U est un vecteur de taille 21 composé des 21 coefficients;
B est un vecteur de taille 21 dont toutes les composantes sont nulles sauf une qui correspond à la condition adéquate.
Vous pourrez trouver un exemple de fonctions d'Argyris dans la partie Exemple avec les conditions indiquées entre parenthèses.
Remarque 3 : Résoudre ce système est équivalent à inverser la matrice A.
En pratique, il est impensable de calculer toutes les fonctions de bases pour chaque triangle car le nombre de triangles peut être énorme (de l'ordre de plusieurs millions par exemple). C'est pourquoi, on calcule les fonctions sur un triangle particulier dit de référence ayant pour sommets les points (0;0), (1;0),(0;1) et on en "déduit" les fonctions d'Argyris dans un triangle particulier.
Exemple
Voici la liste des fonctions de base d'Argyris dans le triangle de référence avec la condition correspondante (cela signifie que le degré de liberté associé à la condition vaut 1 et que les autres valent 0).
Remarque 4 : L’ordre n’a a priori aucune importance. Pour la programmation (ou l’utilisation de manière générale), il faut néanmoins se fixer un ordre et le conserver tout le temps.
Explications :
La condition concernant la normale est (∂xφ(me)+∂yφ(me))⋅ne, où me représente le milieu de l'arête e et ne désigne la normale à l'arête e sortante du triangle.
Expliquons maintenant comment se forme la matrice A.
Tout d'abord, le vecteur colonne U est composé des coefficients à déterminer, c'est-à-dire U=(a0;a1;b1;a2;b2;c2;a3;b3;c3;d3;a4;b4;c4;d4;e4;a5;b5;c5;d5;e5;f5).
Voyons comment se compose, par exemple, les lignes 1 et 6 de la matrice liées aux conditions φ(0,0)=1 et ∂xφ(1,0)=1 (les autres étant similaires).
Donc la sixième ligne de la matrice M est (0,1,0,2,0,0,3,0,0,0,4,0,0,0,0,5,0,0,0,0,0).
Matrice de passage
Remarque 5 : Cette construction n'est valable que pour le cas traité en exemple.
Pour trouver les fonctions de base d'Argyris dans un triangle donné, il faut multiplier le vecteur constitué des différentes fonctions dans le triangle de référence par une certaine matrice C que l'on explicitera ici.
Soient trois points non-alignés Xi = (xi,yi)(i = 1,2,3) qui formeront notre triangle T. Nous considérons la transformation affineFT qui envoie un point du triangle de référence T sur un point de T (on note X le point de coordonnées (x,y) dans T) :
Afin de simplifier l'écriture, nous notons : B:=BT:=(b11b12b21b22).
Notations
Dans le reste de cette présentation, on utilisera des notations simplificatrices :
Pour toutα∈N∗, on note Iα la matrice identitéα×α (elle ne comporte que des 1 sur la diagonale, les autres composantes valant 0);
Pour tout couple (α,β)∈N∗×N∗, on note 0α×β la matrice nulle α×β (toutes ses composantes valent 0).
On note e1 (resp. e2 ; e3) l'arête ayant pour sommets les points X2 et X3 (resp. X3 et X1 ; X1 et X2). On note | ei | la longueur de l'arête ei, i∈{1,2,3}. On a alors :
Remarque 6 : Si V est une vecteur ligne de taille n, on utilisera la notation V pour l'écrire en tant que vecteur ligne de taille n : cela s'appelle la transposée du vecteur V (où encore le vecteur transposé de V). Exemple : v1T=(v1x;v1y)
Construction de la matrice C
La matrice C se construit comme le produit de deux matrices C = D * E, où
D est une matrice 21×24 définie par :
, où Q:=(f100g1000f200g2000f300g3).
E est une matrice 24×21 définie par :
,
où
L:=(∣e1∣000∣e2∣000∣e3∣) ;
T:=(T1T2T3), où :
T1 est une matrice 3×3 définie par T1:=815(0−1110−1−110);
T2 est une matrice 3×6 définie par T2:=16−7(01×2v1Tv1Tv2T01×2v2Tv3Tv3T01×2);
T3 est une matrice 3×9 définie par T3:=321(01×3−w1Tw1Tw2T01×3−w2T−w3Tw3T01×3).
Logiciels gérant les éléments d’Argyris
getfem++
matlab
...
Bibliographie
V. Girault, P.-A. Raviart. Finite Element Methods for Navier-Stokes Equations. Theory and algorithms. Springer Series in Computational Mathematics, 5. Springer-Verlag, Berlin, 1986.
S. Nicaise, K.Witowski and B. I. Wohlmuth. An a posteriori error estimator for the Lamé equation based on equilibrated fluxes. IMA Journal of Numerical Analysis, 28, no.2, pp 331-353, 2008.