DÉBUTER AVEC CAST3M CALCULS THERMO MÉCANIQUES DERNIÈRE MODIFICATION : 10 MAI 20

DÉBUTER AVEC CAST3M CALCULS THERMO MÉCANIQUES DERNIÈRE MODIFICATION : 10 MAI 2017 François DI PAOLA, Caroline GUERIN, Clément BERTHINIER, Romili PAREDES SOMMAIRE Présentation de Cast3M Le langage Gibiane Travaux dirigés comportement thermo-mécanique d'une plaque trouée Compléments Description des objets Gibiane PAGE 2 PRÉSENTATION DE CAST3M UN PEU D'HISTOIRE 1981 Système CEASEMT, plusieurs codes spécialisés : maillage : COCO calcul : PASTEL, TRICO, BILBO, TEDEL, TETHYS, INCA post traitement : VISU, TEMPS, ESPACE Démarrage de GIBI (maillage) 1983 Lancement de Castem 2000 basé sur GIBI, étendu aux calculs mécaniques calculs mécaniques, analyse modale (Oscar) post-traitement intégré 1986 Procédures, puis arrivée des fluides et autres physiques Années 90 Développement d'outils métier (Toutatis, Esus, …) 2000 Castem 2000 Cast3M Années 2000 Plateforme de développement d'outils métier (Pléiades, Alliance, …) Nouveaux outils métier (Brasero, Gerboise, Rotor, …) PAGE 4 CAST3M, C'EST QUOI ? Logiciel de calcul par éléments finis en mécanique des structures et des fluides Résolution d'équations aux dérivées partielles par la méthode des éléments finis Basé sur un langage de commande : Gibiane (orienté objet) De nombreuses fonctions élémentaires (~ 1400) Procédure PASAPAS : solveur déterministe implicite (il en existe beaucoup d'autres …) Système complet : solveur, pré-processeur, post-processeur, visualisation PAGE 5 DE NOMBREUX DOMAINES D'APPLICATION Mécanique des structures (historique) Quasi-statique (non linéarités matériau, géométrie, conditions limites) Contact/frottement Flambage Dynamique (temporelle, modale, interaction fluide/structure) Rupture (XFEM, propagation dynamique, zones cohésives) Thermique Conduction, convection, rayonnement, changement de phase Fluides Magnétostatique Diffusion multi espèces (loi de Fick) Couplage thermo-hygro-mécanique PAGE 6 COMMENT LANCER CAST3M EN LIGNE DE COMMANDE ? Écrire un script Gibiane dans un fichier texte toto.dgibi et l'enregistrer dans un répertoire de travail Ouvrir une console / invite de commande Sous Linux : nombreux émulateurs : xterm, terminal, konsole, … Sous Mac OS X : Applications / Utilitaires / Terminal ou X11 Sous Windows : Menu Démarrer / Tous les programmes / Accessoires / Invite de commande Se placer dans le répertoire de travail Quelques commandes Linux utiles : pwd afficher le chemin d'arborescence où l'on se situe ls lister le contenu d'un répertoire cd ici/la_bas changer de répertoire Lancer Cast3M En mode interactif : castem16 En mode script : castem16 toto.dgibi PAGE 7 REMARQUES GENERALES (1/2) Où télécharger Cast3M ? http://www-cast3M.cea.fr/index.php?page=dlcastem Pour quelles plateformes Cast3M est-il disponible ? Windows (32 et 64 bits) Linux (32 et 64 bits) Mac OS X (64 bits) Quelles versions de Cast3M sont disponibles ? Version Utilisateur : on ne peut pas modifier les sources Version Développeur : on peut modifier les sources ;-) Y-a-t-il une interface graphique avec Cast3M ? Non, Cast3M fonctionne uniquement en ligne de commande. Les instructions en langage Gibiane sont écrites dans un fichier texte d’extension .dgibi Cast3M est-il gratuit ? Oui, s’il est utilisé pour la recherche et l’enseignement Non, s’il est utilisé de manière industrielle PAGE 8 REMARQUES GENERALES (2/2) Cast3M est-il un logiciel libre ? Non, l’utilisateur ne dispose en aucun cas de toutes les sources, mais dispose d’une grande liberté pour l’adapter à ses besoins : Accès au code source (langage Esope, extension du Fortran 77) L'utilisateur peut modifier/corriger/ajouter des fonctions : 1) compilation Esope (commande compilcast16 toto.eso) 2) édition des liens (commande essaicast16) création d'une « version locale » de Cast3M (qui se lance comme d'habitude: castem16) Développement communautaire Tout le monde peut proposer ses développements/corrections pour les intégrer dans la version standard de Cast3M Peut-on faire remonter une anomalie rencontrée dans Cast3M ? Oui (vivement conseillé), contacter le support Cast3M, via le site web http://www-cast3m.cea.fr/index.php?page=mailsupport PAGE 9 LE SITE WEB CAST3M Le site web Cast3M : "the place to be" http://www-cast3m.cea.fr Présentation de Cast3M Formation Documentation (notices, manuels, sources, exemples) Fiches d'anomalie et de développement Téléchargements Contact : support Cast3M Communauté : liste de diffusion, club Cast3M PAGE 10 LE LANGAGE GIBIANE LE LANGAGE GIBIANE : PRÉSENTATION Langage destiné au calcul EF mais aussi un vrai langage de programmation Objets classiques (entiers, flottants, chaines, logiques, tables …) Instructions conditionnelles Boucles itératives Sous structuration Récursivité … Langage interprété Le programme peut être exécuté dès que le script est modifié Le programme peut être exécuté en mode interactif Langage orienté objet Tout est traité comme un objet Pas besoin de déclarer les variables ou de spécifier leur type Mots clefs en français Programmation facile et rapide PAGE 12 GIBIANE : LA SYNTAXE Ligne(s) de commande 72 caractères max par ligne 504 caractères max par commande (soit 7 lignes pleines) Se termine par un point virgule ; Le symbole d'affectation est le signe égal = Insensibilité à la casse pour tous les noms d'objets TOTO = 3.14 ; A = 2. * tOTo ; ici la variable A vaut bien 6.28 sauf les chaines de caractères 'blabla' ≠ 'BLABLA' délimitées par des simples quotes mot1 = 'Salut a vous' ; Fin du fichier de données par la commande FIN ; arrêt de Cast3M par une ligne vide ou un EOF mode interactif Ligne de commentaire : commence par * Lignes vides autorisées partout PAGE 13 GIBIANE : LA SYNTAXE Pas de priorité des opérations (lecture de gauche à droite) 1+2*3 = 9 penser à utiliser des parenthèses 1+(2*3) = 7 Quelques interdictions Pas de tabulations messages d'erreur incompréhensibles Pas de double quotes " Quelques recommandations Pas de caractères spéciaux (é, ç, ~, et autres œ) Respecter une indentation (comme tout bon programmeur !) Régler son éditeur de texte coloration syntaxique, remplacement des tabulations par des espaces, marquage de la colonne 72 … Quelques pièges classiques Point virgule à la 73ème colonne et la lecture de l'instruction continue ! Mettre une apostrophe dans une chaine de caractère marque la fin de la chaine PAGE 14 GIBIANE : OBJETS Définition Désigne toute structure de données/résultats munie d'un type (éventuellement d’un sous-type) et d'un nom Nom des objets Donné par l’utilisateur Limité à 8 caractères ( a…z A…Z 0…9 _ ) Pièges Plus de 8 caractères : les surnuméraires sont ignorés Utilisation du tiret – interdit ! Caractères accentués é, è interdit ! Type des objets Il existe plus de 40 types d'objets différents Une liste des objets les plus utilisés est donnée à la fin de cette présentation (lien) PAGE 15 GIBIANE : OBJETS Exemples (non exhaustif) OBJ1 = 3 ; type ENTIER OBJ2 = 3.14 ; type FLOTTANT OBJ3 = 'Comment ca va ?' ; type MOT OBJ4 = VRAI ; type LOGIQUE poin1 = POIN 0. 0. ; type POINT poin2 = POIN 1. 3. ; type POINT OBJ5 = DROI 8 poin1 poin2 ; type MAILLAGE LIST OBJ5 ; MAILLAGE 3520406 : 8 élément(S) de type SEG2 0 sous-référence(s) 1ère ligne numéro élément : 2ème couleur : 3ème... noeud(s) 1 2 3 4 5 6 7 8 DEFA DEFA DEFA DEFA DEFA DEFA DEFA DEFA 1 3 4 5 6 7 8 9 3 4 5 6 7 8 9 2 PAGE 16 GIBIANE : OPÉRATEURS Définition Désigne tout traitement muni d'un nom (instruction Gibiane) qui construit un ou plusieurs objets nouveaux à partir d'un ou plusieurs objets existants Noms des opérateurs Imposé à l’utilisateur Ce sont des instructions Gibiane Insensibles à la casse Cast3M ne lit que les 4 premiers caractères (DROITE = DROI) Quelques exceptions : forme abrégée DROIT D (ou d) CERCLE C (ou c) PAGE 17 GIBIANE : OPÉRATEURS Exemples d'appel à un opérateur (invocation) Cas courants (1 objet à gauche du =) obj1 = OPER obj2 ; obj3 = OPER obj4 obj5 ; obj6 = obj7 OPER obj8 obj9 ; Cas exceptionnels (plusieurs objets à gauche du =) obj1 obj2 obj3 = OPER obj4 obj5 ; Opérateur "sans nom" : création de POINTS en dimension 2 Point1 = 0. 0. ; en dimension 3 Point1 = 0. 0. 0. ; PAGE 18 GIBIANE : OPÉRATEURS L'ordre des opérandes est indifférent si les opérandes sont de type différents (sauf exception dans la documentation) est important si plusieurs opérandes du même type Surcharge d'un objet Toujours possible, l'ancien objet disparait A = 'Salut' ; A est du type MOT B = 28 ; C = 3 ; A = B**C ; A est du type ENTIER et vaut 21952 Pièges Nom d'objet = nom d'opérateur  appel à l'opérateur impossible, sauf si on l'appelle en capitales entre quotes A = 'OPER' B C ; Objet nommé c, C, d ou D ! PAGE 19 GIBIANE : DIRECTIVES Définition Commande sans symbole d'affectation = Ne crée pas de nouvel objet Exemples OPTI 'DIME' 3 'ELEM' 'CUB8' ; OPTI 'TITR' 'Maillage de la piece' ; DEPL mail1 'PLUS' (28. -0.3 20.03) ; La directive OPTI est généralement la première instruction utilisée Elle permet de fixer les options générales de Cast3M. Exemples : dimension de l'espace, éléments de maillage utilisés, taille de maille, nom du fichier de sauvegarde, calcul axisymétrique, et bien d'autres … analogue à la fixation d'une variable d'environnement d'un système d'exploitation PAGE 20 GIBIANE : PROCÉDURES Définition Ensemble nommé de commandes Gibiane muni d'une liste d'opérandes d'entrée et de sortie Analogue à une subroutine Fortran ou à une fonction C Nom des procédures Comme uploads/Sante/ debuter-avec-cast3m 1 .pdf

  • 26
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Oct 24, 2022
  • Catégorie Health / Santé
  • Langue French
  • Taille du fichier 4.8502MB