Exemple 2 : préparation automatique d'une série de projets Flux prêts à résoudre

Objectif

L'objectif est d'étudier 3 configurations spécifiques d'un dispositif paramétré.

Description de l'exemple

Le dispositif étudié est une figure géométrique simple (quadrilatère) définie à

l'aide de 6 paramètres : X1, Y1, X2, Y2, X3, Y3.

Ce fichier de commande pourra être utilisé pour créer de différents projets Flux en 2D.

Processus

Le processus comprend les phases suivantes :

Phase Description Contexte
1 Préparation d'un projet Flux contenant la géométrie de base Flux
2 Enregistrement de la séquence de modification de la géométrie avec remaillage dans un fichier de commande Flux
3 Modification du fichier de commande précédent en utilisant le langage PyFlux Editeur de texte
4 Exécution de ce fichier pour tester son bon fonctionnement Flux

Phase 1

Pour construire la figure géométrique de base sur laquelle seront effectuées les modifications, réaliser la procédure suivante :

Etape Action
1 Ouvrir un nouveau projet Flux
2

Construire la géométrie :

  • créer les 6 paramètres géométriques suivants :

    X1 = 20, Y1 = 0, X2 = 0, Y2 = 10, X3 = 20, Y3 = 10

  • créer les 4 points suivants :

    (0, 0) ; (X1, Y1) ; (X2, Y2) ; (X3, Y3) ;

  • créer les 4 lignes pour former un parallélogramme avec ces 4 points
  • construire les faces
3

Mailler le dispositif :

  • modifier la valeur de la Discrétisation Ligne MEDIUM (valeur : 1 mm)
  • affecter la Discrétisation Ligne MEDIUM à l'ensemble des 4 points
  • mailler les faces
4 Enregistrer le projet sous le nom BASE.FLU

Phase 1 : résultat final

Le projet BASE.FLU comprend :

  • 6 paramètres,
  • 4 points (les 3 points sont paramétrés)
  • 4 lignes (segments)
  • 1 face maillée

Phase 2

Pour enregistrer la séquence de modification dans un fichier de commande :

Etape Action
1 Créer un fichier de commande ModifParam.py
2

Réaliser les actions de modification :

  • supprimer le maillage (pour permettre la modification géométrique)
  • modifier la valeur d'un paramètre géométrique
  • mailler les faces
  • enregistrer le projet sous un autre nom
3 Fermer le fichier de commande

Phase 2 : résultat final

Le fichier de commande ModifParam.py contenant la séquence enregistrée se présente de la façon suivante :

Phase 3

Pour modifier le fichier de commande précédent en utilisant la syntaxe PyFlux :

Etape Action
1 Ecrire une fonction en langage PyFlux qui permet la création automatique d'un projet Flux (correspondant à un jeu de paramètres) à partir du projet de base BASE.FLU.
2 Ecrire les appels de la fonction précédente pour créer les 3 cas du projet souhaités
3 Enregistrer le fichier de commande

Phase 3 : interprétation du fichier

Le fichier de commande ModifParam.py contenant la fonction modify() et les appels de cette fonction se présente de la façon suivante :

Elément Fonction
#! Preflu2D 9.33
indication sur le programme exécutable
def modify(VX1,VY1,VX2,VY2,VX3,VY3,case):
définition de la fonction modify() avec 7 paramètres (6 valeurs numériques pour définir les paramètres géométriques X1, Y1, X2, Y2, X3, Y3 et 1 chaîne de caractère pour définir le nom du projet)
deleteMesh()
suppression du maillage
ParameterGeom['X1'].expression= str(VX1)
...

modification du paramètre géométrique

(X1 prend pour valeur VX1 , convertis en chaîne de caractères par la méthode s tr() ,

…)

meshFaces()
maillage des faces
saveProjectAs(case)
enregistrement du projet sous le nom passé par le paramètre case
modify(10,0,0,10,20,10,"Case1")
...

appel de la fonction pour construire le 1 er cas,

Phase 4

Exécuter le fichier de commande.

Phase 4 : résultat final

Après exécution du fichier de commande, l'utilisateur dispose dans son répertoire de travail de 4 projets Flux dont les caractéristiques sont données dans le tableau ci-dessous.

BASE.FLU CASE1.FLU CASE2.FLU CASE3.FLU
P1 : ( 0, 0) P1 : ( 0, 0) P1 : ( 0, 0) P1 : ( 0, 0)
P2 : (20, 0) P2 : (10, 0) P2 : (10, 0) P2 : (10, 0)
P3 : ( 0, 10) P3 : ( 0, 10) P3 : (10, 10) P3 : ( 0, 10)
P4 : (20, 10) P4 : (20, 10) P4 : (20, 10) P4 : (15, 5)