Un schéma YACS pour Code_Aster¶
Dans le cas où le schéma implique un couplage entre Code_Aster et HOMARD, une façon de faire est décrite ici. Les seules contraintes sont des conventions pour que le script de pilotage de Code_Aster fonctionne correctement au sein du schéma.
Préparations¶
Le répertoire de calcul¶
La première phase consiste à créer un répertoire qui abritera les fichiers du calcul et les fichiers des maillages successifs.
Les commandes¶
Les commandes du calcul sont à définir comme pour n’importe quel calcul. On particularisera uniquement la récupération de la valeur de test pour la convergence.
La valeur de test¶
Pour récupérer la valeur de test V_TEST, le script va chercher dans le fichier resu, la ligne de type :
V_TEST 0.02071983
Pour cela, la meilleure façon consiste à placer la valeur à tester dans une table intitulée V_TEST, par exemple après une extraction depuis un résultat :
TA=POST_RELEVE_T(ACTION=_F(OPERATION='EXTRACTION',
INTITULE='V_TEST',
RESULTAT=RESU,
NOM_CHAM='TEMP',
NUME_ORDRE=0,
GROUP_NO='A',
NOM_CMP='TEMP',),);
puis à imprimer cette table en se limitant aux deux paramètres INTITULE et composante retenue :
IMPR_TABLE(TABLE=TA,
NOM_PARA=('INTITULE','TEMP',),);
Le pilotage de l’adaptation¶
Si on souhaite piloter l’adaptation par un champ, il faudra écrire ce champ dans le fichier MED de sortie. Ce peut être un indicateur d’erreur (commande CALC_ERREUR) ou un autre champ.
Par exemple :
RESU=CALC_ERREUR(reuse =RESU,
RESULTAT=RESU,
OPTION='ERTH_ELEM',);
IMPR_RESU(FORMAT='MED',
RESU=_F(RESULTAT=RESU,
NUME_ORDRE=0,
NOM_CHAM='ERTH_ELEM',
NOM_CMP='ERTABS',
NOM_CHAM_MED='ERREUR',),);
Le script¶
Le script de pilotage de Code_Aster à fournir au schéma YACS est à télécharger ici : ScriptAster. Ce fichier peut être placé n’importe où.
Comment procéder ?¶
Un premier calcul¶
Une fois les commandes au point, il faut lancer un premier calcul. Cela permet de choisir le paramétrage du calcul : version de Code_Aster, serveur de calcul, interactif/batch, etc. Ce sont ces paramètres qui seront utilisés pour les calculs successifs dans le schéma. Le lancement de Code_Aster rassemble ces informations dans un fichier de type export. Il faut copier ce fichier sous le nom calcul.ref.export dans le répertoire de calcul.
Création du schéma¶
Quand le calcul est terminé, il faut enchaîner les étapes suivante :
vérifier que le fichier de résultats au format MED a été créé et que le fichier de résultats de type
resucontient la ligne donnant la valeur à tester ;activer le module HOMARD de SALOME ;
créer un cas à partir du maillage initial ;
créer une itération en se basant sur le champ que l’on a retenu ;
éventuellement calculer cette itération pour contrôler les choix, mais ce n’est pas obligatoire ;
créer le schéma basé sur ce cas.
Lancer le schéma¶
Le schéma est écrit dans le fichier schema.xml dans le répertoire lié au cas qui en est le support. Ce fichier peut être déplacé sans problème. On peut modifier les paramètres de contrôle par défaut de la boucle de l’alternance (calcul/adaptation).
On active alors le module YACS, on importe le schéma et on l’exécute.