HOMARD : Pilotage

Version anglaise

 
 

Balle rouge Comment faire ?

HOMARD est disponible sur de nombreuses plate-formes. Par exemple, des PC sous LINUX, des stations de travail SUN, Compaq, etc. Il peut tout à fait être utilisé avec un autre logiciel de calcul que Code_Aster®, moyennant une gestion du couplage. Pour réaliser l'adaptation d'un maillage, il faut fournir les informations suivantes à HOMARD :


La première information est une interaction avec le logiciel de calcul. La transmission du maillage, de l'indicateur d'erreur et des champs à mettre à jour se fait par un fichier au format MED, développé dans le cadre du projet SALOME. Les séries de version V5.x et V6.x de HOMARD utilisent la version 2.1 de MED ; la série de version V7.x utilise la version 2.2 de MED.
Les parentés sont stockées dans un fichier produit automatiquement par HOMARD. En entrée d'une adaptation, on doit fournir le fichier produit à la fin de l'adaptation précédente. Au tout premier passage, on ne fournit rien.
La dernière information sur les données de pilotage est transmise à HOMARD via un fichier texte. Ce fichier texte peut être écrit automatiquement par une procédure de couplage. C'est ce qui se passe avec Code_Aster.


 

Balle rouge Les données de pilotage

Balle jaune Les conventions

Pour utiliser HOMARD, on doit fournir un jeu de données qui contient la définition de tous les fichiers qui entrent en jeu ainsi que les options de pilotage.
Les conventions qui régissent ce fichier sont les suivantes :

  • Le fichier s'intitule "HOMARD.Configuration" ; il est à placer dans le répertoire d'exécution.
  • Une ligne comporte au plus 200 caractères.
  • Une ligne correspond à une information.
  • Une ligne blanche est une ligne ignorée .
  • Une ligne commençant par un caractère # est une ligne ignorée ; on peut écrire des commentaires à la suite du #.
  • L'ordre des lignes n'a aucune importance ; si une même information apparaît plusieurs fois, seule la dernière sera retenue.
  • Une ligne est formée d'un mot-clé, suivi d'une ou deux données.
  • Le mot-clé et les données sont séparés par au moins un caractère blanc ; les autres caractères blancs sont ignorés.
  • Les variables d'environnement, comme $HOME, sont interprétées à l'exécution de HOMARD.


  • Balle jaune Exemple

    #
    # Le maillage de calcul
    #
    NumeIter   1
    CCNoMN__   M_1
    CCMaiN__   $HOME/Etude_rotor/cas_1/maill.1.med
    CCNoMNP1   M_2
    CCMaiNP1   $HOME/Etude_rotor/cas_1/maill.2.med
    #
    # Options de l'adaptation
    #
    CCNoChaI ERREST RESU_1__ERRE_ELEM_NORE__________
    CCNumOrI 10
    CCNumPTI 10
    CCIndica   $HOME/Etude_rotor/cas_1/maill.1.med
    TypeRaff   libre
    SeuilHPE   3.
    TypeDera   libre
    SeuilBPE   25.
    #
    # Les champs à mettre à jour
    #
    CCChaNom 1 RESU_1__TEMP____________________
    CCChaNuO 1 9
    CCChaPdT 1 9
    CCChaNom 2 RESU_1__DEPL____________________
    CCChaNuO 2 10
    CCChaPdT 2 10
    CCSolN__   $HOME/Etude_rotor/cas_1/maill.1.med
    CCSolNP1   $HOME/Etude_rotor/cas_1/maill.2.med
    #
    # Les fichiers HOMARD temporaires
    #
    HOMaiN__   Mai1   /tmp/maill.1.hom
    HOMaiNP1   Mai2   /tmp/maill.2.hom
    #
    # La sortie standard
    #
    ListeStd   $HOME/Etude_rotor/cas_1/Liste.1.vers.2
    

    Quelques commentaires sur ce jeu de commandes.
    Le point de départ est un maillage obtenu après 1 itération d'adaptation. Son nom est M_1 et il est présent dans le fichier $HOME/Etude_rotor/cas_1/maill.1.med. Après adaptation, le nouveau maillage aura pour nom M_2 et sera écrit dans le fichier $HOME/Etude_rotor/cas_1/maill.2.med.
    L'adaptation se fera moyennant la composante ERREST du champ RESU_1__ERRE_ELEM_NORE__________, aux numéro d'ordre et pas de temps 10. Ce champ d'indicateur d'erreur est présent dans le fichier $HOME/Etude_rotor/cas_1/maill.1.med. Le raffinement est demandé sur les 3% d'éléments ayant les plus fortes erreurs. Le dérafinement est demandé pour les 25% d'éléments ayant les erreurs les plus faibles.
    Le champ RESU_1__TEMP____________________, aux numéro d'ordre et de pas de temps 9, et le champ RESU_1__DEPL____________________, aux numéro d'ordre et de pas de temps 10, seront mis à jour. Ils sont lus dans le fichier $HOME/Etude_rotor/cas_1/maill.1.med, puis écrits dans le fichier $HOME/Etude_rotor/cas_1/maill.2.med.
    Les fichiers temporaires /tmp/maill.1.hom et /tmp/maill.2.hom contiennent les structure de données HOMARD correspondants aux parentés des maillages des itérations 1 et 2. Ces parentés sont connues sous les noms Mai1 et Mai2.
    Enfin, les messages émis par HOMARD seront écrits dans le fichier $HOME/Etude_rotor/cas_1/Liste.1.vers.2.

    Balle jaune Liste des mots-clés

    Voici la liste des mots-clés possibles. Quand une valeur par défaut existe, elle est mentionnée en bleu.

    Les maillages en entrée et en sortie :

    NumeIter Numéro d'itération du maillage d'entrée.
    CCMaiN__ Nom du fichier MED contenant le maillage à adapter.
    CCNoMN__ Nom du maillage à adapter dans le fichier.
    CCMaiNP1 Nom du fichier MED qui contiendra le nouveau maillage.
    CCNoMNP1 Nom du maillage adapté.


    L'indicateur d'erreur :

    CCIndica Nom du fichier MED contenant l'indicateur d'erreur.
    CCNoChaI Nom de la composante à utiliser suivi du nom du champ de l'indicateur d'erreur dans le fichier.
    CCNumOrI Numéro d'ordre voulu. Par défaut, HOMARD suppose que le champ a été écrit sans numéro d'ordre.
    CCNumPTI Numéro de pas de temps voulu. Par défaut, HOMARD suppose que le champ a été écrit sans numéro de pas de temps.


    Les champs à mettre à jour :

    CCSolN__ Nom du fichier MED les champs à mettre à jour.
    CCSolNP1 Nom du fichier MED contenant les nouveaux champs.

    Puis pour chaque champ, on trouve le triplet :

    CCChaNom Rang du champ Nom du champ à mettre à jour.
    CCChaNuO Rang du champ Numéro d'ordre du champ à mettre à jour.
    CCChaPdT Rang du champ Numéro de pas de temps du champ à mettre à jour.

    Le rang du champ est un entier compris entre 1 et le nombre total de champs à mettre à jour. Les lignes peuvent être mises dans n'importe quel ordre dans le fichier de configuration à condition que cette numérotation soit sans trou.


    Stratégie d'adaptation. On a le choix entre plusieurs types de raffinement et déraffinement :

    TypeRaff libre Raffinement piloté par un seuil d'erreur.
    non_conforme Raffinement non-conforme avec 1 nœud pendant uniquement.
    non_conforme_indicateur Non-conforme fidèle à l'indicateur.
    uniforme Tous les éléments sont découpés.
    non Pas de raffinement.
    TypeDera libre Déraffinement piloté par un seuil d'erreur.
    uniforme Tous les éléments sont regroupés.
    non Pas de déraffinement.


    Options particulières au raffinement :

    NiveauMa Niveau maximum de raffinement à ne pas dépasser.
    SeuilHau Seuil d'erreur absolu. Tous les éléments à erreur plus forte sont découpés.
    SeuilHRe Seuil d'erreur relatif. Idem, mais le seuil est une fraction de l'écart d'erreur maxi/mini. Le seuil est donné en %, entre 0 et 100.
    SeuilHPE Fraction d'éléments à la plus forte erreur. Le seuil est donné en %, entre 0 et 100.


    Options particulières au déraffinement :

    NiveauMi Niveau minimum de déraffinement à en-dessous duquel on ne doit pas descendre.
    SeuilBas Seuil d'erreur absolu. Tous les éléments à erreur plus faible sont regroupés.
    SeuilBRe Seuil d'erreur relatif. Idem, mais le seuil est une fraction de l'écart d'erreur maxi/mini. Le seuil est donné en %, entre 0 et 100.
    SeuilBPE Fraction d'éléments à la plus faible erreur. Le seuil est donné en %, entre 0 et 100.


    Options complémentaires :

    ListeStd Nom du fichier pour la liste standard de sortie.


    Suivi de la frontière (adaptation en 2D uniquement) :

    Le suivi d'une frontière se fait en rapprochant les éléments qui appartiennent à des groupes de même nom entre le maillage de calcul et le maillage de cette frontière. Si aucune information complémentaire n'est donnée, tous les groupes d'éléments contenus dans le maillage de la frontière seront examinés. On peut restreindre ce suivi à une liste de groupes, en les désignant par autant de lignes que de groupes. C'est la seule exception à la règle qui veut que seule la dernière ligne est prise en compte :

    SuivFron non Pas de suivi de frontière.
    oui Une frontière est suivie.
    CCFronti Nom du fichier MED contenant le maillage de la frontière.
    CCNoMFro Nom du maillage de la frontière.
    CCGroFro Nom du groupe à suivre


    On trouve ensuite des options diverses, toutes optionnelles :

    Langue Francais Les messages sont en français.
    Anglais Les messages sont en ... anglais !
    TypeBila 0 Aucun bilan sur le maillage. Sinon, on donne un entier produit des nombres suivants :
    2 Nombre d'entités au sens HOMARD.
    3 Interpénétration des éléments. Attention, ce peut être assez cher en 3D !
    5 Qualité des éléments.
    7 Nombre d'entités au sens du logiciel de calcul couplé.
    11 Analyse de la connexité du maillage.
    13 Tailles des sous-domaines.
    PPBasFic Un préfixe pour les noms de fichiers auxiliaires produits par HOMARD et récapitulant des informations sur le maillage. Si ce mot-clé est absent, le sinformations sont écrites dans la sortie standard.
    ModeHOMA 1 Utilisation de HOMARD pour adapter un maillage.
    2 Utilisation de HOMARD pour obtenir des informations sur un maillage.
    TypeElem tous Tous les types d'éléments découpables par HOMARD sont acceptés : segments, triangles, quadrangles, tétraèdres.
    mixte L'adaptation porte sur les zones possibles, mais des zones en hexaèdres ou pentaèdres peuvent transiter, à condition de ne pas être contaminées par le raffinement.
    simplexe Seuls les simplexes (segments, triangles, tétraèdres) sont permis.
    CCAssoci med Le logiciel de calcul associé a produit ses maillages au format MED.
    HOMARD On part de maillages au format HOMARD.


    [ Haut de la page | Comment faire ? | Les données de pilotage | Règles | Retour ]

    © EDF Electricité de France 1996, 1997, 2001, 2004. Tous droits réservés.