Introduction à la mécanique numérique avec

Download Report

Transcript Introduction à la mécanique numérique avec

Introduction à la mécanique
numérique avec Cast3m
O. Carpentier
Master1 GC
Université d'Artois
Version
Windows
Notepad++
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
TP Mécanique Numérique - Méthodes des Éléments Finis
TP0 : Démarrage
But : Ouvrir notepad++ et lancer un programme Cast3m sous windows
A savoir :
1. Tous les logiciels utilisés dans ce cours peuvent être utilisés gratuitement, sans restriction sur leurs
capacités à des fins de recherches, projets ou enseignements.
2. Tous les logiciels utilisés dans ce cours sont mutiplateformes (Linux, Mac, Windows).
3. Cast3m est un moteur de calcul aux éléments finis ne possédant pas d’interface graphique.
4. Les résultats peuvent être exportés au format "inp" et post-traités avec le logiciel Paraview.
5. L’exécution de Cast3m se fait dans une fenêtre DOS dans laquelle vous aurez un accès afin de débugger
et/ou poursuivre l’exécution du programme.
6. Le logiciel pour écrire le programme est un bloc note amélioré : notepad++.
7. Vos données devront toujours être sauvegardées sur votre répertoire réseau.
8. On sauvegarder un fichier Cast3m au format "dgibi" (par exemple test.dgibi)
9. Pas plus de 10 minutes en deux sauvegardes du programme !
Protocole : On supposera que votre nom est Jean Martin, votre login est donc jeamartin. Votre mot de
passe est votre numéro INE, par exemple : 0123456789L.
1. Allumer le PC. Se logger avec comme identifiant jeamartin, et mot de passe 0123456789L sur le domaine
DOMETU
2. Ouvrir le logiciel notepad++
3. Configuration de coloration syntaxique : Il existe deux fichiers de configuration pour Cast3m, un avec
un fond blanc et un avec un fond bleu. Pour le repos des yeux, je conseille très fortement l’utilisation
d’un fond bleu.
(a) Aller dans le Menu ⇒ Langage ⇒ Cast3m_ruby (Cette option permet le réglage de la coloration
des mots clés).
(b) Aller dans le Menu ⇒ Paramétrage ⇒ Configurateur de coloration syntaxique....
Dans le menu déroulant Thème : , choisir le thème Ruby Blue.
Si vous désirez un fond blanc, il faut choisir le mode Cast3m dans le menu Affichage et le thème
Default dans le menu Paramétrage.
4. Ensuite, on fixe une marge à droite à 72 caractères. Allez dans Menu ⇒ Paramétrage ⇒ Préférences...
⇒ Zone d’édition.
Cocher la case Afficher la marge de droite et régler le nombre de colonne à la valeur de 72. Les
lignes de programmation ne devront JAMAIS dépasser cette limite.
5. ✄Une fois✄ un programme, ou morceau de programme écrit, on lance Cast3m avec les touches
✂Ctrl ✁+✂F5 ✁, ou en faisant Menu ⇒ Exécution ⇒ Exe Cast3m.
6. On sort du programme en tapant FIN ; dans la fenêtre DOS.
1
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
A après avoir écrit du code, comment exécuter mon programme ?
Faisons un test avec le bout de programme suivant dans notepad++ :
*** Début du programme
TITR ’TEST’ ;
MESS "HELLO WOLRD!" ;
On notera que dans les cadres de programmation O est la lettre "o" alors que 0 est le chiffre zéro.
Important, un nom de fichier ne doit contenir ni espace, ni accent ou signe de ponctuation ! ! !
Pour plus de lisibilité des noms de fichiers, on peut remplacer les espaces par "-" ou "_ ". (par exemple
mon-programme.dgibi)
1. Sauvegarder votre programme sous le nom test.dgibi dans votre répertoire personnel (DisquePerso/Travail/...)
sur le réseau.
2. Vérifier que votre fichier est bien présent sur le réseau une fois enregistré (via l’explorateur)
✄
✄
3. Lancer Cast3m avec la commande ✂Ctrl ✁+✂F5 ✁
4. Vérifier que vous avez bien le message "HELLO WOLRD !" qui s’affiche.
5. Sortez de Cast3m avec la commande FIN ;
6. Pour plus de lisibilité les morceaux de programme seront souvent écrit en majuscule dans ce polycopié.
Cependant Cast3m ne fait pas la différence : FIN ; ou fin ; effectueront exactement la même chose.
7. Tout s’est bien passé ?
OUI : Alors continuez le tutoriel et exécutez les programmes régulièrement pour vérifier s’il n’y a pas
d’erreur dans le code. Sauvegarder et recommencer à partir de l’étape 4.
NON : Alors, il y a soit :
• une erreur dans le nom du fichier ou de l’extension
⇒ Sauvegarder avec un nom de fichier correct
• vous n’avez pas sauvegardé le fichier au bon endroit
⇒ Sauvegarder dans le bon répertoire
• Il y a un message d’erreur de Cast3m
⇒ Votre code est erroné, vérifier le programme (cf p.10 du polycopié sur les règles de programmation)
Règles à observer après avoir exécuter un programme sous Cast3m
1. Lors de l’affichage d’un dessin (maillage, résultat), le programme se met en pause. On quitte la pause
en appuyant sur "FIN TRACE".
2. Dans vos programmes, la dernière ligne de code est la commande "FIN ;".
3. Si le programme plante avant la dernière ligne de code, ne pas oublier de taper FIN ; dans la fenêtre
d’exécution de Cast3m (fenêtre DOS) pour pouvoir sortir du programme et utiliser à nouveau Cast3m.
2
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
TP1 : Géométrie et maillage
But : Créer des géométrie en 2D et faire le maillage de la structure
Protocole :
1. Se logger sous windows
2. Ouvrir l’éditeur notepad++ et enregistrer le fichier avec une extension *.dgibi
3. Passer la coloration syntaxique sous le format Cast3m_ruby (ou Cast3m)
4. Enregistrer le programme et commencer à rédiger
(a) Préparer l’organigramme géométrique du dessin sur papier
(b) Écrire l’en-tête du programme
(c) Entrer les paramètres du dessin
i. Variables géométriques
ii. Variables de densité de maillage
(d) Dessiner la pièce
i. Définir les points
ii. Définir les lignes
iii. Définir les contours
iv. Définir les surfaces
v. Faire le maillage du domaine
5. Vérifier le programme
6. Enregistrer le programme
7. Exécuter le programme (revenir à l’étape 4 si le programme ne donne pas satisfaction)
TP1a :
Tutoriel, dessin et maillage d’un rectangle
Règles de conception :
Lors du dessin d’une pièce, la construction se fait de manière séquentielle et hiérarchique. En 2D, un élément
géométrique est, un point, un ligne, un arc, un contour ou une surface. On adoptera les symboles suivants :
P : Point, L : Ligne, A : Arc, C : Contour, S : Surface, ∈ appartient à, ∪ est collé à, ⊂ est inclus dans (∈ et
⊘, les éléments géométriques ne se touche pas). Exemples :
3
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
Organigramme de conception d’une pièce
1. On définit d’abord les variables de notre structures (longueurs, largeurs, rayon, ...).
2. On définit la densité du maillage (taille moyen des éléments découpant la structure).
3. On construit d’abord les point à partir de leurs coordonnées
4. On construit des lignes ou des arc de cercles à partir des points
5. On construit des contours à partir des lignes et des cercles
(a) Les contours sont formés d’éléments géométriques qui se suivent
(b) Les contours peuvent contenir à la fois des lignes et des arcs
(c) Les contours ne sont pas forcément fermés
(d) On peut assembler plusieurs contours
6. Si les contours sont fermés on peut :
(a) Construire directement des surfaces pleines
(b) Assembler différents contours ne se touchant pas pour "creuser" une pièce
7. La surface totale est l’assemblage de toutes les surfaces.
Exemples de contours transformés en surface maillées :
Plus le maillage est complexe plus les sources d’erreurs sont fréquentes. Il convient de tracé le contour de
sa structure avant de faire le maillage pour vérifier que :
1. Tous les contours à transformer en surface sont fermés
2. Il n’y a pas de doublon d’éléments géométriques
3. Les géométries ne se chevauchent pas
4. Les coordonnées des points ont été bien définies
4
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
Programmation : Tutoriel pour la création d’une surface maillée.
On se propose de mailler un rectangle (L=2, H=1), coordonnées du coin en bas à gauche (0 ;0), densité
de maillage égale à 0.1.
Code Cast3m (se référer à partir de la p.10 du poly pour la signification des lignes d’en-tête) :
*** Début du programme - TP1A
TITR ’TP1A’ ;
OPTI DIME 2 ELEM TRI3 MODE PLAN ;
*** Définition des paramètres
L = 2. ;
H = 1. ;
DE = 0.1 ;
*** Définition de la densité de maillage
DENS DE ;
*** Définition des points
P1 = 0. 0. ;
P2 = 0. H ;
P3 = L H ;
P4 = L 0. ;
*** Définition des lignes
L1 = DROI P1 P2 ;
L2 = DROI P2 P3 ;
L3 = DROI P3 P4 ;
L4 = DROI P4 P1 ;
*** Définition du contour
C1 = L1 ET L2 ET L3 ET l4 ;
*** Tracé du contour avec les noms de éléments
*** Pour continuer le programme cliquer sur ’FIN TRACE’ en haut à gauche
TRAC QUAL C1 ;
*** Définition de la surface
S1 = SURF C1 ;
*** Tracé de la surface
TRAC S1 ;
*** Fin du programme
FIN ;
Si vous avez oubliez comment lancer le programme, rendez-vous page 2 !
5
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
Si vous avez bien travaillé vous devez obtenir les deux graphiques suivants (Le premier apparait, puis faire
cliquer sur FIN TRACE pour voir le second) :
A chaque nouveau TP, faire un nouveau programme ! ! !
Dans les TP qui suivent, on reprend les éléments du TP1A comme données de base.
TP1b : Créer un maillage avec des quadrangles
L’option qui permet de choisir la nature des éléments est expliquée à la fin du poly.
TP1c : Créer un maillage avec deux zones. Les éléments seront des triangles à 3 noeuds.
On peut tracer plusieurs éléments géométriques avec la commande ET , exemple :
TRAC QUAL (C1 ET C2) ;
6
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
TP1d : Créer un maillage avec deux zones et deux types d’éléments
La commande SURF dans Cast3m se référe à l’option OPTI ELEM ... . Pour changer d’élément en cours
de programme, il faut entrer l’option avant la commande SURF .
TP1e : Créer un maillage avec deux zones, deux types d’éléments et une zone creuse
Si les maillages se superpose, un problème possible est la mauvaise compréhension par Cast3m de l’orientation
des surfaces. Pour régler le problème, il faut inverser le contour qui définit la zone évidée : C3 = INVE C3 ; .
La zone creuse se fait dans la zone de droite. Le centre du cercle est au centre de la zone. Le rayon vaut L/8.
Exemple de mauvais maillage avec superposition des surfaces :
Notes : La construction de plusieurs surfaces est obligatoire pour représenter différents matériaux qui
seraient présents dans la structure. Afin de les différencier, on affecte une couleur à une surface grâce à un
mot clef (cf p.10 et + du poly).
7
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
TP2 : Calcul en comportement élastique - Chargement d’une poutre creuse
But : Utiliser le logiciel CAST3M pour calculer la déformation d’une poutre sous chargement multiple. Le
poutre est composée de bois et de béton.
Protocole :
1. Se logger sous windows
2. Ouvrir l’éditeur notepad++ et enregistrer le fichier avec une extension *.dgibi
3. Passer la coloration syntaxique sous le format Cast3m_ruby (ou Cast3m)
4. Enregistrer le programme et commencer à rédiger
(a) Préparer l’organigramme géométrique du dessin sur papier
(b) Écrire l’en-tête du programme
(c) Entrer les paramètres du dessin
i. Variables géométriques
ii. Variables de densité de maillage
iii. Propriétés physiques du problème
iv. ...
(d) Dessiner la pièce
i. Définir les points
ii. Définir les lignes
iii. Définir les contours
iv. Définir les surfaces
(e) Faire le maillage du domaine
(f) Intégrer la loi de comportement
(g) Construire la matrice de rigidité globale
(h) Définir le chargement et du vecteur force globale
(i) Introduire les conditions limites
(j) Résolution du système matriciel
(k) Affichage et analyse des résultats
(l) Exportation des résultats pour visualisation sur Paraview
5. Vérifier le programme
6. Enregistrer le programme
7. Exécuter le programme (revenir à l’étape 4 si le programme ne donne pas satisfaction)
8
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
Problème à résoudre

divσ + fΩ = 0





u(x, y) = 0, θ(x, y) = 0



 u(y) = 0

fΩ (x, y) = F1





fΩ (x, y) = F2



fΩ (x, y) = Q
x ∈ [0; L] et y ∈ [0; H]
x = 0 et y ∈ [0; H]
x ∈ [l; L] et y = 0
x = 8l et y = H
x = L − 8l et y = H
x ∈ [ 2l ; 3l
4 ] et y = H
Dimensions
Dim.
H
h
e
d
l
L
c
m
1.20
0.40
0.10
0.20
4.00
5.00
0.80
Propriétés physiques
Matériaux
module d’Young : E (P a)
coef. Poisson : ν
masse volumique (kg · m−3 )
21e9
210e9
0.3
0.3
2300
7500
Béton
Acier
Chargement
Chargement
F1
F2
Q
Force (N )
-1e5
-5e4
-5e5
Représentation graphique
9
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
Petites choses à savoir en programmation avec Cast3M : La programmation est séquentielle, l’exécution
des blocs d’instructions se fait du haut vers le bas sans revenir modifier le programme (hormis dans les boucles
évidemment). Il ne faut donc pas oublier de définir une variable avant de l’appeler.
• Les opérandes peuvent s’écrire en majuscule ou minuscule
SURF ou surf sont équivalent, et donc attention car H et h représente la même variable !
• Une ligne de programmation doit avoir au maximum 72 caractères
• Une ligne se termine toujours par un " ;"
• Il faut impérativement respecter les espaces entre les opérandes et les variables
L01 = DROI P01 P02 ; et non L01=DROIP01P02 ;
• Les décimales séparent la partie entière par un "."
• Il n’y a pas de priorité des opérateurs dans Cast3M
1 + 2 × 3 = 9 est le résultat donné par Cast3M, pour avoir le bon résultat il faut faire :
1 + (2 × 3) = 7 ! ! !
• Mettre beaucoup de commentaires dans son programme
Réalisation de la partie graphique (géométrie et maillage)
EN-TETE DU PROGRAMME
*** Début du programme
TITR ’TP - MECA’ ;
OPTI DIME 2 ELEM TRI3 MODE PLAN ;
*** : Pour débuter un commentaire (non interprété dans le calcul)
TITR : Donner un titre au programme (visible dans la fenêtre graphique)
OPTI : Permet de définir les options du dessin
DIME : Dimension du problème (2D, 3D)
ELEM : Nature des élements (TRI3, QUA4, TRI6, QUA8, TET4, ...)
MODE PLAN : Définit la présence de symétries ou non
PARAMETRES
*** Paramètres géométriques
H = 1.2 ;
L = 5;
...
*** Densité de maillage
de1 = 0.1 ;
DENS de1 ;
...
*** Propriétés physiques des matériaux
younbt = 21e9 ;
nubt = 0.5 ;
...
*** Intensité des forces
f1 = -1e5 ;
Q = -5e5 ;
...
10
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
On définit des variables en posant : nomvariable = valeurvariable ;
DENS : définit la densité
GEOMETRIE
***
P01
P02
...
***
L01
A01
...
***
C01
***
S01
Points
= X01 Y01 ;
= X02 Y02 ;
Ligne et arc de cercle
= DROI P01 P02 ;
= CER3 P01 P02 P03 ;
Contour
= L01 ET L02 ET L03 ET L04 ... ;
Surface
= SURF C01 ; S01 = S01 COUL ORAN ;
Un point est défini par ses coordonnées : Pi = Xi Yi ;
DROI : Droite définie par deux points
CER3 : Arc de cercle défini par trois points
ET : Sert à associer des entités (géométries, matrices de rigidité, CL, ...)
SURF : Construit une surface à partir d’un contour
COUL : Donne une couleur à la géométrie (ligne, contour, surface, volume)
ORAN : Couleur orange (voir le panel de couleur sur la documentation en ligne, www-cast3m.cea.fr)
TRACE DANS LA FENETRES GRAPHIQUE
TRAC C01 ;
TRAC QUAL S01 ;
...
FIN ;
11
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
TRAC : Permet de tracer un résultat graphique (géométrie seule ou avec une grandeur physique)
QUAL : Affiche les noms des objets géométriques (points, lignes, ...)
FIN : fin du programme, force la sortie du programme si tout se passe bien
Note : On utilise plutôt la commande TRAC QUAL quand on veut débugger un problème géométrique. Sinon,
on utilise seulement la commande TRAC afin de ne pas surcharger la partie graphique. Le reste du programme
sera à insérer entre la commande TRAC et la commande FIN ; !
Gestion de la partie calcul
DEFINIR LA (LES) LOI(S) DE COMPORTEMENT DU (DES) MILIEUX
Chaque élément géométrique peut être associé à une loi de comportement si celui-ci est compatible à la
physique du milieu. Le premier mot clef est MODE pour définir quelle loi nous allons employer et sur quel
élément géométrique cette loi s’applique. Ensuite vient le mot clef MATE . Il contient les paramètres physiques
du milieu, associés à la loi définit précédemment.
*** Modes
mod01 = MODE s01 MECANIQUE ELASTIQUE ISOTROPE ;
mod02 = MODE s02 MECANIQUE ELASTIQUE ISOTROPE ;
...
*** Matériaux
mat01 = MATE mod01 ’YOUN’ ybt ’NU ’ nbt ’RHO ’ rbt ;
mat02 = MATE mod02 ’YOUN’ yac ’NU ’ nac ’RHO ’ rac ;
...
modtot = mod01 ET mod02 ET ... ;
mattot = mat01 ET mat02 ET ... ;
Dans l’exemple de code précédent, on associe à la surface 1 et à la surface 2 le même comportement
mécanique, à savoir un comportement élastique et isotrope. Ensuite, on différencie la surface 1 et de la surface
2 en affectant des paramètres physiques différents (dans notre cas E, ν, ρ des matériaux).
Les valeurs ybt , nbt , rbt , yac , nac , rac auront été définit plus haut dans le programme lors
de la création des paramètres.
NE PAS OUBLIER DE CREER UN "MODE" TOTAL ET UN "MATE" TOTAL CONTENANT TOUT LE
SYSTEME A ETUDIER.
CONSTRUCTION DE LA MATRICE DE RIGIDITE GLOBALE
Elle se fait tout simplement avec le mot clef RIGI en mécanique. Pour la thermique on utilisera par
exemple le mot clef COND ...
rigi01 = RIGI modtot mattot ;
12
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
DEFINITION DES CHARGES
Nous prendrons des exemples simples en mécanique, amplement suffisant pour une initiation (pour la thermique, l’acoustique,... ou des charges complexes, se référer aux recueil d’exemples du site de Cast3m).
On distinguera :
• Les charges sur Γ telles que :
⊲ Les forces ponctuelles (si force oblique, décomposer le vecteur)
⊲ Les charges réparties uniformes
• Les charges sur Ω telles que le poids propre de la structure
Pour les forces sur Γ, le code est le suivant :
nomf = FORCE dir val geom ;
1. nomf : Nom donné au chargement (ponctuel ou réparti)
2. FORCE : Mot clef indiquant qu’on applique une force
3. dir : Direction du vecteur force (fx, fy ou fz)
4. val : Valeur de la force (positive ou négative)
5. geom : Elément géométrique sur laquelle la force est appliquée, point pour une force ponctuelle, ligne
pour une charge répartie.
Le poids propre est géré différemment car il prend en compte toute la structure (Ω), celle-ci pouvant
contenir divers matériaux. On associe à chaque MODE un chargement de type poids propre. Le fonctionnement
est basé sur la formule bien connue :
P~ = m × ~g
Il nous faut donc deux matrices. Tout d’abord une matrice de masse qui contient la densité (MATE) et la
géométrie de l’objet (MODE). Ensuite une matrice qui représente ~g, c’est à dire l’application de la valeur du
champ de pesanteur pour tous les points de la structure :
Création de la matrice de masse : nomkg = MASS mod01 mat01 ;
Création de la matrice gravité : nomg = MANU CHPO geom 1 dir val ;
1. nomkg : Nom de la matrice de masse du un élément de la structure
2. MASS : Mot clef permettant la création de la matrice de masse
3. mod01 : MODE d’une géométrie
4. mat01 : MATE d’une géométrie
5. nomg : Nom de la matrice gravité
6. MANU CHPO : Création manuelle d’un champ par points
7. geom : Elément géométrique associé à mod01
8. 1 : Chiffre 1 indiquant que le vecteur contient une seule composante
9. dir : Direction du vecteur (UY en 2D et UZ en 3D)
10. val : Valeur du vecteur gravité, -9.81
13
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
Pour créer un chargement de type poids propre on multiplie ensuite la matrice de masse par la matrice de
gravité (P~ = m.~g) :
Pp01 = nomkg * nomg ;
Tous les chargements sont ensuite stocké dans une variable globale :
chtot = Fe1 ET Fe2 ET...ET Qh1 ET Qh2...ET Pp01 ET Pp02 ET... ;
Enfin, on peut visualiser les chargements externes sur la structure (interne également mais rarement utilisé
car très brouillon à l’écran). Il suffit de stocker ces chargements dans une variable globale :
chextot = Fe1 ET Fe2 ET...ET Qh1 ET Qh2... ;
Pour les visualiser, on utilise ensuite la commande TRAC sur un vecteur global qu’on aura créé :
*** Création du vecteur global
vec1 = VECT chextot -4e-6 FX FY ROUG ;
*** Affichage des chargements
TRAC vec1 geom ;
1. VECT : Mot clef pour la création des flèches
2. chextot : Variable globale contenant les forces externes
3. -4e-6 : Coefficient pour régler la taille des flèches par rapport à l’intensité de la force
4. FX FY : Indique qu’on veut tracer les flèches pour l’axe x et l’axe y
5. ROUG : Applique la couleur rouge aux flèches
INTRODUCTION DES CONDITIONS LIMITES
En mécanique, pour nos applications, les conditions limites sont de types "blocages". En 2D on aura donc :
~ : cl01 = BLOQ UY geom ;
• Appui simple suivant Oy,
~ : cl02 = BLOQ UX geom ;
• Appui simple suivant Ox,
• Rotule : cl03 = BLOQ UX UY geom ; ou cl03 = BLOQ DEPL geom ;
• Encastrement : cl04 = BLOQ DEPL ROTA geom ;
14
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
On place ensuite toutes les conditions limites dans une variables globales :
cltot = cl01 ET cl02 ET ... ;
CALCUL DES DEPLACEMENTS
On ajoute tout d’abord les conditions limites dans la matrice de rigidité :
rigi01 = rigi01 ET cltot ;
Ensuite, on résout le système :
dep01 = RESO rigi01 chtot ;
Le résultat est un stockage de tous les déplacements de la structure dans une matrice nommé dep01.
Post-traitement des résultats
TRACER LES RESULTATS SUR TOUTE LA STRUCTURE
Dans un calcul mécanique plusieurs résultats sont intéressants à tracer. Dans un premier temps, on va
tracé la déformée de la structure c’est à dire le champ des déplacements calculés précédemment dep01.
def1 = DEFO geom dep01 ROUG ;
1. def1 : Variable contenant la déformée
2. geom : Géométrie de la structure
3. dep01 : Champ des déplacements
4. ROUG : Couleur de la structure déformée
Il suffit ensuite de tracer la déformée :
TRAC geom def1 ;
On peut également tracer la structure originale en dessous pour une meilleure comparaison. Il suffit dans
ce cas de définir une autre déformée avec un coefficient de déformation nul.
def0 = DEFO geom dep01 0. AZUR ;
15
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
On trace ensuite les deux déformées avec la même commande :
TRAC geom (def0 ET def1) ;
Il est également intéressant de tracé les contraintes σ. Elles se calculent d’ailleurs avec l’opérateur SIGMA.
Cet opérateur demande en entré le MODE, le MATE et le champ de déplacement. Il donne en sortie (pour la 2D),
σV onMises , σxx , σyy et σxy . Le tracé se fait cette fois-ci non pas sur la géométrie geom mais sur le modèle
total modtot.
*** Calcul des contraintes
sig01 = SIGMA modtot mattot dep01 ;
*** Tracé des contraintes
TRAC modtot sig01 ;
16
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
On remarque sur le graphique précédent que le maillage, s’il est trop dense, peut nuire à la lisibilité du
tracé. On peut choisir de tracé le même graphique sans le maillage grâce à la commande :
TRAC modtot sig01 (CONT geom) ;
L’option (CONT geom) supprime le maillage lié à geom pour la réprésentation graphique.
Enfin, on peut ajuster l’échelle des valeurs sur des valeurs qu’on aura sélectionner. On peut effectuer cette
opération dans le but de faire ressortir un état de contrainte bien particulier. Par exemple, on décide que :
• : Valeur minimale de l’échelle graphique : 0.5 MPa
• : Valeur maximale de l’échelle graphique : 2 MPa
• : Résolution pour la couleur : 0.1 MPa
On crée un vecteur qui fixe l’échelle graphique :
liso = PROG 5.e5 PAS 1.e5 2e6 ;
On ajoute ensuite ce vecteur dans la commande TRAC :
TRAC modtot sig01 liso (CONT stot) ;
17
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
Enfin, il est également possible de tracer des valeurs sur la déformée. Lors d’un calcul mécanique par
éléments finis, le résultats généré sous Cast3m est contenu dans un champ par éléments pouvant contenir plusieurs composantes (σxx ; σxy ,...). L’affichage sous Cast3m de valeurs dans la déformée nécessite le passage
du champ par éléments vers un champ par points. La procédure suivante indique :
1. Extraction de la composante σ du champ par élément multicomposante pour avec un champ par élément
avec une seule composante :
• Pour σij , suivre la procédure 1
• Pour σV onMises suivre la procédure 2
2. Transformation du champ par élément en un champ par point
3. Choix des options si on veut tracer des isovaleurs
4. Tracé des résultats
*** Procédure 1 : Cas pour Sigma XX
elsmxx = EXCO ’SMXX’ sig01 ;
ptsmxx = CHAN CHPO modtot elsmxx ;
OPTI ISOV SULI ;
TRAC ptsmxx def1 geomc liso ;
Avec geomc la géométrie du contour ayant servir au maillage principal.
*** Procédure 2 : Cas pour Sigma Von Mises
vmis01 = VMIS modtot sig01 ;
elvon = EXCO ’SCAL’ vmis01 ;
ptvon = CHAN CHPO modtot elvon ;
OPTI ISOV SULI ;
TRAC ptvon def1 geomc liso ;
18
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
Le graphique suivant montre le résultat de la commande TRAC avec la procédure 2 :
INTERPOLATION DES RESULTATS SUR UNE LIGNE
On peut tracer des lignes à travers la structure pour interpoler une valeur particulière (déformée, contraintes,...).
L’abscisse curviligne des points sera relié à la grandeur interpolée. Les objets créés sont de types EVOL et on
les trace avec la commande DESS. La procédure est la suivante :
1. Identifier une ligne ou un contour (le créer si besoin).
2. Interpoler la grandeur physique (déplacements, contraintes, ...) sur la ligne nouvellement créée
3. Tracer la courbe
*** Extraction du déplacement vertical en partie haute
l07tot = l07e ET l07d ET l07c ET l07b ET l07a ;
evol01 = EVOL ROUG CHPO dep01 UY l07tot ;
DESS evol01 ;
Le graphique de la page suivante représente la valeur de la flèche (déplacement en uy ) sur la partie haute
de la poutre, en fonction de la largeur de celle-ci.
19
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
VALEUR EN UN POINT
Extraire une valeur en un point nécessite de créer un point qui sera interpolé sur la structure. Soit un point
P0 (L − l/8; H − d) dont on veut connaître le déplacement vertical. On procédera comme suit :
1. Définition du x et du y du point
2. Interpolation du point sur la structure
3. Interpolation de la grandeur physique en ce point
4. Affichage du résultat
*** Extraction du déplacement vertical au point P0
x0 = L-(pl/8.0) ;
y0 = H-d ;
p0 = geom POIN PROC (x0 y0) ;
uyp0 = EXTR dep01 UY p0 ;
MESS ’Deplacement au point P0 : ’ uyp0 ;
EXPORTATION DE LISTE AU FORMAT EXCEL
On peut exporter des évolutions au format ’*.CSV’ pour une visualisation avec un tableur (Excel, Libre
Office, ...).
@excel1 evol01 ’dep-vert-haut.csv’ ;
20
Master 1 GC
Université d’Artois
MEF - O. CARPENTIER
EXPORTATION VERS PARAVIEW
Paraview est un logiciel gratuit très puissant d’affichage graphique des données et très utilisé dans le domaine de la simulation numérique. Depuis Cast3m, il faut exporter les objets que l’on veut visualiser au format
’*.INP’. On ne peut exporter que des champs par points (cf précédemment).
*** Exportation pour Paraview
OPTI SORT ’result.inp’ ; SORT AVS geom chpoint ;
Conclusion sur cette brève initiation à Cast3m
Cast3m est un outil de calcul numérique par éléments finis très puissant malgré sa relative non-convivialité.
C’est avant tout un outil modulable destiné à la recherche. Les codes commerciaux sont basés sur une interface
graphique généralement conviviale et ont un fonctionnement similaire dans la démarche de résolution d’un
problème (définition de la géométrie, maillage, chargement,...). On notera qu’il existe également des codes de
calculs libres présentant une interface graphique (OpenCascade, Salome, ...). Ces codes nécessitent cependant
une approche CAO lors de la conception des pièces à mailler, et donc une philosophie de dessin assez différente
de celle généralement enseignée en Génie-Civil (approche plus DAO que CAO). Ces codes sont également très
efficaces.
Les outils comme Cast3m sont en priorité destiné à fonctionner sous Linux car ce dernier est beaucoup
mieux adapté que windows au calcul (La quasi totalité des calculateurs fonctionne sous Linux).
Cast3m existe également en version Mac et Windows. Le principe de fonctionnement sous Mac est analogue à celui de Linux. Sous windows, une fois Cast3m installé, il suffit de créer un raccourcis (sur le bureau ou
dans un dossier) est de glisser le programme à réaliser avec un éditeur (bloc-note par exemple) sur l’icône du
raccourcis Cast3m pour exécuter le programme. Avec un éditeur plus puissant (Notepad++ ou Crimson Editor
par exemple, http ://www-cast3m.cea.fr/html/Combescure/InstallationCast3M.pdf), on peut lancer Cast3m
depuis l’éditeur.
Cast3m est gratuit pour une application recherche / enseignement, n’hésitez pas à vous en servir pour
vos projets. Les possibilités d’applications sont très nombreuses. Cette partie étant juste une brève initiation,
reportez-vous au site de Cast3m (http ://www-cast3m.cea.fr/) pour avoir de plus amples informations sur le
logiciel.
21