L’hypothèse

Les variables sont décrites dans L’hypothèse.

Méthodes de la classe homard

CreateHypothesis(hypo_name)

Retourne une instance de la classe hypothese

  • hypo_name : le nom de l’hypothèse

GetHypothesis(hypo_name)

Retourne l’instance de la classe hypothese connue par son nom

  • hypo_name : le nom de l’hypothèse

GetAllHypothesesName()

Retourne la liste des noms de toutes les hypothèses créées

GetZone(zone_name)

Retourne l’instance de la classe zone connue par son nom

  • zone_name : le nom de la zone

Méthodes de la classe hypothese

Généralités

GetName()

Retourne le nom de l’hypothèse

GetAdapType()

Retourne le type d’adaptation

  • -1 : uniforme

  • 0 : selon des zones

  • 1 : selon un champ

GetRefinType()

Retourne le type de raffinement

  • 0 : inactif

  • 1 : actif

GetUnRefType()

Retourne le type de déraffinement

  • 0 : inactif

  • 1 : actif

Delete()

Detruit l’hypothèse

Retourne un entier :
  • 0 : destruction réussie

  • autre valeur : problème

Adaptation uniforme

SetUnifRefinUnRef(RefinUnRef)

Définit un mode d’adaptation uniforme à tout le maillage

  • RefinUnRef : entier précisant le type d’adaptation

    • 1 : raffinement

    • -1 : déraffinement

Adaptation selon un champ

Le champ de pilotage de l’adaptation et les seuils

SetField(FieldName)

Attribue un nom de champ de pilotage à l’hypothèse

  • FieldName : le nom du champ de pilotage

GetFieldName()

Retourne le nom du champ de pilotage

SetUseField(use_field)

Attribue un mode d’usage du champ de pilotage

  • use_field : entier précisant l’usage du champ

    • 0 : valeur par élément (défaut)

    • 1 : saut entre un élément et ses voisins

SetRefinThr(type_thres, threshold)

Définit les seuils en raffinement

  • type_thres : entier précisant le type de seuil en raffinement

    • 1 : valeur absolue

    • 2 : valeur relative en %

    • 3 : fraction des mailles en %

    • 4 : moyenne + n fois l’écart-type

  • threshold : valeur numérique entrant dans la définition du seuil

GetRefinThrType()

Retourne le type de seuil de raffinement

SetUnRefThr(type_thres, threshold)

Définit les seuils en déraffinement

  • type_thres : entier précisant le type de seuil en déraffinement

    • 1 : valeur absolue

    • 2 : valeur relative en %

    • 3 : fraction des mailles en %

    • 4 : moyenne - n fois l’écart-type

  • threshold : valeur du seuil

GetUnRefThrType()

Retourne le type de seuil de déraffinement

Les composantes du champ de pilotage

AddComp(comp_name)

Ajoute une composante du champ de pilotage à considérer

  • comp_name : nom d’une composante à prendre en compte

Remarque : si cette méthode n’est pas appelée, par défaut toutes les composantes seront retenues.

SetUseComp(use_comp)

Définit l’usage des composantes

  • use_comp : entier précisant l’usage des composantes

    • 0 : norme L2 (défaut)

    • 1 : norme infinie

    • 2 : valeur relative, si une seule composante

GetComps()

Retourne la liste des composantes utilisées

SupprComp(comp_name)

Supprime une composante du champ à considérer

  • comp_name : nom de la composante à supprimer

SupprComps()

Supprime toutes les composantes du champ à considérer

Adaptation selon des zones

AddZone(zone_name, type_use)

  • zone_name : le nom de la zone à ajouter

  • type_use : entier précisant l’usage de la zone

    • 1 : raffinement

    • -1 : déraffinement

GetZones()

Retourne la liste des zones utilisées avec leur usage.

Attention : l’usage est stocké sous forme de chaîne de caractères et non pas d’entier dans la liste.

Exemple : [“Zone_A”, “1”, “Zone_B”, “1”, “Zone_C”, “1”]

SupprZone(zone_name)

Supprime une zone de l’hypothèse

  • zone_name : nom de la zone à supprimer

SupprZones()

Supprime toutes les zones de l’hypothèse

Le filtrage par les groupes

AddGroup(group_name)

Ajoute un groupe au filtrage

  • group_name : nom du groupe à prendre en compte

GetGroups()

Retourne la liste des groupes utilisés pour le filtrage

Les champs à interpoler

SetTypeFieldInterp(typefieldinterp)

  • typefieldinterp : entier précisant si des champs sont a interpoler

    • 0 : aucun champ n’est à interpoler (défaut)

    • 1 : tous les champs sont interpolés

    • 2 : certains champs sont interpolés ; implicitement affecté après usage de AddFieldInterp ou AddFieldInterpType

GetTypeFieldInterp()

Retourne l’entier précisant si des champs sont à interpoler

AddFieldInterp(FieldName)

  • FieldName : le nom du champ à interpoler

Le mode d’interpolation sera choisi automatiquement par HOMARD ; cela correspond au mode 0 de AddFieldInterpType

AddFieldInterpType(FieldName, type_interp)

  • FieldName : le nom du champ à interpoler

  • type_interp : entier précisant le type d’interpolation du champ

Pour un champ aux noeuds :

  • 0 : le champ sera interpolé en degré 1 ou 2 selon son support.

  • 1 : interpolation en degré 1

  • 2 : interpolation en degré 2

  • 3 : interpolation iso-P2

Pour un champ aux éléments :

  • 0 : le champ sera interpolé en le considérant comme une variable intensive.

  • 1 : le champ sera interpolé en le considérant comme une variable extensive.

GetFieldInterps()

Retourne la liste des champs à interoler avec leur usage.

Attention : l’usage est stocké sous forme de chaîne de caractères et non pas d’entier dans la liste.

Exemple : [“DEPL”, “0”, “Masse”, “1”, “Densite”, “0”]

SupprFieldInterp(FieldName)

Supprime un champ à interpoler de l’hypothèse

  • FieldName : nom du champ à supprimer

SupprFieldInterps()

Supprime tous les champs à interpoler de l’hypothèse

Note

Le fichier et les instants où sont pris les champs sont définis dans l’itération ; voir L’itération.

Les options avancées

SetNivMax(nivmax)

Définit le niveau maximal de raffinement

  • nivmax : niveau de raffinement à ne pas dépasser

GetNivMax()

Retourne le niveau maximal de raffinement

SetDiamMin(diammin)

Définit le diamètre minimal des futures mailles

  • diammin : diamètre minimal voulu pour une maille

GetDiamMin()

Retourne le diamètre minimal voulu

SetAdapInit(option)

Définit le traitement à appliquer aux mailles où le champ de pilotage de l’adaptation n’est pas défini

  • option : entier précisant le choix retenu

    • 0 : aucun effet (défaut)

    • 1 : les mailles sans indicateurs sont raffinées

    • -1 : les mailles sans indicateurs sont déraffinées

GetAdapInit()

Retourne le type de traitement à appliquer aux mailles où le champ de pilotage de l’adaptation n’est pas défini

SetExtraOutput(option)

Précise quelles sorties supplémentaires sur les mailles on veut récupérer dans le fichier MED de sortie. C’est un entier multiple ou non de 2, 3, 5, 7, 11.

  • option : entier précisant le choix retenu

    • 1 : aucun effet (défaut)

    • 2x : le niveau de raffinement de chaque maille

    • 3x : la qualité de chaque maille

    • 5x : le diamètre de chaque maille

    • 7x : les fratries des mailles

    • 11x : les voisins des mailles recollées

GetExtraOutput()

Retourne le choix retenu pour la récupération des sorties supplémentaires

Exemple

La création de l’objet hypo_1 se fait ainsi :

hypo_1 = homard.CreateHypothesis("HypoField")
hypo_1.SetField("INDICATEUR")
hypo_1.AddComp("INDX")
hypo_1.AddComp("INDZ")
hypo_1.SetRefinThr(1, 80.)
hypo_1.AddFieldInterp("DEPL")
hypo_1.AddFieldInterpType("MASSE", 1)

Saisie graphique correspondante

Consulter L’hypothèse

Avertissement

En mode graphique, si on édite une hypothèse et que l’on modifie une de ses caractéristiques, par exemple le seuil de raffinement, toutes les itérations qui ont été calculées précédemment avec cette hypothèse sont invalidées. En mode python, cela n’est plus vrai : les itérations restent telles quelles.