La méthode des éléments finis emprunte à quatre cours que vous avez suivis: l'intégration par parties et le changement de variable d'Analyse I et d'Analyse II, le théorème de la divergence d'Analyse III, les matrices symétriques définies positives d'Algèbre linéaire, l'élimination de Gauss, le conditionnement et la quadrature d'Analyse numérique. Elle n'en utilise qu'une petite partie, mais elle l'utilise à chaque page, et souvent sous une forme que ces cours n'ont pas mise en avant: une intégration par parties élément par élément, une formule de Green dont le terme de bord est un flux, une matrice dont la définie positivité est une énergie, un système dont la bande décide du coût.
Cette annexe rassemble ces outils dans la notation du cours. Elle ne remplace pas les cours d'origine: les énoncés dont la preuve tient en quelques lignes sont démontrés; les autres sont admis, avec la raison et le chapitre où les retrouver. Les exemples reprennent les problèmes de référence du cours — la matrice tridiagonale du problème modèle, la matrice du treillis à trois barres, la plaque carrée —, pour que chaque formule ait déjà une valeur que vous connaissez. La dernière section indique quel chapitre emprunte quoi.
Intégration par parties et formule de Green
En dimension un
Démonstration. La fonction est continûment dérivable, de dérivée . Le théorème fondamental de l'analyse donne ; on sépare l'intégrale en deux.
C'est le théorème d'Analyse I (chapitre 11). Le chapitre 2 l'applique avec à la place de , c'est-à-dire sous la forme qui fait passer une dérivée de l'inconnue sur la fonction test:
Les deux termes de bord sont des valeurs de la dérivée de , c'est-à-dire, pour une barre, des efforts normaux aux extrémités. Là où est imposée, on choisit et le terme disparaît; là où l'effort est imposé, il reste, et c'est par lui que la condition naturelle entre dans la formulation faible.
Les fonctions du cours ne sont pas continûment dérivables sur tout le domaine: une fonction chapeau a une dérivée qui saute aux nœuds, et la solution d'une barre chargée par une force ponctuelle aussi. On applique alors (A.1) élément par élément.
Démonstration. Sur chaque élément, (A.2) donne , où l'on a utilisé la continuité de pour écrire sans préciser de quel côté. On somme sur . Un nœud intérieur apparaît deux fois: comme extrémité droite de l'élément , avec , et comme extrémité gauche de l'élément , avec ; leur somme est . Restent les deux extrémités et .
Deux lectures de (A.3) reviennent dans le cours. Si est continûment dérivable, les sauts sont nuls et l'on retrouve (A.2): une fonction continue et affine par morceaux n'a besoin d'aucune hypothèse de plus pour que ait un sens, ce qui est la raison pour laquelle les fonctions chapeau sont dans (chapitre 2). Si une force ponctuelle agit au nœud d'une barre, la formulation faible contient le terme , et (A.3) dit que la solution doit y avoir un saut d'effort normal : c'est l'équilibre du nœud (exercice A.1). Au chapitre 11, le même calcul, appliqué à au lieu de , fait apparaître les intérieurs et les sauts qui servent à estimer l'erreur.
En dimension deux
Nous l'admettons: c'est la forme flux du théorème de Green d'Analyse III (chapitre 3, théorème 3.4), démontrée sur un domaine élémentaire puis étendue par découpage; la version en dimension trois, le théorème de Gauss–Ostrogradski, est le théorème 5.1 du même cours. Physiquement, (A.4) est un bilan: ce qui est produit à l'intérieur ( est une densité de source) sort par le bord. En dimension un, , la normale vaut en et en , et (A.4) se réduit au théorème fondamental de l'analyse.
Démonstration. Pour un champ et une fonction , la règle du produit appliquée à chaque composante donne . Appliquons (A.4) au champ avec :
On fait passer le premier terme à droite et l'on change les signes.
La formule (A.5) est (A.2) en dimension deux: une dérivée passe de sur , et le prix est un terme de bord. Ce terme contient , le flux de chaleur sortant (loi de Fourier) dans le problème de conduction du chapitre 8. Sur la partie du bord où la température est imposée, on prend ; sur la partie où le flux est imposé, sa valeur connue entre dans le second membre . C'est exactement la distinction entre conditions essentielles et naturelles du chapitre 2, qui se transporte telle quelle.
Changement de variables et élément de référence
Toutes les intégrales élémentaires du cours se calculent sur un élément de référence — le segment , le triangle de sommets , , , le carré —, puis se transportent sur l'élément réel par une transformation .
La formule (A.6) est le théorème 9.10 d'Analyse II (chapitre 9), et la relation entre les gradients est la règle de la chaîne du chapitre 4 du même cours: , et de même pour , ce qui est la ligne correspondante de . Nous les admettons. Le chapitre 10 en tire , qui exige , et , qui exige pour que l'élément ne se retourne pas. En dimension un, (A.6) est le changement de variable d' (chapitre 11): pour l'élément de longueur , , et (chapitres 4 et 7).
Matrices symétriques définies positives
La lettre sert à trois choses dans cette annexe, comme dans le cours: une matrice générique dans les énoncés d'algèbre linéaire (définition A.3 et suivantes), l'aire d'un triangle (exemples A.3 et A.8, théorème A.14) et la section d'une barre dans . Le contexte les distingue toujours.
Pour une matrice de rigidité, est l'énergie de déformation du champ de degrés de liberté (chapitres 3 et 5). « est définie positive» dit donc que tout déplacement non nul coûte de l'énergie, et « est seulement semi-définie» qu'un déplacement non nul — un mode rigide, un mécanisme — n'en coûte pas.
Démonstration partielle. (1) ⇔ (2). Par le théorème spectral (Algèbre linéaire, chapitre 11, théorème 11.3, admis ici), avec orthogonale et . Avec , qui est non nul si et seulement si l'est, . Cette somme est strictement positive pour tout si et seulement si tous les le sont (prendre pour la réciproque).
(1) ⇒ (3). La sous-matrice principale d'ordre est définie positive: pour non nul, compléter par des zéros donne avec . Par (2) appliqué à , son déterminant, produit de ses valeurs propres, est strictement positif.
(3) ⇔ (4). Sans échange de lignes, l'élimination ne modifie pas les mineurs principaux dominants (on retranche à une ligne un multiple d'une ligne précédente), et après étapes le bloc en haut à gauche est triangulaire de diagonale . Donc tant que les pivots précédents sont non nuls: les sont tous positifs si et seulement si les le sont.
Les implications restantes, (3) ⇒ (1) et l'équivalence avec (5), sont admises: elles sont démontrées en Algèbre linéaire (chapitre 11, théorème 11.7, et chapitre 12, théorème 12.3) et en Analyse numérique (chapitre 3, théorème 3.4), où Cholesky est construit colonne par colonne. Le lien avec (4) est direct: les termes diagonaux de sont les racines carrées des pivots, .
En pratique, chaque caractérisation a son usage. La première sert à démontrer qu'une matrice de rigidité est SDP (théorème 3.5, théorème 5.3): on calcule et l'on y reconnaît une énergie. La quatrième et la cinquième servent à le constater numériquement: un pivot nul ou négatif pendant une factorisation de Cholesky est le diagnostic d'un mécanisme (chapitre 5). La deuxième sert à quantifier: conditionnement et stabilité dépendent des valeurs propres extrêmes. Le critère de Sylvester, enfin, est commode à la main pour une matrice ou , et inutilisable au-delà.
Lesquelles de ces matrices symétriques sont définies positives? Plusieurs réponses sont possibles.
Plusieurs réponses possibles
Cholesky ne demande aucun pivotage: le théorème A.6 garantit des pivots positifs dans l'ordre naturel. C'est un avantage réel sur l'élimination de Gauss générale, pour deux raisons: l'ordre des inconnues reste celui que l'on a choisi pour réduire la bande (section suivante), et l'on ne stocke que la moitié de la matrice. Le coût est d'environ opérations au lieu de .
La fonction cholesky(A) doit renvoyer le facteur tel que , ou None dès qu'un pivot est négatif ou nul (matrice non définie positive). Elle contient une erreur: le programme imprime un facteur faux et des déplacements du treillis qui ne sont pas ceux du chapitre 5 (0,3810; 0,9643; -0,2143 mm). Trouvez-la et corrigez-la. Les vérifications essaient aussi votre fonction sur une autre matrice et sur deux matrices qui ne sont pas définies positives.
Valeurs propres: quotient de Rayleigh et disques de Gershgorin
Deux outils permettent de borner les valeurs propres extrêmes d'une matrice de rigidité sans les calculer. Le chapitre 3 en a besoin pour le conditionnement, le chapitre 12 pour le pas de temps critique.
Démonstration. Avec et , on a puisque est orthogonale, et , moyenne des pondérée par les poids positifs . Une moyenne pondérée est comprise entre le plus petit et le plus grand des termes, et elle n'atteint l'un d'eux que si tout le poids porte sur les égaux à celui-ci.
Tout vecteur d'essai donne donc une borne: c'est ainsi que le chapitre 3 a estimé et en évaluant sur les modes . C'est aussi le théorème 11.9 d'Algèbre linéaire.
Démonstration. Soit avec , et un indice où est maximal, donc . La ligne s'écrit , d'où . On divise par . La seconde affirmation en découle: .
Pour la matrice tridiagonale du problème modèle, chaque ligne a la somme : Gershgorin donne sans aucun calcul, à comparer à la valeur exacte , soit contre la borne pour , et contre pour . La borne est d'autant meilleure que le maillage est fin, et elle s'obtient élément par élément, ce qui la rend précieuse pour choisir un pas de temps explicite.
Le problème aux valeurs propres généralisé
En dynamique (chapitre 12), les carrés des pulsations propres, , sont les valeurs propres de (relation (12.8)), où la matrice de masse est elle aussi SDP. Ce n'est pas un problème aux valeurs propres ordinaire, mais il s'y ramène.
Démonstration. Soit la factorisation de Cholesky de (théorème A.6). Posons et , matrice symétrique. L'équation , multipliée à gauche par , devient , un problème ordinaire. Le théorème spectral fournit des réels et des orthonormés; les vérifient . Enfin , strictement positif si est définie positive.
Le cas le plus simple est celui d'une masse diagonale («masse concentrée», chapitre 12) sur le problème modèle: les valeurs propres généralisées sont celles de divisées par , , qui approchent les valeurs propres de avec . Pour : , et , contre , et . La première n'est fausse que de 5,04 %; la dernière est mauvaise, ce qui est la règle: un maillage ne représente bien que les modes nettement plus longs que ses éléments.
Résolution des systèmes linéaires
Élimination de Gauss, pivotage et coût
L'élimination de Gauss transforme en un système triangulaire supérieur par combinaisons de lignes, puis le résout par remontée; elle équivaut à une factorisation (Analyse numérique, chapitre 3, théorème 3.1). Le pivotage partiel — échanger, à l'étape , la ligne avec celle qui porte le plus grand coefficient en valeur absolue dans la colonne — évite de diviser par un pivot nul ou minuscule (théorème 3.3 du même chapitre). C'est la fonction resoudre(K, F) du chapitre 1, utilisée dans tout le cours. Son coût, pour une matrice pleine d'ordre , est d'environ opérations pour la factorisation (théorème 3.2 du même chapitre), auxquelles les deux substitutions triangulaires ajoutent environ opérations, un compte direct: chaque coefficient d'une matrice triangulaire sert à une multiplication et une soustraction.
Pour une matrice SDP, le pivotage est inutile (théorème A.6, point 4), et Cholesky divise le coût par deux. Ce n'est pourtant pas ce facteur 2 qui rend la méthode des éléments finis praticable: c'est la structure creuse de .
Matrices bande et stockage
Pour une matrice de rigidité, seulement si les ddl et appartiennent à un même élément (chapitres 3 et 4). La demi-largeur de bande vaut donc le plus grand écart de numéros entre deux ddl d'un même élément: elle dépend de la numérotation, pas seulement du maillage. Une barre numérotée dans l'ordre a ; une plaque rectangulaire numérotée ligne par ligne a une bande de l'ordre du nombre de nœuds par ligne, d'où l'intérêt de numéroter dans le sens de la plus petite dimension.
Démonstration. À l'étape , la mise à jour ne modifie que si et , donc seulement pour et . Alors : aucun coefficient extérieur à la bande n'est jamais modifié, et il reste nul. Pour le coût, chaque étape met à jour au plus coefficients (la moitié par symétrie avec Cholesky), avec une multiplication et une soustraction chacun; sur étapes, cela fait de l'ordre de opérations.
Le cas est l'algorithme de Thomas (Analyse numérique, chapitre 3), cité au chapitre 1, dont le coût exact est opérations. Mais la bande est préservée, pas les zéros à l'intérieur de la bande: ceux-ci se remplissent pendant la factorisation. C'est le remplissage (fill-in, Analyse numérique, chapitre 3, définition 3.7).
Normes et conditionnement
Démonstration. On a , donc , et , donc . On multiplie les deux inégalités.
C'est le théorème 4.3 d'Analyse numérique (chapitre 4), qui traite aussi les perturbations de la matrice. En virgule flottante, la résolution par Cholesky ou par Gauss avec pivotage se comporte comme si les données avaient été perturbées de quelques : on peut donc perdre jusqu'à environ chiffres significatifs. C'est une borne de pire cas; l'erreur effective est souvent bien plus petite.
Démonstration. Avec et , , avec égalité pour un vecteur propre de : . La matrice a pour plus grande valeur propre , d'où la seconde égalité.
L'égalité dans (A.7) est atteinte quand est un vecteur propre de et un vecteur propre de : une charge «raide» perturbée par une petite composante «souple». Pour une matrice de rigidité, cela se lit physiquement: le conditionnement est le rapport entre le mode le plus coûteux en énergie et le moins coûteux.
Le problème modèle est discrétisé par éléments linéaires uniformes. Que vaut le conditionnement de la matrice de rigidité?
Intégration numérique
Formules de Gauss–Legendre sur
Le théorème est démontré au chapitre 7 (théorème 7.2, en entier pour ) et dans Analyse numérique (chapitre 8, théorème 8.10); nous ne le répétons pas. Sur un intervalle , on transporte la formule par :
Par exemple, la formule à deux points donne exactement, et au lieu de pour : le degré 4 dépasse . La règle pratique du chapitre 7 en découle: .
Sur l'élément quadratique à trois nœuds, de transformation affine (jacobien constant), on veut calculer exactement la matrice de masse . Combien de points de Gauss faut-il au minimum?
Sur le carré et sur le triangle
Sur le carré de référence , on applique la formule à points dans chaque direction:
Cette formule produit à points est exacte pour tout polynôme de degré au plus en chaque variable séparément, comme pour (Fubini, puis le théorème A.13 sur chaque intégrale simple). Le chapitre 10 l'utilise avec points pour le quadrilatère bilinéaire.
Sur le triangle, il n'y a pas de produit, et les formules s'écrivent directement sur le triangle de référence de sommets , , , d'aire . Les deux plus utilisées:
| formule | points | poids | degré |
|---|---|---|---|
| 1 point (centre de gravité) |
Les poids somment à , l'aire de , pour que les constantes soient intégrées exactement. Une variante à trois points, placée aux milieux des côtés avec les mêmes poids, a aussi le degré 2. Pour un triangle réel, on multiplie par (exemple A.3). Les degrés indiqués ont été vérifiés en arithmétique exacte sur tous les monômes jusqu'au degré 5.
Pour les polynômes en coordonnées d'aire, qui sont les fonctions de forme du triangle linéaire, on dispose d'une formule exacte qui dispense de toute quadrature.
Nous l'admettons: la preuve ramène l'intégrale au triangle de référence par (A.6), puis calcule les intégrales itérées par des intégrations par parties successives (fonction bêta); on la trouve dans les ouvrages de Zienkiewicz et de Hughes cités en fin d'annexe. Elle a été vérifiée ici en arithmétique exacte pour tous les triplets utilisés ci-dessous.
Un triangle linéaire a pour sommets , et , en mètres. Que vaut le coefficient hors diagonale de sa matrice de masse, en m²?
Ce que les chapitres empruntent à cette annexe
| Chapitre | Outils utilisés | Dans cette annexe |
|---|---|---|
| 1 | matrice tridiagonale, Thomas, symétrie définie positive | exemple A.4, théorème A.10 |
| 2 | intégration par parties, termes de bord, fonctions affines par morceaux | théorèmes A.1, A.2, exemple A.1 |
| 3 | matrice SDP, bande, quotient de Rayleigh, conditionnement en | théorèmes A.6, A.7, A.12, exemples A.4, A.7 |
| 4 | bande et numérotation, force ponctuelle, pénalisation et conditionnement | théorèmes A.2, A.10, A.11, exercice A.1 |
| 5 | Cholesky, pivot nul et mécanisme, conditionnement du treillis | théorème A.6, exemples A.5, A.7, question A.2 |
| 7 | élément de référence, jacobien en 1D, Gauss–Legendre | théorèmes A.5, A.13, question A.4 |
| 8 | divergence, formule de Green, triangle de référence, intégrales en coordonnées d'aire | théorèmes A.3, A.4, A.14, exemples A.3, A.6, A.8 |
| 9, 10 | jacobien en 2D, règle de la chaîne, Gauss sur le carré et le triangle | théorème A.5, figure A.2, exemple A.8 |
| 11 | sauts de dérivée et résidus par élément | théorème A.2 |
| 12 | matrice de masse, valeurs propres généralisées, borne de Gershgorin | théorèmes A.8, A.9, exemple A.8 |
Exercices
Vous pouvez afficher le corrigé directement sous chaque énoncé après avoir cherché la solution.
Une barre de longueur , de rigidité constante, est encastrée en et libre en . Elle ne porte aucune charge répartie, mais une force ponctuelle au point , avec . Sa formulation faible est: trouver , nulle en 0, telle que
Soit la matrice de rigidité du problème modèle, de taille , avec .
Pour le problème modèle avec et des éléments linéaires, l'erreur du tableau de référence vaut pour et se comporte comme .
Soit la formule sur le triangle de référence.
Références
- Quarteroni, A., Sacco, R. et Saleri, F., Méthodes numériques: algorithmes, analyse et applications, Springer (systèmes linéaires, factorisations de Cholesky et bande, conditionnement, quadratures de Gauss).
- Golub, G. H. et Van Loan, C. F., Matrix Computations, Johns Hopkins University Press (matrices bande, Cholesky, remplissage et conditionnement, la référence de l'algèbre linéaire numérique).
- Hughes, T. J. R., The Finite Element Method: Linear Static and Dynamic Finite Element Analysis, Dover (stockage des matrices de rigidité, quadratures sur le triangle et le carré, problème aux valeurs propres généralisé).
- Zienkiewicz, O. C., Taylor, R. L. et Zhu, J. Z., The Finite Element Method: Its Basis and Fundamentals, Butterworth-Heinemann (coordonnées de surface et leurs intégrales, intégration numérique sur les éléments).
- Ern, A. et Guermond, J.-L., Theory and Practice of Finite Elements, Springer (formule de Green, quadratures et propriétés des matrices de rigidité et de masse).