v1.04.116 PETSC01 - Validation du solveur PETSc en élasticité linéaire 3D#

Résumé :

Ce cas-test permet de valider le solveur PETSC en élasticité linéaire \(\mathrm{3D}\) sous différentes configurations:

  • Commandes éclatées ou opérateurs globaux

  • Dualisation et élimination des conditions aux limites (AFFE_CHAR_CINE/MECA)

  • Utilisation de PETSC avec la méthode NEWTON_KRYLOV dans l’opérateur de dynamique non-linéaire

Solution de référence#

Méthode de calcul utilisée pour la solution de référence#

La solution de référence est celle obtenue sur le même maillage avec le code PERMAS, calculs réalisés en 1997.

Résultats de référence et grandeurs testées#

Localisation

Référence ( \(\mathrm{mm}\) )

Précision

Point \(F’\) \(\mathrm{DY}\) \(\mathrm{DZ}\)

1. 10–2 1.0296 10–4

1.5E-4 1.5E-4

Point \(\mathrm{B5}’\) \(\mathrm{DX}\) \(\mathrm{DY}\) \(\mathrm{DZ}\)

4.3006 10–3 9.2890 10–3 -2.9173 10–5

1.5E-4 1.5E-4 1.5E-4

Modélisation de référence#

Modélisation commune à tous les tests#

../../../../_images/100000000000028F0000019CB78F02871BD116B4.png

Maillage: Nombre de nœuds : 3323 Nombre de mailles : 630 HEXA20

Découpage:

Face1 \((A,\mathrm{B1},\mathrm{...},\mathrm{B5},C,D,E)\)

428 nœuds

Face2 \((A,\mathrm{B0},\mathrm{B0}',A')\)

198 nœuds

Segment \(\mathrm{FF}’\)

11 nœuds

Nom des nœuds:

Point \(F’=\mathrm{NO2958}\)

Point \(\mathrm{B5}’=\mathrm{NO2974}\)

Conditions aux limites:

en tous les nœuds de la \(\mathrm{Face1}\)

(GROUP_NO=”Grno1”, DZ=0)

en tous les nœuds de la \(\mathrm{Face2}\)

(GROUP_NO=”Grno8”, DY=0)

en tous les nœuds du segment \(\mathrm{FF}’\)

(GROUP_NO=”Grno7”, DX=0, DY=0.01)

Modélisation A#

Opérateur de résolution MECA_STATIQUE.

Dualisation et élimination des conditions aux limites cinématiques (AFFE_CHAR_MECA et AFFE_CHAR_CINE).

Solveur PETSC, algorithmes CR et CG (avec pré-conditionnement LDLT incomplet avec niveau de remplissage 0 et renumérotation RCMK).

Modélisation B#

Opérateur de résolution STAT_NON_LINE.

Dualisation et élimination des conditions aux limites cinématiques (AFFE_CHAR_MECA et AFFE_CHAR_CINE).

Solveur PETSC, algorithme CR (avec pré-conditionnement LDLT incomplet avec niveau de remplissage 0 et renumérotation RCMK).

Modélisation C#

Commandes éclatées CALC_MATR_ELEM, FACTORISERet RESOUDRE.

Dualisation et élimination des conditions aux limites cinématiques (AFFE_CHAR_MECA et CALC_CHAR_CINE).

Solveur PETSC, algorithme CR (avec pré-conditionnement LDLT incomplet avec niveau de remplissage 0 et renumérotation RCMK).

Modélisation D#

Opérateur de résolution MECA_STATIQUE.

Dualisation et élimination des conditions aux limites cinématiques (AFFE_CHAR_MECA et AFFE_CHAR_CINE).

Solveur PETSC, algorithme CR (pré-conditionnement LDLT_SP de factorisation simple précision et sans renumérotation).

Modélisation E#

Opérateur de résolution STAT_NON_LINE.

Dualisation et élimination des conditions aux limites cinématiques (AFFE_CHAR_MECA et AFFE_CHAR_CINE).

Solveur PETSC, algorithme CR (pré-conditionnement LDLT_SP de factorisation simple précision et sans renumérotation).

Modélisation F#

Commandes éclatées CALC_MATR_ELEM, FACTORISERet RESOUDRE.

Dualisation et élimination des conditions aux limites cinématiques (AFFE_CHAR_MECA et CALC_CHAR_CINE).

Solveur PETSC, algorithme CR (pré-conditionnement LDLT_SP de factorisation simple précision et sans renumérotation).

On vérifie l’export et l’import de vecteurs PETSc dans un champ aux nœuds avec les méthodes toPetsc et fromPetsc.

Modélisation G#

Opérateur de résolution MECA_STATIQUE.

Élimination des conditions aux limites cinématiques (AFFE_CHAR_CINE).

Solveur PETSC, algorithmes CR et GCR (5 résolutions sans renumérotation avec respectivement pré-conditionnement JACOBI, pré-conditionnement SOR, SANS pré-conditionnement, préconditionnement ML et pré-conditionnement BOOMER).

Modélisation H#

Opérateur de résolution DYNA_NON_LINE.

Dualisation et élimination des conditions aux limites cinématiques (AFFE_CHAR_MECA et AFFE_CHAR_CINE).

Solveur PETSC, algorithme GMRES (pré-conditionnement LDLT_SP par factorisation simple précision).

Modélisation I#

Opérateur de résolution DYNA_NON_LINE.

Dualisation et élimination des conditions aux limites cinématiques (AFFE_CHAR_MECA et AFFE_CHAR_CINE).

Solveur PETSC, algorithme GMRES (pré-conditionnement LDLT_SP par factorisation simple précision).

Utilisation de la méthode NEWTON_KRYLOV à la place de la méthode NEWTON.

Modélisation J#

Opérateur de résolution MECA_STATIQUE.

Dualisation et élimination des conditions aux limites cinématiques (AFFE_CHAR_MECA et AFFE_CHAR_CINE).

Solveur PETSC, algorithmes CG etGMRESavec pré-conditionnement de type Lagrangien augmenté BLOC_LAGR.

Synthèse des résultats#

Ce cas-test montre le bon fonctionnement du solveur PETSC dans les différents cas étudiés.