1. Introduction#

Pour Code_Aster, une option de calcul élémentaire correspond à un calcul conduisant à produire un ou plusieurs champs «par éléments»

Exemples d’options de calcul (option) :

  • RIGI_MECA: calcul de la rigidité (comportement élastique)

  • FLUX_ELGA: calcul du flux thermique connaissant la température aux nœuds

  • CHAR_MECA_PESA_R : calcul du second membre lié à un chargement de pesanteur.

Les 3 exemples précédents montrent que les calculs élémentaires peuvent intervenir un peu partout dans Code_Aster : dans les commandes de calcul (matrices et seconds membre), comme dans les commandes de post-traitement (calcul des flux en thermique, des énergies mécaniques, …)

Une option de calcul élémentaire a un nom (K16) et est décrite dans un catalogue rangé dans le répertoire catalo/cataelem/Options

Faire un calcul élémentaire correspond à demander le calcul d’une option sur une liste d’éléments finis (ligrel). Ce calcul est réalisé par l’appel à la routine «chapeau» de tous les calculs élémentaires : calcul.F90

Le calcul est dit «élémentaire» car ce sont les éléments finis du ligrel qui font le calcul. Pour qu’un calcul soit «élémentaire», il faut qu’il soit «local», c’est à dire qu’un élément fini puisse calculer sa participation en ayant uniquement connaissance de données locales (champs locaux sur lui-même).

Ne connaissant que des quantités locales, il calcule logiquement un résultat «local» (la participation de l’élément fini).

La collection des résultats calculés par les différents éléments constitue un champ (global) «par éléments». C’est un champ par nature discontinu entre les éléments.

Remarque : le calcul d’une option de calcul élémentaire peut produire plusieurs champs. C’est par exemple le cas de l’option RAPH_MECA utilisée dans l’opérateur STAT_NON_LINE : on calcule en même temps un champ de contrainte, un champ de variables internes et un champ de «résidus».

Le champ global produit par un calcul élémentaire peut-être un cham_elem ou un resuelem. La différence entre les deux types de structure de données est petite : le resuelem est un champ élémentaire contenant des matrices ou vecteurs élémentaires destinés à être assemblés pour former une matrice globale ou un second membre.

Lorsqu’un calcul élémentaire produit un cham_elem, celui-ci peut-être ELNO, ELGA ou ELEM. Un champ ELNO contient des valeurs sur les nœuds des éléments. Un champ ELEM est un champ constant par maille. Un champ ELGA est un champ contenant des valeurs sur les points d’intégration (ou de Gauss) des éléments.

Dans le paragraphe suivant, nous allons détailler la syntaxe que doit avoir le catalogue d’une option.

Écrire le catalogue d’une nouvelle option n’est pas une fin en soi. Ce n’est qu’une étape préliminaire pour que des éléments finis puissent calculer cette option. Ceci est expliqué dans le document [D5.02.05] «Introduire un nouveau calcul élémentaire».