3. Présentation générale#

3.1. Principe du recalage#

Considérons le problème modèle d’identification des caractéristiques élastoplastiques \(E\) , \({\sigma}_{y}\) , \({E}_{T}\) (respectivement module d’Young, limite d’élasticité et module d’écrouissage) d’un matériau sur un essai de traction uniaxiale.

On a d’unepart la courbe de traction expérimentale donnant l’évolution de la contrainte en fonction du temps et qui est une donnée:

_images/10000000000001B3000000E6C0499E934DBD9B1A.png

On a d’autre part une fonction des 3 paramètres qui pour chaque valeur du triplet \(E\) , \({\sigma}_{y}\) , \({E}_{T}\) renvoie une courbe de traction calculée:

_images/10000000000002ED00000108C168D8BBAE3213F1.png

L’objectif du recalage est alors de répondre à la question:

Quelles sont les valeurs de \((E,{\sigma}_{y},{E}_{T})\) décrivant au mieux mon expérience?

3.2. Organisation du recalage#

Pour mener à bien un recalage, il est nécessaire de disposer de l’ensemble des informations suivantes:

  • les \(N\) courbes expérimentales (à chacune de ces courbes peut être attribué un poids arbitraire),

  • les \(P\) paramètres à recaler ainsi que, pour chacun, une estimation de sa valeur initiale, sa valeur minimale et sa valeur maximale,

  • le fichier de commandes modélisant les \(N\) essais que l’on veut recaler,

  • les noms des \(N\) grandeurs à extraire du fichier de commandes ci-dessus et qui seront recalées sur les \(N\) courbes expérimentales. Ces grandeurs doivent être contenues dans une table issue de POST_RELEVE_T.

La mise en données de ces informations nécessite alors l’organisation suivante:

  • un fichier de commandes dit maître contenant les \(N\) courbes expérimentales, les \(P\) paramètres, les noms des grandeurs à recaler ainsi que d’autres informations propres au recalage, le tout renseigné dans MACR_RECAL. Les différents formats utilisés sont précisés dans ce qui suit,

  • un fichier de commandes dit esclave modélisant les essais expérimentaux.

En effet, le recalage est un processus itératif : le fichier maître exécute le fichier esclave, il récupère les \(N\) courbes calculées avec les valeurs courantes des \(P\) paramètres, il compare les valeurs des courbes calculées à celles des courbes expérimentales, il en déduit de nouvelles valeurs pour les \(P\) paramètres et relance le fichier esclave. Ce processus continue jusqu’à obtention de la convergence.

N courbes expérimentales

Fichier maître

MACR_RECAL

(fichier .comm du profil d’étude)

P paramètres

Boucles de recalage

N courbes calculées

Fichier esclave

Figure 3.2-a. Schéma de fonctionnement de la procédure de recalage pour le cas classique

Dans la partie suivante sont décrites les opérandes de MACR_RECAL. On y fait référence à quelques notions du langage Python. Il n’est cependant nullement nécessaire de connaître Python pour utiliser cette macro commande. La partie «Exemple d’utilisation» est là pour éclairer l’utilisateur.

La structure de données produite est une liste de réels contenant les valeurs des paramètres à convergence en cas de convergence ou à la dernière itération dans le cas contraire.

3.3. Cas particulier d’utilisation : mode EXTERNE#

Dans ce mode d’utilisation, l’algorithme d’optimisation est externe à Code_Aster .

_images/10000000000004430000011717F85B1174CCF57F.png

Figure 3.3-a : MACR_RECAL méthode EXTERNE

Code_Aster n’est qu’une boite noire qui prend en entrée un fichier texte contenant la liste des valeurs de paramètres, effectue le calcul de la fonctionnelle pour ce jeu de paramètres, réalise éventuellement le calcul des gradients par rapport aux paramètres, et renvoie à l’algorithme externe, par l’intermédiaire d’un fichier texte, la valeur de la fonctionnelle et éventuellement des gradients.

Dans ce mode de fonctionnement, le paragraphe 3.1 reste valable.

3.4. Cas particulier du recalage d’un modèle dynamique#

Dans le cas du recalage des paramètres d’un modèle dynamique en utilisant des données expérimentales issues de l’analyse dynamique, il existe quelques particularités pour la mise en œuvre. Les données expérimentales sont dans ce cas des fréquences propres et des vecteurs propres (déformées modales) contenues dans un concept mode_meca issu de la mesure.

L’utilisateur dispose de ce concept à partir d’un logiciel d’acquisition de données habituellement en format «.unv» et il doit construire un modèle dit «expérimental» afin de l’exploiter dans l’environnement Code_Aster. Ce modèle «expérimental» contient entre autres le maillage expérimental, c’est à dire le maillage des capteurs, plus grossier que le maillage du modèle numérique, qui doit être disponible également pour l’étude de recalage.

Donc l’utilisateur n’a plus à fournir les courbes expérimentales dans le fichier maître mais il va renseigner ici les noms des concepts qui les contiennent, concepts qui seront extraits par un premier calcul esclave depuis le fichier externe «unv». Le format utilisé pour transmettre cette information à MACR_RECAL est le même que celui pour les RESU_CALC : une liste Python de \(N\) listes Python contenant les noms des tables et des colonnes contenant les réponses expérimentales.

Ci-dessous en présente le schéma du processus de recalage dans le cas de la dynamique:

_images/1000000000000309000002990E1B7619C5D63D60.png

Figure 3.4-a. Schéma de fonctionnement de la procédure de recalage en dynamique

Deux autres particularités concernent le fichier de commande de calcul esclave:

  • il contient aussi les commandes nécessaires à la construction du modèle expérimental. Le concept mode_mecautilisable pour extraire RESU_EXP est fourni par LIRE_RESU;

  • Les grandeur correspondant aux réponses expérimentales et numériques sont toujours contenues dans des tables mais plus nécessairement issues de POST_RELEVE_T. Les réponses liées aux déformées modales sont issues soit de CREA_TABLE (pour le critère de MAC expérimental), soit de MAC_MODES (pour le critère de MAC numérique). On rappelle que le critère de MAC [U4.52.15] sert à comparer deux bases modales, il s’agit ici de celle expérimentale et de celle numérique.