introduction de 4 cas tests (FONCTION_UNIQUE/CONDITIONS_LIMITES : cisaillement periodique; FONCTION_UNIQUE/TYPE_DE_CALCUL : Zhai, Chung-Lee et HHT); modif de Perl/genere_catalogue_tests.pl : possibilite de mettre un facteur d echelle sur les figures (voir doc_procedure_verification.pdf section 5.4 fichier README)
This commit is contained in:
parent
4140e422c5
commit
2afaabc5f0
22 changed files with 1528 additions and 27 deletions
|
@ -0,0 +1,41 @@
|
|||
------------------------------------------------------
|
||||
Auteur
|
||||
------------------------------------------------------
|
||||
Julien Troufflard (troufflard@univ-ubs.fr)
|
||||
|
||||
------------------------------------------------------
|
||||
Mots-cles
|
||||
------------------------------------------------------
|
||||
traction uniaxiale
|
||||
dynamique explicite chung-lee
|
||||
Chung-Lee
|
||||
ISOELAS
|
||||
|
||||
------------------------------------------------------
|
||||
But du test
|
||||
------------------------------------------------------
|
||||
test simple du mode de calcul : dynamique explicite Chung-Lee
|
||||
""
|
||||
TYPE_DE_CALCUL
|
||||
dynamique_explicite_chung_lee
|
||||
|
||||
PARA_TYPE_DE_CALCUL
|
||||
beta= 1.037
|
||||
""
|
||||
|
||||
------------------------------------------------------
|
||||
Description du calcul
|
||||
------------------------------------------------------
|
||||
traction uniaxiale suivant X sur un cube 1x1x1 (1 element HEXAEDRE LINEAIRE)
|
||||
- loi elastique ISOELAS
|
||||
|
||||
-------------------------------------------------------------
|
||||
Grandeurs de comparaison
|
||||
-------------------------------------------------------------
|
||||
pour le noeud 8 :
|
||||
- vitesse : V2
|
||||
- acceleration : GAMMA2
|
||||
|
||||
pour le point d integration 1 de l element 1 :
|
||||
- deformations : EPS11 EPS22 EPS33
|
||||
- contrainte : SIG11
|
|
@ -0,0 +1,116 @@
|
|||
###############################################################################################
|
||||
# Fichier de commande pour la visualisation elements finis #
|
||||
# Herezh++ V6.687 #
|
||||
# Copyright (c) 1997-2015, Gerard Rio (gerard.rio@univ-ubs.fr) http://kleger.univ-ubs.fr/Herezh/ #
|
||||
# http://www-lg2m.univ-ubs.fr #
|
||||
###############################################################################################
|
||||
|
||||
|
||||
|
||||
debut_fichier_commande_visu # >>>>>> le mot cle: <debut_fichier_commande_visu>
|
||||
# permet au programme de se positionner au debut du fichier, il est indispensable
|
||||
|
||||
|
||||
# =================================================================================
|
||||
# || ***** demande d'une visualisation maple: ***** ||
|
||||
# =================================================================================
|
||||
# un mot cle de debut (debut_visualisation_maple)
|
||||
# un mot cle de fin ( fin_visualisation_maple)
|
||||
# la seule presence de ces deux mots cle suffit a activer la visualisation maple
|
||||
debut_visualisation_maple
|
||||
|
||||
# ----------------------------- definition de la liste des increments a balayer: ----------------
|
||||
debut_list_increment # un mot cle de debut de liste
|
||||
actif 1 # <0 ou 1> indique si l'ordre est actif ou non
|
||||
# une liste d'entier separee par des blancs, ou le mot cle (tous_les_increments)
|
||||
# un mot cle de fin de liste ( fin_list_increment)
|
||||
dernier_increment fin_list_increment
|
||||
|
||||
# ----------------------------- choix des maillages a visualiser: ----------------
|
||||
# la liste est facultative, par defaut la visualisation concerne le premier maillage
|
||||
debut_choix_maillage # un mot cle de debut,
|
||||
actif 0 # <0 ou 1> indique si l'ordre est actif ou non
|
||||
# une liste d'entiers , puis <fin_choix_maillage>, sur une meme ligne
|
||||
1 fin_choix_maillage
|
||||
|
||||
# ----------------------------- definition des grandeurs a visualiser (maple): ----------------
|
||||
debut_grandeurs_maple # un mot cle de debut (debut_grandeurs_maple),
|
||||
actif 1 # <0 ou 1> indique si l'ordre est actif ou non
|
||||
# les grandeurs globales (energie, puissance ....) un mot cle de debut, le nom des grandeurs puis un mot de fin
|
||||
debut_grandeurs_globales fin_grandeurs_globales
|
||||
# ensuite pour chaque maillage:,
|
||||
# le numero du maillage <un entier>,
|
||||
# les infos pour la visualisation eventuelle des torseurs de reaction,
|
||||
# les infos pour la visualisation eventuelle aux noeud,
|
||||
# - tout d'abord les ddl principaux (position, deplacements, temperature etc.)
|
||||
# - puis les ddl etendus et particulieres qui peuvent representer des grandeurs diverses
|
||||
# les infos pour la visualisation eventuelle aux elements,
|
||||
# - tout d'abord les grandeurs generiques (deformations, contraintes etc.)
|
||||
# - puis les grandeurs particulieres, par exemple specifique a une loi de comp ou une mesure de def
|
||||
# enfin un mot cle de fin ( fin_grandeurs_maple)
|
||||
1 # le numero de maillage
|
||||
# les torseurs de reaction: un mot cle de debut: debut_list_torseur_reaction
|
||||
# une liste de nom <chaine de caracteres >, puis <fin_list_torseur_reaction>
|
||||
debut_list_torseur_reaction fin_list_torseur_reaction
|
||||
debut_liste_ddl_et_noeud # ** debut des ddl principaux aux noeuds
|
||||
# debut de la liste de noeuds, puis une liste de numero de noeud <entier>, puis <fin_list_noeud>
|
||||
deb_list_noeud 8 fin_list_noeud
|
||||
# debut de la liste des ref de noeuds, puis une liste de nom <chaine de caracteres >, puis <fin_list_ref_noeud>
|
||||
deb_list_ref_noeud fin_list_ref_noeud
|
||||
# debut de la liste des ddl a considerer aux noeuds, (une liste de ddl), puis <fin_list_ddl_noeud>
|
||||
deb_list_ddl_noeud V2 GAMMA2 fin_list_ddl_noeud
|
||||
type_sortie_ddl_retenue= 0
|
||||
# debut de la liste des ddl etendus a considerer aux noeuds, (une liste de ddl), puis <fin_list_ddl_etendu_noeud>
|
||||
deb_list_ddl_etendu_noeud fin_list_ddl_etendu_noeud # fin des ddl etendu aux noeuds
|
||||
# debut de la liste des grandeurs particulieres a considerer aux noeuds, (une liste de string), puis <fin_list_GrandParticuliere_noeud>
|
||||
deb_list_GrandParticuliere_noeud fin_list_GrandParticuliere_noeud # fin des grandeurs particulieres aux noeuds
|
||||
fin_liste_ddl_et_noeud # fin des grandeurs aux noeuds
|
||||
debut_liste_ddl_ptinteg # ** debut des grandeurs aux elements
|
||||
# debut de la liste des elements et points d'integration, une liste de (un element, un numero de pt d'integ), puis <fin_list_NbElement_NbPtInteg>
|
||||
deb_list_NbElement_NbPtInteg 1 1 fin_list_NbElement_NbPtInteg
|
||||
# debut de la liste des ref d'elements, puis une liste de: nom <chaine de caracteres > + numero d'integ, puis <fin_list_ref_element>
|
||||
deb_list_ref_element fin_list_ref_element
|
||||
# debut de la liste des ref de ptinteg d'elements, puis une liste de: nom <chaine de caracteres > puis <fin_list_ref_ptinteg_element>
|
||||
deb_list_ref_ptinteg_element fin_list_ref_ptinteg_element
|
||||
# debut de la liste des ddl a considerer pour les elements, (une liste de ddl), puis <fin_list_ddl_element>
|
||||
deb_list_ddl_element EPS11 EPS22 EPS33 SIG11 fin_list_ddl_element # fin de la liste de ddl a considerer pour les elements
|
||||
# debut de la liste des grandeurs particulieres a considerer pour les elements, (une liste de string), puis <fin_list_GrandParticuliere_element>
|
||||
deb_list_GrandParticuliere_element fin_list_GrandParticuliere_element # fin des grandeurs particulieres aux elements
|
||||
# tableau de grandeurs evoluees aux elements a visualiser, un par maillage
|
||||
deb_list_GrandEvoluee_element fin_list_GrandEvoluee_element
|
||||
fin_liste_ddl_ptinteg # fin des grandeurs aux elements
|
||||
# informations particuliere dans le cas ou il y a une animation
|
||||
# type_xi indique si oui ou non les grandeurs a tracer sont aux noeuds (sinon c'est au elements)
|
||||
# x1 et x2 indiquent les noms des ddls des grandeurs en x et y. accroi_x1 et accroi_x2 indiquent
|
||||
# si oui ou non x1 et x2 represente l'accroissement entre 0 et t de la grandeur ou bien la grandeur elle meme.
|
||||
debut_info_particulier grandeur_au_noeud? 1 x1= NU_DDL x2= NU_DDL accroi_x1= 0 accroi_x2= 1 fin_info_particulier
|
||||
# un parametre de pilotage du style de sortie
|
||||
parametre_style_de_sortie 1
|
||||
# un parametre indiquant si les tenseurs sont en absolue (rep 1) ou suivant un repere ad hoc
|
||||
# (tangent pour les coques, suivant la fibre moyenne pour les element 1D )
|
||||
tenseur_en_absolue_ 0
|
||||
fin_grandeurs_maple # fin des grandeurs a visualiser au format maple
|
||||
|
||||
# ----------------------------- definition des parametres d'animation: ----------------
|
||||
debut_animation # un mot cle de debut de liste (debut_animation)
|
||||
actif 0 # <0 ou 1> indique si l'ordre est actif ou non
|
||||
# des parametres avec des valeurs: (sur une meme ligne)
|
||||
cycleInterval 8 # cycleInterval <un reel> (indique le temps en seconde du cycle de l'animation)
|
||||
fin_animation # un mot cle de fin
|
||||
|
||||
fin_visualisation_maple
|
||||
# =================================================================================
|
||||
# || fin de la visualisation maple ||
|
||||
# =================================================================================
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
fin_fichier_commande_visu # <<<<<< le mot cle <fin_fichier_commande_visu> permet
|
||||
# l'arret de la lecture des commandes, apres ce mot cle, aucune commande n'est lu, de plus
|
||||
# sans le mot cle de fin de fichier, le fichier n'est pas valide
|
||||
|
||||
###############################################################################################
|
||||
|
||||
|
|
@ -0,0 +1,79 @@
|
|||
dimension 3
|
||||
|
||||
|
||||
niveau_commentaire 3
|
||||
|
||||
|
||||
TYPE_DE_CALCUL ----------------------------------------------
|
||||
|
||||
dynamique_explicite_chung_lee avec plus lectureCommandesVisu
|
||||
|
||||
PARA_TYPE_DE_CALCUL
|
||||
beta= 1.037
|
||||
|
||||
|
||||
< cube_1elt_npti8.her
|
||||
< cube_1elt_npti8.lis
|
||||
|
||||
# renumerotation_des_noeuds_
|
||||
|
||||
|
||||
les_courbes_1D ----------------------------------------------
|
||||
|
||||
rampe COURBEPOLYLINEAIRE_1_D
|
||||
Debut_des_coordonnees_des_points
|
||||
Coordonnee dim= 2 0. 0.
|
||||
Coordonnee dim= 2 0.001 1.
|
||||
Fin_des_coordonnees_des_points
|
||||
|
||||
choix_materiaux ----------------------------------------------
|
||||
|
||||
E_tout MAT_ELAS
|
||||
|
||||
materiaux ----------------------------------------------
|
||||
|
||||
MAT_ELAS ISOELAS
|
||||
210000. 0.3
|
||||
|
||||
|
||||
masse_volumique ----------------------------------------------
|
||||
|
||||
E_tout 8.7e-9
|
||||
|
||||
|
||||
charges ----------------------------------------------
|
||||
|
||||
|
||||
blocages ----------------------------------------------
|
||||
|
||||
#traction uniaxiale suivant X par deplacement impose
|
||||
N_droit UX
|
||||
N_arriere UY
|
||||
N_bas UZ
|
||||
N_gauche 'UX= COURBE_CHARGE: rampe ECHELLE: 0.01'
|
||||
|
||||
controle ----------------------------------------------
|
||||
|
||||
TEMPSFIN 0.001
|
||||
DELTAt COEF_PASCRITIQUE 0.95
|
||||
ITERATIONS 15
|
||||
PRECISION 1e-3
|
||||
SAUVEGARDE DERNIER_CALCUL
|
||||
MAXINCRE 99999999
|
||||
NORME Residu/Reaction_et_VarRes
|
||||
|
||||
|
||||
para_pilotage_equi_global ----------------------------------------------
|
||||
|
||||
|
||||
para_syteme_lineaire ----------------------------------------------
|
||||
|
||||
|
||||
para_affichage ----------------------------------------------
|
||||
|
||||
resultats ----------------------------------------------
|
||||
COPIE 0
|
||||
POINTS_INTEGRATION E_tout
|
||||
Green-Lagrange Almansi Cauchy_global Def_mixte_local Sigma_mixte_local
|
||||
|
||||
_fin_point_info_
|
|
@ -0,0 +1,80 @@
|
|||
#fichier au format maple6
|
||||
###############################################################################################
|
||||
# Visualisation elements finis : Herezh++ V6.713 #
|
||||
# Copyright (c) 1997-2015, Gerard Rio (gerard.rio@univ-ubs.fr) http://kleger.univ-ubs.fr/Herezh/ #
|
||||
# http://www-lg2m.univ-ubs.fr #
|
||||
###############################################################################################
|
||||
|
||||
|
||||
|
||||
# entete des donnees : informations gererales: on trouve successivement:
|
||||
# >> le nombre de grandeurs globales (peut etre nul) suivi des identificateurs
|
||||
# precedes du numero de colonne entre crochet
|
||||
# >> le nombre de maillages m, et dimension de l'espace de travail
|
||||
# puis pour chaque maillage,
|
||||
# >> le nombre de torseurs de reaction (peut etre nul), le nombre total de reel qui va etre ecrit
|
||||
# correspondant aux composantes des torseurs, puis les noms de ref associee suivi des positions
|
||||
# des composantes entre crochet accolees a un identificateur: R pour reaction, M pour moment
|
||||
# puis pour chaque maillage
|
||||
# >> le nombre de noeud n (peut etre nul) ou il y a des grandeurs en sortie ,
|
||||
# puis le nombre des grandeurs p1 correspondantes, la position entre crochet des coordonnees
|
||||
# et enfin l'idendificateur de ces grandeurs(p1 chaines de caractere)
|
||||
# precedes du numero de colonne correspondant entre crochet
|
||||
# puis pour chaque maillage
|
||||
# >> le nombre de couples element-pt_integ (peut etre nulle) ou il y a des grandeurs en sortie ,
|
||||
# les grandeurs aux elements sont decomposees en 2 listes: la premiere de quantite P2 correspondant
|
||||
# a des grandeurs generiques, la seconde de quantite P3 corresponds aux grandeurs specifiques,
|
||||
# on trouve donc a la suite du nombre d'element: le nombre P2, suivi de P2 identificateurs de ddl
|
||||
# chacun precedes du numero de colonne entre crochet
|
||||
# puis le nombre P3, suivi de P3 identificateurs+categorie+type (chaines de caracteres),
|
||||
# suivi entre crochet, de la plage des numeros de colonnes, correspondant
|
||||
# chacun sur une ligne differentes
|
||||
# ==== NB: pour les grandeurs specifique tensorielle: exemple d'ordre en 2D:
|
||||
# tenseur symetrique, A(1,1) A(2,1) A(2,2), non symetrique A(1,1) A(1,2) A(2,1) A(2,2)
|
||||
# en 3D c'est: tenseur symetrique, A(1,1) A(2,1) A(2,2) A(3,1) A(3,2) A(3,3)
|
||||
# non symetrique A(1,1) A(1,2) A(2,1) A(2,2) A(2,3) A(3,1) A(3,2) A(3,3)
|
||||
# ** dans le cas ou il n'y a qu'un seul increment en sortie, pour les grandeurs aux noeuds et aux elements,
|
||||
# ** les informations peuvent etre decoupees selon: une ligne = un noeud, et le temps n'est pas indique
|
||||
# ** ( cf: parametre_style_de_sortie = 0)
|
||||
|
||||
#====================================================================
|
||||
#|| recapitulatif des differentes grandeurs par colonne ||
|
||||
#====================================================================
|
||||
#---------------------------------- grandeur globales ------------------------------------
|
||||
#0 (nombre de grandeurs globales)
|
||||
#---------------------------------- maillage et dimension --------------------------------
|
||||
#1 3 (nombre de maillages et dimension)
|
||||
#---------------------------------- torseurs de reactions --------------------------------
|
||||
#0 0 (nombre de torseurs et nombre total de grandeurs associees)
|
||||
#
|
||||
#---------------------------------- grandeurs aux noeuds --------------------------------
|
||||
#1 2 (nombre de noeuds, nombre total de grandeurs associees)
|
||||
# noeud_8 [2]X [3]Y [4]Z [5]V2 [6]GAMMA2 ;
|
||||
#
|
||||
#---------------------------------- grandeurs aux elements ------------------------------
|
||||
#1 4 00 (nombre total d'elements, nombre totale de grandeurs associees, nombre de grandeurs particulieres, nombre de grandeurs tensorielles)
|
||||
# element_1 pt_integ_1: [8]X [9]Y [10]Z [11] EPS11 [12] EPS22 [13] EPS33 [14] SIG11
|
||||
#
|
||||
#
|
||||
#====================================================================
|
||||
#|| fin du recapitulatif des differentes grandeurs ||
|
||||
#====================================================================
|
||||
|
||||
# ensuite les donnees sont organisees sur differentes lignes, chaques lignes correspondant
|
||||
# a un calcul (par exemple un pas de temps), sur chaque ligne il y a m enregistrement, chacun
|
||||
# correspondant a un maillage. On trouve pour chaque enregistrement successivement :
|
||||
# s'il y a des grandeurs globales: le temps puis les grandeurs globales,
|
||||
# puis s'il y a des torseurs de reaction :
|
||||
# de nouveau le temps, les composantes de la resultante puis les composantes du moments
|
||||
# donc en 1D -> 1 reels (resultante), en 2D -> 3 reels (resultante 2, moment 1) et en 3D 6 reels
|
||||
# puis s'il y a des grandeurs aux noeuds: de nouveau le temps
|
||||
# les coordonnees a t du premier noeud suivi des p1 grandeurs correspondant au premier noeud
|
||||
# puis les coordonnees du second noeud, les p1 grandeurs etc. pour tous les noeuds
|
||||
# puis s'il y a des grandeur aux elements:
|
||||
# le temps, puis les coordonnees a t du point d'integration d'un element (pour les grandeurs generiques)
|
||||
# suivi des p2 grandeurs correspondantes puis les coordonnees a t du point d'integration
|
||||
# correspondant aux grandeurs specifiques suivi des p3 grandeurs correspondantes
|
||||
# puis les coordonnees d'un second point d'integration d'un element, les p2 grandeurs
|
||||
# etc. pour tous les points d'integration - element
|
||||
|
||||
1.000000000000e-03 1.010000000000e+00 1.000000000000e+00 1.000000000000e+00 0.000000000000e+00 0.000000000000e+00 1.000000000000e-03 2.134381140592e-01 7.886751345948e-01 7.886751345948e-01 9.851975296540e-03 0.000000000000e+00 0.000000000000e+00 2.785077631906e+03
|
|
@ -0,0 +1,18 @@
|
|||
nom_maillage cube_1elt_npti8
|
||||
|
||||
noeuds
|
||||
8 NOEUDS
|
||||
|
||||
1 0 0 0
|
||||
2 0 0 1
|
||||
3 0 1 0
|
||||
4 0 1 1
|
||||
5 1 0 0
|
||||
6 1 0 1
|
||||
7 1 1 0
|
||||
8 1 1 1
|
||||
|
||||
elements
|
||||
1 ELEMENTS
|
||||
|
||||
1 HEXAEDRE LINEAIRE 5 7 3 1 6 8 4 2
|
|
@ -0,0 +1,158 @@
|
|||
# CORRESPONDANCE label => position
|
||||
#
|
||||
# gauche => X=1
|
||||
#
|
||||
# droit => X=0
|
||||
#
|
||||
# avant => Y=1
|
||||
#
|
||||
# arriere => Y=0
|
||||
#
|
||||
# haut => Z=1
|
||||
#
|
||||
# bas => Z=0
|
||||
#
|
||||
|
||||
N_avant 3 4 7 8
|
||||
|
||||
N_arriere 1 2 5 6
|
||||
|
||||
N_haut 2 4 6 8
|
||||
|
||||
N_bas 1 3 5 7
|
||||
|
||||
N_droit 1 2 3 4
|
||||
|
||||
N_gauche 5 6 7 8
|
||||
|
||||
N_haut_droit 2 4
|
||||
|
||||
N_haut_gauche 6 8
|
||||
|
||||
N_haut_arriere 2 6
|
||||
|
||||
N_haut_avant 4 8
|
||||
|
||||
N_bas_droit 1 3
|
||||
|
||||
N_bas_gauche 5 7
|
||||
|
||||
N_bas_arriere 1 5
|
||||
|
||||
N_bas_avant 3 7
|
||||
|
||||
N_arriere_droit 1 2
|
||||
|
||||
N_arriere_gauche 5 6
|
||||
|
||||
N_avant_droit 3 4
|
||||
|
||||
N_avant_gauche 7 8
|
||||
|
||||
N_haut_arriere_droit 2
|
||||
|
||||
N_haut_arriere_gauche 6
|
||||
|
||||
N_haut_avant_gauche 8
|
||||
|
||||
N_haut_avant_droit 4
|
||||
|
||||
N_bas_arriere_droit 1
|
||||
|
||||
N_bas_arriere_gauche 5
|
||||
|
||||
N_bas_avant_gauche 7
|
||||
|
||||
N_bas_avant_droit 3
|
||||
|
||||
N_to 1 2 3 4 5 6 7 8
|
||||
|
||||
E_avant 1
|
||||
|
||||
E_derriere 1
|
||||
|
||||
E_haut 1
|
||||
|
||||
E_bas 1
|
||||
|
||||
E_droit 1
|
||||
|
||||
E_gauche 1
|
||||
|
||||
E_haut_droit 1
|
||||
|
||||
E_haut_gauche 1
|
||||
|
||||
E_haut_arriere 1
|
||||
|
||||
E_haut_avant 1
|
||||
|
||||
E_bas_droit 1
|
||||
|
||||
E_bas_gauche 1
|
||||
|
||||
E_bas_arriere 1
|
||||
|
||||
E_bas_avant 1
|
||||
|
||||
E_arriere_droit 1
|
||||
|
||||
E_arriere_gauche 1
|
||||
|
||||
E_avant_droit 1
|
||||
|
||||
E_avant_gauche 1
|
||||
|
||||
E_haut_arriere_droit 1
|
||||
|
||||
E_haut_arriere_gauche 1
|
||||
|
||||
E_haut_avant_gauche 1
|
||||
|
||||
E_haut_avant_droit 1
|
||||
|
||||
E_bas_arriere_droit 1
|
||||
|
||||
E_bas_arriere_gauche 1
|
||||
|
||||
E_bas_avant_gauche 1
|
||||
|
||||
E_bas_avant_droit 1
|
||||
|
||||
E_to 1
|
||||
|
||||
F_avant 1 5
|
||||
|
||||
F_arriere 1 2
|
||||
|
||||
F_haut 1 4
|
||||
|
||||
F_bas 1 1
|
||||
|
||||
F_droit 1 6
|
||||
|
||||
F_gauche 1 3
|
||||
|
||||
A_haut_droit 1 11
|
||||
|
||||
A_haut_gauche 1 9
|
||||
|
||||
A_haut_arriere 1 12
|
||||
|
||||
A_haut_avant 1 10
|
||||
|
||||
A_bas_droit 1 3
|
||||
|
||||
A_bas_gauche 1 1
|
||||
|
||||
A_bas_arriere 1 4
|
||||
|
||||
A_bas_avant 1 2
|
||||
|
||||
A_arriere_droit 1 8
|
||||
|
||||
A_arriere_gauche 1 5
|
||||
|
||||
A_avant_droit 1 7
|
||||
|
||||
A_avant_gauche 1 6
|
|
@ -0,0 +1,41 @@
|
|||
------------------------------------------------------
|
||||
Auteur
|
||||
------------------------------------------------------
|
||||
Julien Troufflard (troufflard@univ-ubs.fr)
|
||||
|
||||
------------------------------------------------------
|
||||
Mots-cles
|
||||
------------------------------------------------------
|
||||
traction uniaxiale
|
||||
dynamique implicite HHT
|
||||
HHT
|
||||
ISOELAS
|
||||
|
||||
------------------------------------------------------
|
||||
But du test
|
||||
------------------------------------------------------
|
||||
test simple du mode de calcul : dynamique implicite avec methode HHT
|
||||
""
|
||||
TYPE_DE_CALCUL
|
||||
dynamique_implicite
|
||||
|
||||
PARA_TYPE_DE_CALCUL
|
||||
hht= -0.05
|
||||
""
|
||||
|
||||
------------------------------------------------------
|
||||
Description du calcul
|
||||
------------------------------------------------------
|
||||
traction uniaxiale suivant X sur un cube 1x1x1 (1 element HEXAEDRE LINEAIRE)
|
||||
- loi elastique ISOELAS
|
||||
|
||||
-------------------------------------------------------------
|
||||
Grandeurs de comparaison
|
||||
-------------------------------------------------------------
|
||||
pour le noeud 8 :
|
||||
- vitesse : V2
|
||||
- acceleration : GAMMA2
|
||||
|
||||
pour le point d integration 1 de l element 1 :
|
||||
- deformations : EPS11 EPS22 EPS33
|
||||
- contrainte : SIG11
|
|
@ -0,0 +1,18 @@
|
|||
nom_maillage cube_1elt_npti8
|
||||
|
||||
noeuds
|
||||
8 NOEUDS
|
||||
|
||||
1 0 0 0
|
||||
2 0 0 1
|
||||
3 0 1 0
|
||||
4 0 1 1
|
||||
5 1 0 0
|
||||
6 1 0 1
|
||||
7 1 1 0
|
||||
8 1 1 1
|
||||
|
||||
elements
|
||||
1 ELEMENTS
|
||||
|
||||
1 HEXAEDRE LINEAIRE 5 7 3 1 6 8 4 2
|
|
@ -0,0 +1,158 @@
|
|||
# CORRESPONDANCE label => position
|
||||
#
|
||||
# gauche => X=1
|
||||
#
|
||||
# droit => X=0
|
||||
#
|
||||
# avant => Y=1
|
||||
#
|
||||
# arriere => Y=0
|
||||
#
|
||||
# haut => Z=1
|
||||
#
|
||||
# bas => Z=0
|
||||
#
|
||||
|
||||
N_avant 3 4 7 8
|
||||
|
||||
N_arriere 1 2 5 6
|
||||
|
||||
N_haut 2 4 6 8
|
||||
|
||||
N_bas 1 3 5 7
|
||||
|
||||
N_droit 1 2 3 4
|
||||
|
||||
N_gauche 5 6 7 8
|
||||
|
||||
N_haut_droit 2 4
|
||||
|
||||
N_haut_gauche 6 8
|
||||
|
||||
N_haut_arriere 2 6
|
||||
|
||||
N_haut_avant 4 8
|
||||
|
||||
N_bas_droit 1 3
|
||||
|
||||
N_bas_gauche 5 7
|
||||
|
||||
N_bas_arriere 1 5
|
||||
|
||||
N_bas_avant 3 7
|
||||
|
||||
N_arriere_droit 1 2
|
||||
|
||||
N_arriere_gauche 5 6
|
||||
|
||||
N_avant_droit 3 4
|
||||
|
||||
N_avant_gauche 7 8
|
||||
|
||||
N_haut_arriere_droit 2
|
||||
|
||||
N_haut_arriere_gauche 6
|
||||
|
||||
N_haut_avant_gauche 8
|
||||
|
||||
N_haut_avant_droit 4
|
||||
|
||||
N_bas_arriere_droit 1
|
||||
|
||||
N_bas_arriere_gauche 5
|
||||
|
||||
N_bas_avant_gauche 7
|
||||
|
||||
N_bas_avant_droit 3
|
||||
|
||||
N_to 1 2 3 4 5 6 7 8
|
||||
|
||||
E_avant 1
|
||||
|
||||
E_derriere 1
|
||||
|
||||
E_haut 1
|
||||
|
||||
E_bas 1
|
||||
|
||||
E_droit 1
|
||||
|
||||
E_gauche 1
|
||||
|
||||
E_haut_droit 1
|
||||
|
||||
E_haut_gauche 1
|
||||
|
||||
E_haut_arriere 1
|
||||
|
||||
E_haut_avant 1
|
||||
|
||||
E_bas_droit 1
|
||||
|
||||
E_bas_gauche 1
|
||||
|
||||
E_bas_arriere 1
|
||||
|
||||
E_bas_avant 1
|
||||
|
||||
E_arriere_droit 1
|
||||
|
||||
E_arriere_gauche 1
|
||||
|
||||
E_avant_droit 1
|
||||
|
||||
E_avant_gauche 1
|
||||
|
||||
E_haut_arriere_droit 1
|
||||
|
||||
E_haut_arriere_gauche 1
|
||||
|
||||
E_haut_avant_gauche 1
|
||||
|
||||
E_haut_avant_droit 1
|
||||
|
||||
E_bas_arriere_droit 1
|
||||
|
||||
E_bas_arriere_gauche 1
|
||||
|
||||
E_bas_avant_gauche 1
|
||||
|
||||
E_bas_avant_droit 1
|
||||
|
||||
E_to 1
|
||||
|
||||
F_avant 1 5
|
||||
|
||||
F_arriere 1 2
|
||||
|
||||
F_haut 1 4
|
||||
|
||||
F_bas 1 1
|
||||
|
||||
F_droit 1 6
|
||||
|
||||
F_gauche 1 3
|
||||
|
||||
A_haut_droit 1 11
|
||||
|
||||
A_haut_gauche 1 9
|
||||
|
||||
A_haut_arriere 1 12
|
||||
|
||||
A_haut_avant 1 10
|
||||
|
||||
A_bas_droit 1 3
|
||||
|
||||
A_bas_gauche 1 1
|
||||
|
||||
A_bas_arriere 1 4
|
||||
|
||||
A_bas_avant 1 2
|
||||
|
||||
A_arriere_droit 1 8
|
||||
|
||||
A_arriere_gauche 1 5
|
||||
|
||||
A_avant_droit 1 7
|
||||
|
||||
A_avant_gauche 1 6
|
|
@ -0,0 +1,116 @@
|
|||
###############################################################################################
|
||||
# Fichier de commande pour la visualisation elements finis #
|
||||
# Herezh++ V6.687 #
|
||||
# Copyright (c) 1997-2015, Gerard Rio (gerard.rio@univ-ubs.fr) http://kleger.univ-ubs.fr/Herezh/ #
|
||||
# http://www-lg2m.univ-ubs.fr #
|
||||
###############################################################################################
|
||||
|
||||
|
||||
|
||||
debut_fichier_commande_visu # >>>>>> le mot cle: <debut_fichier_commande_visu>
|
||||
# permet au programme de se positionner au debut du fichier, il est indispensable
|
||||
|
||||
|
||||
# =================================================================================
|
||||
# || ***** demande d'une visualisation maple: ***** ||
|
||||
# =================================================================================
|
||||
# un mot cle de debut (debut_visualisation_maple)
|
||||
# un mot cle de fin ( fin_visualisation_maple)
|
||||
# la seule presence de ces deux mots cle suffit a activer la visualisation maple
|
||||
debut_visualisation_maple
|
||||
|
||||
# ----------------------------- definition de la liste des increments a balayer: ----------------
|
||||
debut_list_increment # un mot cle de debut de liste
|
||||
actif 1 # <0 ou 1> indique si l'ordre est actif ou non
|
||||
# une liste d'entier separee par des blancs, ou le mot cle (tous_les_increments)
|
||||
# un mot cle de fin de liste ( fin_list_increment)
|
||||
dernier_increment fin_list_increment
|
||||
|
||||
# ----------------------------- choix des maillages a visualiser: ----------------
|
||||
# la liste est facultative, par defaut la visualisation concerne le premier maillage
|
||||
debut_choix_maillage # un mot cle de debut,
|
||||
actif 0 # <0 ou 1> indique si l'ordre est actif ou non
|
||||
# une liste d'entiers , puis <fin_choix_maillage>, sur une meme ligne
|
||||
1 fin_choix_maillage
|
||||
|
||||
# ----------------------------- definition des grandeurs a visualiser (maple): ----------------
|
||||
debut_grandeurs_maple # un mot cle de debut (debut_grandeurs_maple),
|
||||
actif 1 # <0 ou 1> indique si l'ordre est actif ou non
|
||||
# les grandeurs globales (energie, puissance ....) un mot cle de debut, le nom des grandeurs puis un mot de fin
|
||||
debut_grandeurs_globales fin_grandeurs_globales
|
||||
# ensuite pour chaque maillage:,
|
||||
# le numero du maillage <un entier>,
|
||||
# les infos pour la visualisation eventuelle des torseurs de reaction,
|
||||
# les infos pour la visualisation eventuelle aux noeud,
|
||||
# - tout d'abord les ddl principaux (position, deplacements, temperature etc.)
|
||||
# - puis les ddl etendus et particulieres qui peuvent representer des grandeurs diverses
|
||||
# les infos pour la visualisation eventuelle aux elements,
|
||||
# - tout d'abord les grandeurs generiques (deformations, contraintes etc.)
|
||||
# - puis les grandeurs particulieres, par exemple specifique a une loi de comp ou une mesure de def
|
||||
# enfin un mot cle de fin ( fin_grandeurs_maple)
|
||||
1 # le numero de maillage
|
||||
# les torseurs de reaction: un mot cle de debut: debut_list_torseur_reaction
|
||||
# une liste de nom <chaine de caracteres >, puis <fin_list_torseur_reaction>
|
||||
debut_list_torseur_reaction fin_list_torseur_reaction
|
||||
debut_liste_ddl_et_noeud # ** debut des ddl principaux aux noeuds
|
||||
# debut de la liste de noeuds, puis une liste de numero de noeud <entier>, puis <fin_list_noeud>
|
||||
deb_list_noeud 8 fin_list_noeud
|
||||
# debut de la liste des ref de noeuds, puis une liste de nom <chaine de caracteres >, puis <fin_list_ref_noeud>
|
||||
deb_list_ref_noeud fin_list_ref_noeud
|
||||
# debut de la liste des ddl a considerer aux noeuds, (une liste de ddl), puis <fin_list_ddl_noeud>
|
||||
deb_list_ddl_noeud V2 GAMMA2 fin_list_ddl_noeud
|
||||
type_sortie_ddl_retenue= 0
|
||||
# debut de la liste des ddl etendus a considerer aux noeuds, (une liste de ddl), puis <fin_list_ddl_etendu_noeud>
|
||||
deb_list_ddl_etendu_noeud fin_list_ddl_etendu_noeud # fin des ddl etendu aux noeuds
|
||||
# debut de la liste des grandeurs particulieres a considerer aux noeuds, (une liste de string), puis <fin_list_GrandParticuliere_noeud>
|
||||
deb_list_GrandParticuliere_noeud fin_list_GrandParticuliere_noeud # fin des grandeurs particulieres aux noeuds
|
||||
fin_liste_ddl_et_noeud # fin des grandeurs aux noeuds
|
||||
debut_liste_ddl_ptinteg # ** debut des grandeurs aux elements
|
||||
# debut de la liste des elements et points d'integration, une liste de (un element, un numero de pt d'integ), puis <fin_list_NbElement_NbPtInteg>
|
||||
deb_list_NbElement_NbPtInteg 1 1 fin_list_NbElement_NbPtInteg
|
||||
# debut de la liste des ref d'elements, puis une liste de: nom <chaine de caracteres > + numero d'integ, puis <fin_list_ref_element>
|
||||
deb_list_ref_element fin_list_ref_element
|
||||
# debut de la liste des ref de ptinteg d'elements, puis une liste de: nom <chaine de caracteres > puis <fin_list_ref_ptinteg_element>
|
||||
deb_list_ref_ptinteg_element fin_list_ref_ptinteg_element
|
||||
# debut de la liste des ddl a considerer pour les elements, (une liste de ddl), puis <fin_list_ddl_element>
|
||||
deb_list_ddl_element EPS11 EPS22 EPS33 SIG11 fin_list_ddl_element # fin de la liste de ddl a considerer pour les elements
|
||||
# debut de la liste des grandeurs particulieres a considerer pour les elements, (une liste de string), puis <fin_list_GrandParticuliere_element>
|
||||
deb_list_GrandParticuliere_element fin_list_GrandParticuliere_element # fin des grandeurs particulieres aux elements
|
||||
# tableau de grandeurs evoluees aux elements a visualiser, un par maillage
|
||||
deb_list_GrandEvoluee_element fin_list_GrandEvoluee_element
|
||||
fin_liste_ddl_ptinteg # fin des grandeurs aux elements
|
||||
# informations particuliere dans le cas ou il y a une animation
|
||||
# type_xi indique si oui ou non les grandeurs a tracer sont aux noeuds (sinon c'est au elements)
|
||||
# x1 et x2 indiquent les noms des ddls des grandeurs en x et y. accroi_x1 et accroi_x2 indiquent
|
||||
# si oui ou non x1 et x2 represente l'accroissement entre 0 et t de la grandeur ou bien la grandeur elle meme.
|
||||
debut_info_particulier grandeur_au_noeud? 1 x1= NU_DDL x2= NU_DDL accroi_x1= 0 accroi_x2= 1 fin_info_particulier
|
||||
# un parametre de pilotage du style de sortie
|
||||
parametre_style_de_sortie 1
|
||||
# un parametre indiquant si les tenseurs sont en absolue (rep 1) ou suivant un repere ad hoc
|
||||
# (tangent pour les coques, suivant la fibre moyenne pour les element 1D )
|
||||
tenseur_en_absolue_ 0
|
||||
fin_grandeurs_maple # fin des grandeurs a visualiser au format maple
|
||||
|
||||
# ----------------------------- definition des parametres d'animation: ----------------
|
||||
debut_animation # un mot cle de debut de liste (debut_animation)
|
||||
actif 0 # <0 ou 1> indique si l'ordre est actif ou non
|
||||
# des parametres avec des valeurs: (sur une meme ligne)
|
||||
cycleInterval 8 # cycleInterval <un reel> (indique le temps en seconde du cycle de l'animation)
|
||||
fin_animation # un mot cle de fin
|
||||
|
||||
fin_visualisation_maple
|
||||
# =================================================================================
|
||||
# || fin de la visualisation maple ||
|
||||
# =================================================================================
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
fin_fichier_commande_visu # <<<<<< le mot cle <fin_fichier_commande_visu> permet
|
||||
# l'arret de la lecture des commandes, apres ce mot cle, aucune commande n'est lu, de plus
|
||||
# sans le mot cle de fin de fichier, le fichier n'est pas valide
|
||||
|
||||
###############################################################################################
|
||||
|
||||
|
|
@ -0,0 +1,80 @@
|
|||
dimension 3
|
||||
|
||||
|
||||
niveau_commentaire 3
|
||||
|
||||
|
||||
TYPE_DE_CALCUL ----------------------------------------------
|
||||
|
||||
dynamique_implicite avec plus lectureCommandesVisu
|
||||
|
||||
PARA_TYPE_DE_CALCUL
|
||||
hht= -0.05
|
||||
|
||||
< cube_1elt_npti8.her
|
||||
< cube_1elt_npti8.lis
|
||||
|
||||
# renumerotation_des_noeuds_
|
||||
|
||||
|
||||
les_courbes_1D ----------------------------------------------
|
||||
|
||||
rampe COURBEPOLYLINEAIRE_1_D
|
||||
Debut_des_coordonnees_des_points
|
||||
Coordonnee dim= 2 0. 0.
|
||||
Coordonnee dim= 2 0.001 1.
|
||||
Fin_des_coordonnees_des_points
|
||||
|
||||
choix_materiaux ----------------------------------------------
|
||||
|
||||
E_tout MAT_ELAS
|
||||
|
||||
materiaux ----------------------------------------------
|
||||
|
||||
MAT_ELAS ISOELAS
|
||||
210000. 0.3
|
||||
|
||||
|
||||
masse_volumique ----------------------------------------------
|
||||
|
||||
E_tout 8.7e-9
|
||||
|
||||
|
||||
charges ----------------------------------------------
|
||||
|
||||
|
||||
blocages ----------------------------------------------
|
||||
|
||||
#traction uniaxiale suivant X par deplacement impose
|
||||
N_droit UX
|
||||
N_arriere UY
|
||||
N_bas UZ
|
||||
N_gauche 'UX= COURBE_CHARGE: rampe ECHELLE: 0.01'
|
||||
|
||||
controle ----------------------------------------------
|
||||
|
||||
DELTAtMINI 1.e-7
|
||||
DELTAtMAXI 0.0001
|
||||
TEMPSFIN 0.001
|
||||
DELTAt 0.0001
|
||||
ITERATIONS 15
|
||||
PRECISION 1e-3
|
||||
SAUVEGARDE DERNIER_CALCUL
|
||||
MAXINCRE 99999999
|
||||
NORME Residu/Reaction_et_VarRes
|
||||
|
||||
|
||||
para_pilotage_equi_global ----------------------------------------------
|
||||
|
||||
|
||||
para_syteme_lineaire ----------------------------------------------
|
||||
|
||||
|
||||
para_affichage ----------------------------------------------
|
||||
|
||||
resultats ----------------------------------------------
|
||||
COPIE 0
|
||||
POINTS_INTEGRATION E_tout
|
||||
Green-Lagrange Almansi Cauchy_global Def_mixte_local Sigma_mixte_local
|
||||
|
||||
_fin_point_info_
|
|
@ -0,0 +1,80 @@
|
|||
#fichier au format maple6
|
||||
###############################################################################################
|
||||
# Visualisation elements finis : Herezh++ V6.713 #
|
||||
# Copyright (c) 1997-2015, Gerard Rio (gerard.rio@univ-ubs.fr) http://kleger.univ-ubs.fr/Herezh/ #
|
||||
# http://www-lg2m.univ-ubs.fr #
|
||||
###############################################################################################
|
||||
|
||||
|
||||
|
||||
# entete des donnees : informations gererales: on trouve successivement:
|
||||
# >> le nombre de grandeurs globales (peut etre nul) suivi des identificateurs
|
||||
# precedes du numero de colonne entre crochet
|
||||
# >> le nombre de maillages m, et dimension de l'espace de travail
|
||||
# puis pour chaque maillage,
|
||||
# >> le nombre de torseurs de reaction (peut etre nul), le nombre total de reel qui va etre ecrit
|
||||
# correspondant aux composantes des torseurs, puis les noms de ref associee suivi des positions
|
||||
# des composantes entre crochet accolees a un identificateur: R pour reaction, M pour moment
|
||||
# puis pour chaque maillage
|
||||
# >> le nombre de noeud n (peut etre nul) ou il y a des grandeurs en sortie ,
|
||||
# puis le nombre des grandeurs p1 correspondantes, la position entre crochet des coordonnees
|
||||
# et enfin l'idendificateur de ces grandeurs(p1 chaines de caractere)
|
||||
# precedes du numero de colonne correspondant entre crochet
|
||||
# puis pour chaque maillage
|
||||
# >> le nombre de couples element-pt_integ (peut etre nulle) ou il y a des grandeurs en sortie ,
|
||||
# les grandeurs aux elements sont decomposees en 2 listes: la premiere de quantite P2 correspondant
|
||||
# a des grandeurs generiques, la seconde de quantite P3 corresponds aux grandeurs specifiques,
|
||||
# on trouve donc a la suite du nombre d'element: le nombre P2, suivi de P2 identificateurs de ddl
|
||||
# chacun precedes du numero de colonne entre crochet
|
||||
# puis le nombre P3, suivi de P3 identificateurs+categorie+type (chaines de caracteres),
|
||||
# suivi entre crochet, de la plage des numeros de colonnes, correspondant
|
||||
# chacun sur une ligne differentes
|
||||
# ==== NB: pour les grandeurs specifique tensorielle: exemple d'ordre en 2D:
|
||||
# tenseur symetrique, A(1,1) A(2,1) A(2,2), non symetrique A(1,1) A(1,2) A(2,1) A(2,2)
|
||||
# en 3D c'est: tenseur symetrique, A(1,1) A(2,1) A(2,2) A(3,1) A(3,2) A(3,3)
|
||||
# non symetrique A(1,1) A(1,2) A(2,1) A(2,2) A(2,3) A(3,1) A(3,2) A(3,3)
|
||||
# ** dans le cas ou il n'y a qu'un seul increment en sortie, pour les grandeurs aux noeuds et aux elements,
|
||||
# ** les informations peuvent etre decoupees selon: une ligne = un noeud, et le temps n'est pas indique
|
||||
# ** ( cf: parametre_style_de_sortie = 0)
|
||||
|
||||
#====================================================================
|
||||
#|| recapitulatif des differentes grandeurs par colonne ||
|
||||
#====================================================================
|
||||
#---------------------------------- grandeur globales ------------------------------------
|
||||
#0 (nombre de grandeurs globales)
|
||||
#---------------------------------- maillage et dimension --------------------------------
|
||||
#1 3 (nombre de maillages et dimension)
|
||||
#---------------------------------- torseurs de reactions --------------------------------
|
||||
#0 0 (nombre de torseurs et nombre total de grandeurs associees)
|
||||
#
|
||||
#---------------------------------- grandeurs aux noeuds --------------------------------
|
||||
#1 2 (nombre de noeuds, nombre total de grandeurs associees)
|
||||
# noeud_8 [2]X [3]Y [4]Z [5]V2 [6]GAMMA2 ;
|
||||
#
|
||||
#---------------------------------- grandeurs aux elements ------------------------------
|
||||
#1 4 00 (nombre total d'elements, nombre totale de grandeurs associees, nombre de grandeurs particulieres, nombre de grandeurs tensorielles)
|
||||
# element_1 pt_integ_1: [8]X [9]Y [10]Z [11] EPS11 [12] EPS22 [13] EPS33 [14] SIG11
|
||||
#
|
||||
#
|
||||
#====================================================================
|
||||
#|| fin du recapitulatif des differentes grandeurs ||
|
||||
#====================================================================
|
||||
|
||||
# ensuite les donnees sont organisees sur differentes lignes, chaques lignes correspondant
|
||||
# a un calcul (par exemple un pas de temps), sur chaque ligne il y a m enregistrement, chacun
|
||||
# correspondant a un maillage. On trouve pour chaque enregistrement successivement :
|
||||
# s'il y a des grandeurs globales: le temps puis les grandeurs globales,
|
||||
# puis s'il y a des torseurs de reaction :
|
||||
# de nouveau le temps, les composantes de la resultante puis les composantes du moments
|
||||
# donc en 1D -> 1 reels (resultante), en 2D -> 3 reels (resultante 2, moment 1) et en 3D 6 reels
|
||||
# puis s'il y a des grandeurs aux noeuds: de nouveau le temps
|
||||
# les coordonnees a t du premier noeud suivi des p1 grandeurs correspondant au premier noeud
|
||||
# puis les coordonnees du second noeud, les p1 grandeurs etc. pour tous les noeuds
|
||||
# puis s'il y a des grandeur aux elements:
|
||||
# le temps, puis les coordonnees a t du point d'integration d'un element (pour les grandeurs generiques)
|
||||
# suivi des p2 grandeurs correspondantes puis les coordonnees a t du point d'integration
|
||||
# correspondant aux grandeurs specifiques suivi des p3 grandeurs correspondantes
|
||||
# puis les coordonnees d'un second point d'integration d'un element, les p2 grandeurs
|
||||
# etc. pour tous les points d'integration - element
|
||||
|
||||
1.000000000000e-03 1.010000000000e+00 9.970546131444e-01 9.970546131444e-01 -6.830835075784e-01 4.417870659731e+05 1.000000000000e-03 2.134381140592e-01 7.863521812200e-01 7.863521812200e-01 9.851975296540e-03 -2.958451104270e-03 -2.958451104270e-03 2.068222172026e+03
|
|
@ -0,0 +1,41 @@
|
|||
------------------------------------------------------
|
||||
Auteur
|
||||
------------------------------------------------------
|
||||
Julien Troufflard (troufflard@univ-ubs.fr)
|
||||
|
||||
------------------------------------------------------
|
||||
Mots-cles
|
||||
------------------------------------------------------
|
||||
traction uniaxiale
|
||||
dynamique explicite zhai
|
||||
Zhai
|
||||
ISOELAS
|
||||
|
||||
------------------------------------------------------
|
||||
But du test
|
||||
------------------------------------------------------
|
||||
test simple du mode de calcul : dynamique explicite Zhai
|
||||
""
|
||||
TYPE_DE_CALCUL
|
||||
dynamique_explicite_zhai
|
||||
|
||||
PARA_TYPE_DE_CALCUL
|
||||
phi_minus= 0.5 grand_phi= 0.5
|
||||
""
|
||||
|
||||
------------------------------------------------------
|
||||
Description du calcul
|
||||
------------------------------------------------------
|
||||
traction uniaxiale suivant X sur un cube 1x1x1 (1 element HEXAEDRE LINEAIRE)
|
||||
- loi elastique ISOELAS
|
||||
|
||||
-------------------------------------------------------------
|
||||
Grandeurs de comparaison
|
||||
-------------------------------------------------------------
|
||||
pour le noeud 8 :
|
||||
- vitesse : V2
|
||||
- acceleration : GAMMA2
|
||||
|
||||
pour le point d integration 1 de l element 1 :
|
||||
- deformations : EPS11 EPS22 EPS33
|
||||
- contrainte : SIG11
|
|
@ -0,0 +1,18 @@
|
|||
nom_maillage cube_1elt_npti8
|
||||
|
||||
noeuds
|
||||
8 NOEUDS
|
||||
|
||||
1 0 0 0
|
||||
2 0 0 1
|
||||
3 0 1 0
|
||||
4 0 1 1
|
||||
5 1 0 0
|
||||
6 1 0 1
|
||||
7 1 1 0
|
||||
8 1 1 1
|
||||
|
||||
elements
|
||||
1 ELEMENTS
|
||||
|
||||
1 HEXAEDRE LINEAIRE 5 7 3 1 6 8 4 2
|
|
@ -0,0 +1,158 @@
|
|||
# CORRESPONDANCE label => position
|
||||
#
|
||||
# gauche => X=1
|
||||
#
|
||||
# droit => X=0
|
||||
#
|
||||
# avant => Y=1
|
||||
#
|
||||
# arriere => Y=0
|
||||
#
|
||||
# haut => Z=1
|
||||
#
|
||||
# bas => Z=0
|
||||
#
|
||||
|
||||
N_avant 3 4 7 8
|
||||
|
||||
N_arriere 1 2 5 6
|
||||
|
||||
N_haut 2 4 6 8
|
||||
|
||||
N_bas 1 3 5 7
|
||||
|
||||
N_droit 1 2 3 4
|
||||
|
||||
N_gauche 5 6 7 8
|
||||
|
||||
N_haut_droit 2 4
|
||||
|
||||
N_haut_gauche 6 8
|
||||
|
||||
N_haut_arriere 2 6
|
||||
|
||||
N_haut_avant 4 8
|
||||
|
||||
N_bas_droit 1 3
|
||||
|
||||
N_bas_gauche 5 7
|
||||
|
||||
N_bas_arriere 1 5
|
||||
|
||||
N_bas_avant 3 7
|
||||
|
||||
N_arriere_droit 1 2
|
||||
|
||||
N_arriere_gauche 5 6
|
||||
|
||||
N_avant_droit 3 4
|
||||
|
||||
N_avant_gauche 7 8
|
||||
|
||||
N_haut_arriere_droit 2
|
||||
|
||||
N_haut_arriere_gauche 6
|
||||
|
||||
N_haut_avant_gauche 8
|
||||
|
||||
N_haut_avant_droit 4
|
||||
|
||||
N_bas_arriere_droit 1
|
||||
|
||||
N_bas_arriere_gauche 5
|
||||
|
||||
N_bas_avant_gauche 7
|
||||
|
||||
N_bas_avant_droit 3
|
||||
|
||||
N_to 1 2 3 4 5 6 7 8
|
||||
|
||||
E_avant 1
|
||||
|
||||
E_derriere 1
|
||||
|
||||
E_haut 1
|
||||
|
||||
E_bas 1
|
||||
|
||||
E_droit 1
|
||||
|
||||
E_gauche 1
|
||||
|
||||
E_haut_droit 1
|
||||
|
||||
E_haut_gauche 1
|
||||
|
||||
E_haut_arriere 1
|
||||
|
||||
E_haut_avant 1
|
||||
|
||||
E_bas_droit 1
|
||||
|
||||
E_bas_gauche 1
|
||||
|
||||
E_bas_arriere 1
|
||||
|
||||
E_bas_avant 1
|
||||
|
||||
E_arriere_droit 1
|
||||
|
||||
E_arriere_gauche 1
|
||||
|
||||
E_avant_droit 1
|
||||
|
||||
E_avant_gauche 1
|
||||
|
||||
E_haut_arriere_droit 1
|
||||
|
||||
E_haut_arriere_gauche 1
|
||||
|
||||
E_haut_avant_gauche 1
|
||||
|
||||
E_haut_avant_droit 1
|
||||
|
||||
E_bas_arriere_droit 1
|
||||
|
||||
E_bas_arriere_gauche 1
|
||||
|
||||
E_bas_avant_gauche 1
|
||||
|
||||
E_bas_avant_droit 1
|
||||
|
||||
E_to 1
|
||||
|
||||
F_avant 1 5
|
||||
|
||||
F_arriere 1 2
|
||||
|
||||
F_haut 1 4
|
||||
|
||||
F_bas 1 1
|
||||
|
||||
F_droit 1 6
|
||||
|
||||
F_gauche 1 3
|
||||
|
||||
A_haut_droit 1 11
|
||||
|
||||
A_haut_gauche 1 9
|
||||
|
||||
A_haut_arriere 1 12
|
||||
|
||||
A_haut_avant 1 10
|
||||
|
||||
A_bas_droit 1 3
|
||||
|
||||
A_bas_gauche 1 1
|
||||
|
||||
A_bas_arriere 1 4
|
||||
|
||||
A_bas_avant 1 2
|
||||
|
||||
A_arriere_droit 1 8
|
||||
|
||||
A_arriere_gauche 1 5
|
||||
|
||||
A_avant_droit 1 7
|
||||
|
||||
A_avant_gauche 1 6
|
|
@ -0,0 +1,116 @@
|
|||
###############################################################################################
|
||||
# Fichier de commande pour la visualisation elements finis #
|
||||
# Herezh++ V6.687 #
|
||||
# Copyright (c) 1997-2015, Gerard Rio (gerard.rio@univ-ubs.fr) http://kleger.univ-ubs.fr/Herezh/ #
|
||||
# http://www-lg2m.univ-ubs.fr #
|
||||
###############################################################################################
|
||||
|
||||
|
||||
|
||||
debut_fichier_commande_visu # >>>>>> le mot cle: <debut_fichier_commande_visu>
|
||||
# permet au programme de se positionner au debut du fichier, il est indispensable
|
||||
|
||||
|
||||
# =================================================================================
|
||||
# || ***** demande d'une visualisation maple: ***** ||
|
||||
# =================================================================================
|
||||
# un mot cle de debut (debut_visualisation_maple)
|
||||
# un mot cle de fin ( fin_visualisation_maple)
|
||||
# la seule presence de ces deux mots cle suffit a activer la visualisation maple
|
||||
debut_visualisation_maple
|
||||
|
||||
# ----------------------------- definition de la liste des increments a balayer: ----------------
|
||||
debut_list_increment # un mot cle de debut de liste
|
||||
actif 1 # <0 ou 1> indique si l'ordre est actif ou non
|
||||
# une liste d'entier separee par des blancs, ou le mot cle (tous_les_increments)
|
||||
# un mot cle de fin de liste ( fin_list_increment)
|
||||
dernier_increment fin_list_increment
|
||||
|
||||
# ----------------------------- choix des maillages a visualiser: ----------------
|
||||
# la liste est facultative, par defaut la visualisation concerne le premier maillage
|
||||
debut_choix_maillage # un mot cle de debut,
|
||||
actif 0 # <0 ou 1> indique si l'ordre est actif ou non
|
||||
# une liste d'entiers , puis <fin_choix_maillage>, sur une meme ligne
|
||||
1 fin_choix_maillage
|
||||
|
||||
# ----------------------------- definition des grandeurs a visualiser (maple): ----------------
|
||||
debut_grandeurs_maple # un mot cle de debut (debut_grandeurs_maple),
|
||||
actif 1 # <0 ou 1> indique si l'ordre est actif ou non
|
||||
# les grandeurs globales (energie, puissance ....) un mot cle de debut, le nom des grandeurs puis un mot de fin
|
||||
debut_grandeurs_globales fin_grandeurs_globales
|
||||
# ensuite pour chaque maillage:,
|
||||
# le numero du maillage <un entier>,
|
||||
# les infos pour la visualisation eventuelle des torseurs de reaction,
|
||||
# les infos pour la visualisation eventuelle aux noeud,
|
||||
# - tout d'abord les ddl principaux (position, deplacements, temperature etc.)
|
||||
# - puis les ddl etendus et particulieres qui peuvent representer des grandeurs diverses
|
||||
# les infos pour la visualisation eventuelle aux elements,
|
||||
# - tout d'abord les grandeurs generiques (deformations, contraintes etc.)
|
||||
# - puis les grandeurs particulieres, par exemple specifique a une loi de comp ou une mesure de def
|
||||
# enfin un mot cle de fin ( fin_grandeurs_maple)
|
||||
1 # le numero de maillage
|
||||
# les torseurs de reaction: un mot cle de debut: debut_list_torseur_reaction
|
||||
# une liste de nom <chaine de caracteres >, puis <fin_list_torseur_reaction>
|
||||
debut_list_torseur_reaction fin_list_torseur_reaction
|
||||
debut_liste_ddl_et_noeud # ** debut des ddl principaux aux noeuds
|
||||
# debut de la liste de noeuds, puis une liste de numero de noeud <entier>, puis <fin_list_noeud>
|
||||
deb_list_noeud 8 fin_list_noeud
|
||||
# debut de la liste des ref de noeuds, puis une liste de nom <chaine de caracteres >, puis <fin_list_ref_noeud>
|
||||
deb_list_ref_noeud fin_list_ref_noeud
|
||||
# debut de la liste des ddl a considerer aux noeuds, (une liste de ddl), puis <fin_list_ddl_noeud>
|
||||
deb_list_ddl_noeud V2 GAMMA2 fin_list_ddl_noeud
|
||||
type_sortie_ddl_retenue= 0
|
||||
# debut de la liste des ddl etendus a considerer aux noeuds, (une liste de ddl), puis <fin_list_ddl_etendu_noeud>
|
||||
deb_list_ddl_etendu_noeud fin_list_ddl_etendu_noeud # fin des ddl etendu aux noeuds
|
||||
# debut de la liste des grandeurs particulieres a considerer aux noeuds, (une liste de string), puis <fin_list_GrandParticuliere_noeud>
|
||||
deb_list_GrandParticuliere_noeud fin_list_GrandParticuliere_noeud # fin des grandeurs particulieres aux noeuds
|
||||
fin_liste_ddl_et_noeud # fin des grandeurs aux noeuds
|
||||
debut_liste_ddl_ptinteg # ** debut des grandeurs aux elements
|
||||
# debut de la liste des elements et points d'integration, une liste de (un element, un numero de pt d'integ), puis <fin_list_NbElement_NbPtInteg>
|
||||
deb_list_NbElement_NbPtInteg 1 1 fin_list_NbElement_NbPtInteg
|
||||
# debut de la liste des ref d'elements, puis une liste de: nom <chaine de caracteres > + numero d'integ, puis <fin_list_ref_element>
|
||||
deb_list_ref_element fin_list_ref_element
|
||||
# debut de la liste des ref de ptinteg d'elements, puis une liste de: nom <chaine de caracteres > puis <fin_list_ref_ptinteg_element>
|
||||
deb_list_ref_ptinteg_element fin_list_ref_ptinteg_element
|
||||
# debut de la liste des ddl a considerer pour les elements, (une liste de ddl), puis <fin_list_ddl_element>
|
||||
deb_list_ddl_element EPS11 EPS22 EPS33 SIG11 fin_list_ddl_element # fin de la liste de ddl a considerer pour les elements
|
||||
# debut de la liste des grandeurs particulieres a considerer pour les elements, (une liste de string), puis <fin_list_GrandParticuliere_element>
|
||||
deb_list_GrandParticuliere_element fin_list_GrandParticuliere_element # fin des grandeurs particulieres aux elements
|
||||
# tableau de grandeurs evoluees aux elements a visualiser, un par maillage
|
||||
deb_list_GrandEvoluee_element fin_list_GrandEvoluee_element
|
||||
fin_liste_ddl_ptinteg # fin des grandeurs aux elements
|
||||
# informations particuliere dans le cas ou il y a une animation
|
||||
# type_xi indique si oui ou non les grandeurs a tracer sont aux noeuds (sinon c'est au elements)
|
||||
# x1 et x2 indiquent les noms des ddls des grandeurs en x et y. accroi_x1 et accroi_x2 indiquent
|
||||
# si oui ou non x1 et x2 represente l'accroissement entre 0 et t de la grandeur ou bien la grandeur elle meme.
|
||||
debut_info_particulier grandeur_au_noeud? 1 x1= NU_DDL x2= NU_DDL accroi_x1= 0 accroi_x2= 1 fin_info_particulier
|
||||
# un parametre de pilotage du style de sortie
|
||||
parametre_style_de_sortie 1
|
||||
# un parametre indiquant si les tenseurs sont en absolue (rep 1) ou suivant un repere ad hoc
|
||||
# (tangent pour les coques, suivant la fibre moyenne pour les element 1D )
|
||||
tenseur_en_absolue_ 0
|
||||
fin_grandeurs_maple # fin des grandeurs a visualiser au format maple
|
||||
|
||||
# ----------------------------- definition des parametres d'animation: ----------------
|
||||
debut_animation # un mot cle de debut de liste (debut_animation)
|
||||
actif 0 # <0 ou 1> indique si l'ordre est actif ou non
|
||||
# des parametres avec des valeurs: (sur une meme ligne)
|
||||
cycleInterval 8 # cycleInterval <un reel> (indique le temps en seconde du cycle de l'animation)
|
||||
fin_animation # un mot cle de fin
|
||||
|
||||
fin_visualisation_maple
|
||||
# =================================================================================
|
||||
# || fin de la visualisation maple ||
|
||||
# =================================================================================
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
fin_fichier_commande_visu # <<<<<< le mot cle <fin_fichier_commande_visu> permet
|
||||
# l'arret de la lecture des commandes, apres ce mot cle, aucune commande n'est lu, de plus
|
||||
# sans le mot cle de fin de fichier, le fichier n'est pas valide
|
||||
|
||||
###############################################################################################
|
||||
|
||||
|
|
@ -0,0 +1,79 @@
|
|||
dimension 3
|
||||
|
||||
|
||||
niveau_commentaire 3
|
||||
|
||||
|
||||
TYPE_DE_CALCUL ----------------------------------------------
|
||||
|
||||
dynamique_explicite_zhai avec plus lectureCommandesVisu
|
||||
|
||||
PARA_TYPE_DE_CALCUL
|
||||
phi_minus= 0.5 grand_phi= 0.5
|
||||
|
||||
|
||||
< cube_1elt_npti8.her
|
||||
< cube_1elt_npti8.lis
|
||||
|
||||
# renumerotation_des_noeuds_
|
||||
|
||||
|
||||
les_courbes_1D ----------------------------------------------
|
||||
|
||||
rampe COURBEPOLYLINEAIRE_1_D
|
||||
Debut_des_coordonnees_des_points
|
||||
Coordonnee dim= 2 0. 0.
|
||||
Coordonnee dim= 2 0.001 1.
|
||||
Fin_des_coordonnees_des_points
|
||||
|
||||
choix_materiaux ----------------------------------------------
|
||||
|
||||
E_tout MAT_ELAS
|
||||
|
||||
materiaux ----------------------------------------------
|
||||
|
||||
MAT_ELAS ISOELAS
|
||||
210000. 0.3
|
||||
|
||||
|
||||
masse_volumique ----------------------------------------------
|
||||
|
||||
E_tout 8.7e-9
|
||||
|
||||
|
||||
charges ----------------------------------------------
|
||||
|
||||
|
||||
blocages ----------------------------------------------
|
||||
|
||||
#traction uniaxiale suivant X par deplacement impose
|
||||
N_droit UX
|
||||
N_arriere UY
|
||||
N_bas UZ
|
||||
N_gauche 'UX= COURBE_CHARGE: rampe ECHELLE: 0.01'
|
||||
|
||||
controle ----------------------------------------------
|
||||
|
||||
TEMPSFIN 0.001
|
||||
DELTAt COEF_PASCRITIQUE 0.95
|
||||
ITERATIONS 15
|
||||
PRECISION 1e-3
|
||||
SAUVEGARDE DERNIER_CALCUL
|
||||
MAXINCRE 99999999
|
||||
NORME Residu/Reaction_et_VarRes
|
||||
|
||||
|
||||
para_pilotage_equi_global ----------------------------------------------
|
||||
|
||||
|
||||
para_syteme_lineaire ----------------------------------------------
|
||||
|
||||
|
||||
para_affichage ----------------------------------------------
|
||||
|
||||
resultats ----------------------------------------------
|
||||
COPIE 0
|
||||
POINTS_INTEGRATION E_tout
|
||||
Green-Lagrange Almansi Cauchy_global Def_mixte_local Sigma_mixte_local
|
||||
|
||||
_fin_point_info_
|
|
@ -0,0 +1,80 @@
|
|||
#fichier au format maple6
|
||||
###############################################################################################
|
||||
# Visualisation elements finis : Herezh++ V6.713 #
|
||||
# Copyright (c) 1997-2015, Gerard Rio (gerard.rio@univ-ubs.fr) http://kleger.univ-ubs.fr/Herezh/ #
|
||||
# http://www-lg2m.univ-ubs.fr #
|
||||
###############################################################################################
|
||||
|
||||
|
||||
|
||||
# entete des donnees : informations gererales: on trouve successivement:
|
||||
# >> le nombre de grandeurs globales (peut etre nul) suivi des identificateurs
|
||||
# precedes du numero de colonne entre crochet
|
||||
# >> le nombre de maillages m, et dimension de l'espace de travail
|
||||
# puis pour chaque maillage,
|
||||
# >> le nombre de torseurs de reaction (peut etre nul), le nombre total de reel qui va etre ecrit
|
||||
# correspondant aux composantes des torseurs, puis les noms de ref associee suivi des positions
|
||||
# des composantes entre crochet accolees a un identificateur: R pour reaction, M pour moment
|
||||
# puis pour chaque maillage
|
||||
# >> le nombre de noeud n (peut etre nul) ou il y a des grandeurs en sortie ,
|
||||
# puis le nombre des grandeurs p1 correspondantes, la position entre crochet des coordonnees
|
||||
# et enfin l'idendificateur de ces grandeurs(p1 chaines de caractere)
|
||||
# precedes du numero de colonne correspondant entre crochet
|
||||
# puis pour chaque maillage
|
||||
# >> le nombre de couples element-pt_integ (peut etre nulle) ou il y a des grandeurs en sortie ,
|
||||
# les grandeurs aux elements sont decomposees en 2 listes: la premiere de quantite P2 correspondant
|
||||
# a des grandeurs generiques, la seconde de quantite P3 corresponds aux grandeurs specifiques,
|
||||
# on trouve donc a la suite du nombre d'element: le nombre P2, suivi de P2 identificateurs de ddl
|
||||
# chacun precedes du numero de colonne entre crochet
|
||||
# puis le nombre P3, suivi de P3 identificateurs+categorie+type (chaines de caracteres),
|
||||
# suivi entre crochet, de la plage des numeros de colonnes, correspondant
|
||||
# chacun sur une ligne differentes
|
||||
# ==== NB: pour les grandeurs specifique tensorielle: exemple d'ordre en 2D:
|
||||
# tenseur symetrique, A(1,1) A(2,1) A(2,2), non symetrique A(1,1) A(1,2) A(2,1) A(2,2)
|
||||
# en 3D c'est: tenseur symetrique, A(1,1) A(2,1) A(2,2) A(3,1) A(3,2) A(3,3)
|
||||
# non symetrique A(1,1) A(1,2) A(2,1) A(2,2) A(2,3) A(3,1) A(3,2) A(3,3)
|
||||
# ** dans le cas ou il n'y a qu'un seul increment en sortie, pour les grandeurs aux noeuds et aux elements,
|
||||
# ** les informations peuvent etre decoupees selon: une ligne = un noeud, et le temps n'est pas indique
|
||||
# ** ( cf: parametre_style_de_sortie = 0)
|
||||
|
||||
#====================================================================
|
||||
#|| recapitulatif des differentes grandeurs par colonne ||
|
||||
#====================================================================
|
||||
#---------------------------------- grandeur globales ------------------------------------
|
||||
#0 (nombre de grandeurs globales)
|
||||
#---------------------------------- maillage et dimension --------------------------------
|
||||
#1 3 (nombre de maillages et dimension)
|
||||
#---------------------------------- torseurs de reactions --------------------------------
|
||||
#0 0 (nombre de torseurs et nombre total de grandeurs associees)
|
||||
#
|
||||
#---------------------------------- grandeurs aux noeuds --------------------------------
|
||||
#1 2 (nombre de noeuds, nombre total de grandeurs associees)
|
||||
# noeud_8 [2]X [3]Y [4]Z [5]V2 [6]GAMMA2 ;
|
||||
#
|
||||
#---------------------------------- grandeurs aux elements ------------------------------
|
||||
#1 4 00 (nombre total d'elements, nombre totale de grandeurs associees, nombre de grandeurs particulieres, nombre de grandeurs tensorielles)
|
||||
# element_1 pt_integ_1: [8]X [9]Y [10]Z [11] EPS11 [12] EPS22 [13] EPS33 [14] SIG11
|
||||
#
|
||||
#
|
||||
#====================================================================
|
||||
#|| fin du recapitulatif des differentes grandeurs ||
|
||||
#====================================================================
|
||||
|
||||
# ensuite les donnees sont organisees sur differentes lignes, chaques lignes correspondant
|
||||
# a un calcul (par exemple un pas de temps), sur chaque ligne il y a m enregistrement, chacun
|
||||
# correspondant a un maillage. On trouve pour chaque enregistrement successivement :
|
||||
# s'il y a des grandeurs globales: le temps puis les grandeurs globales,
|
||||
# puis s'il y a des torseurs de reaction :
|
||||
# de nouveau le temps, les composantes de la resultante puis les composantes du moments
|
||||
# donc en 1D -> 1 reels (resultante), en 2D -> 3 reels (resultante 2, moment 1) et en 3D 6 reels
|
||||
# puis s'il y a des grandeurs aux noeuds: de nouveau le temps
|
||||
# les coordonnees a t du premier noeud suivi des p1 grandeurs correspondant au premier noeud
|
||||
# puis les coordonnees du second noeud, les p1 grandeurs etc. pour tous les noeuds
|
||||
# puis s'il y a des grandeur aux elements:
|
||||
# le temps, puis les coordonnees a t du point d'integration d'un element (pour les grandeurs generiques)
|
||||
# suivi des p2 grandeurs correspondantes puis les coordonnees a t du point d'integration
|
||||
# correspondant aux grandeurs specifiques suivi des p3 grandeurs correspondantes
|
||||
# puis les coordonnees d'un second point d'integration d'un element, les p2 grandeurs
|
||||
# etc. pour tous les points d'integration - element
|
||||
|
||||
1.000000000000e-03 1.010000000000e+00 9.970583790889e-01 9.970583790889e-01 -4.259581600240e-01 -8.796369095293e+07 1.000000000000e-03 2.134381140592e-01 7.863551513269e-01 7.863551513269e-01 9.851975296540e-03 -2.954651707768e-03 -2.954651707765e-03 2.069142795025e+03
|
|
@ -360,9 +360,9 @@ du texte...
|
|||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\subsection{Recherche de tests}\label{section_recherche_de_tests}
|
||||
|
||||
Un document pdf de nom \verb|documentation_tests.pdf| est présent à la racine du projet CVS. Il dresse la liste actuelle des tests et résume en quelques phrases leur contenu. Un index en fin de document permet de faire une recherche par mot-clé.\\
|
||||
Un document pdf de nom \verb|catalogue_tests.pdf| est présent à la racine du projet CVS. Il dresse la liste actuelle des tests et résume en quelques phrases leur contenu. Un index en fin de document permet de faire une recherche par mot-clé.\\
|
||||
|
||||
Ce document est rédigé automatiquement sur la base du contenus des fichiers README montré sur la figure \ref{format_fichier_README}.
|
||||
Ce document est rédigé automatiquement sur la base du contenu des rubriques "Auteur", "Mots-cles", "But du test" et "Description du calcul" des fichiers README (voir figure \ref{format_fichier_README}).
|
||||
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
@ -378,8 +378,8 @@ Les fichiers facultatifs d
|
|||
\item[$\bullet$] Un seul fichier d'extension \verb|.info| doit \^etre présent dans le répertoire. Ce fichier doit \^etre présent m\^eme s'il est vide.
|
||||
\item[$\bullet$] Pour chaque calcul, il est nécessaire de créer un fichier \verb|.CVisu| (\verb|.CVisu1|, \verb|.CVisu2|, etc...) m\^eme si celui-ci est vide. Ces fichiers servent non seulement à Herezh++ mais également au script \verb|Perl/test.pl| pour repérer les calculs à lancer (un calcul par fichier \verb|.CVisu|).
|
||||
\item[$\bullet$] tous les fichiers \verb|.CVisu|[i] et les fichiers facultatifs nécessaires à l'exécution d'un test (\verb|.verif|[i], \verb|.commande|[i], etc...) ont la m\^eme racine que le fichier \verb|.info| (par exemple, si on a le fichier \verb|nom_fichier.info|, l'éventuel fichier \verb|.verif1| doit avoir pour nom \verb|nom_fichier.verif1|)
|
||||
\item[$\bullet$] le fichier \verb|README| contient obligatoirement les rubriques \it But du test \rm et \it Description du calcul \rm montrées sur la figure \ref{format_fichier_README}. Ces deux rubriques serviront à générer automatiquement une documentation pdf (catalogue de tests). Dans le m\^eme but, les rubriques \it Auteur \rm et \it Mots-cles\rm, qui ne sont pas obligatoires, donnent des informations précieuses (merci de les renseigner).
|
||||
\item[] \bf Remarque importante : \rm ne pas écrire des lignes de 3 tirets ou plus (\verb|---| ou plus) dans le corps d'une rubrique.\\
|
||||
\item[$\bullet$] le fichier \verb|README| contient obligatoirement les rubriques "But du test" et "Description du calcul" montrées sur la figure \ref{format_fichier_README}. Ces deux rubriques serviront à générer automatiquement une documentation pdf (catalogue de tests). Dans le m\^eme but, les rubriques "Auteur" et "Mots-cles", qui ne sont pas obligatoires, donnent des informations utiles (merci de les renseigner).
|
||||
\item[] \bf Remarque importante : \rm ne pas écrire des lignes de 3 tirets ou plus (\verb|---| ou plus) dans le corps d'une rubrique. Ces lignes servent à repérer les titres de rubriques.\\
|
||||
\end{itemize}
|
||||
|
||||
|
||||
|
@ -482,13 +482,14 @@ utiliser le script \verb|verif_existence_repertoire_test.pl| au niveau du r
|
|||
\subsection{Fichiers obligatoires}\label{section_fichiers_obligatoires}
|
||||
|
||||
\subsubsection*{$\bullet$ \texttt{README} :}
|
||||
1) La trame du fichier est montrée sur la figure \ref{format_fichier_README}. La syntaxe de l'intitulé des deux rubriques obligatoires (en bleu) doit \^etre strictement respectée. Il est fortement encouragé de renseigner les rubriques \it Auteur \rm et \it Mots-cles\rm. Les autres rubriques sont indiquées à titre de proposition et pour des questions d'harmonie sur la forme d'un test à l'autre. Comme montré sur la figure \ref{format_fichier_README}, chaque titre de rubrique est précédé et suivi d'une ligne d'au moins trois tirets (\verb|---| et plus). Les lignes de tirets doivent \^etre réservées aux titres des rubriques (Ce motif sert à repérer la fin d'une rubrique. L'insertion d'une ligne de tirets dans le corps d'une rubrique mettra en défaut le script de génération automatique du catalogue de tests!!).\\
|
||||
|
||||
2) Dans les rubriques obligatoires, il est possible d'insérer des figures gr\^ace à l'utilisation des balises \verb|\figures:|, \verb|\legende:| et \verb|\fin_legende|. Ces figures appara\^itront dans le catalogue de tests. Une figure est constituée de un ou plusieurs fichiers image et d'une légende. Pour déclarer une figure, la ligne doit commencer par la balise \verb|\figures:| suivie du noms des fichiers image (il peut y en avoir plusieurs). Ensuite, sur la m\^eme ligne, on doit trouver la balise de début de légende \verb|\legende:|. La légende est constituée de tout le texte compris entre les balises \verb|\legende:| et \verb|\fin_legende|. A noter que le texte de cette légende peut \^etre écrit sur plusieurs lignes mais ces retours à la ligne ne seront pas pris en compte dans la mise en forme du document pdf. Les formats d'images sont ceux supportés par \verb|pdflatex| et \verb|\includegraphics|, c'est-à-dire typiquement : \verb|.pdf|, \verb|.png| et \verb|.jpg|. Les fichiers image doivent \^etre situés dans le répertoire du test (c'est-à-dire le m\^eme répertoire que le fichier \verb|README|). Concernant les dimensions des images, il faut savoir que le corps du texte du catalogue pdf a une largeur de 17cm et une hauteur de 24cm. Il est donc nécessaire de redimensionner les figures en fonction de ces longueurs car les dimensions de l'image seront utilisées telle quelle pour la génération du catalogue de tests. Par exemple, il est inutile d'insérer deux images à la fois de 9cm de large en espérant qu'elles soient cote à cote. L'idée est que les images ne soient pas trop grosses mais lisibles.\\
|
||||
1) La trame du fichier est montrée sur la figure \ref{format_fichier_README}. La syntaxe de l'intitulé des deux rubriques obligatoires "But du test" et "Description du calcul" doit \^etre strictement respectée. Il est fortement encouragé de renseigner les rubriques "Auteur" et "Mots-cles". Les autres rubriques sont indiquées à titre de proposition et pour des questions d'harmonie sur la forme d'un test à l'autre. Comme montré sur la figure \ref{format_fichier_README}, chaque titre de rubrique est précédé et suivi d'une ligne d'au moins trois tirets (\verb|---| et plus). Les lignes de tirets doivent \^etre réservées aux titres des rubriques (Ce motif sert à repérer la fin d'une rubrique. L'insertion d'une ligne de tirets dans le corps d'une rubrique mettra en défaut le script de génération automatique du catalogue de tests!!).\\
|
||||
|
||||
2) Dans les rubriques obligatoires, il est possible d'insérer des figures gr\^ace à l'utilisation des balises \verb|\figures:|, \verb|\legende:| et \verb|\fin_legende|. Ces figures appara\^itront dans le catalogue de tests. Une figure est constituée de un ou plusieurs fichiers image et d'une légende. Pour déclarer une figure, la ligne doit commencer par la balise "\verb|\figures:|" suivie du noms des fichiers image (il peut y en avoir plusieurs). Ensuite, sur la m\^eme ligne, on doit trouver la balise de début de légende "\verb|\legende:|". La légende est constituée de tout le texte compris entre les balises "\verb|\legende:|" et "\verb|\fin_legende|". A noter que le texte de cette légende peut \^etre écrit sur plusieurs lignes mais ces retours à la ligne ne seront pas pris en compte dans la mise en forme du document pdf. Les formats d'images sont ceux supportés par \verb|pdflatex| et \verb|\includegraphics|, c'est-à-dire typiquement : \verb|.pdf|, \verb|.png| et \verb|.jpg|. Les fichiers image doivent \^etre situés dans le répertoire du test (c'est-à-dire le m\^eme répertoire que le fichier \verb|README|). Concernant les dimensions des images, il faut savoir que le corps du texte du catalogue pdf a une largeur de 17cm et une hauteur de 24cm. Il est donc nécessaire de soit redimensionner les figures en fonction de ces longueurs, soit indiquer un facteur d'échelle entre crochets à la fin du nom de fichier (pas d'espace entre la fin du nom de fichier et les crochets : \verb|nom_fichier.pdf[0.5]|).\\
|
||||
Exemples :\\
|
||||
\hspace*{0.5cm} $>$ Exemple sur une ligne :\\
|
||||
\hspace*{1.5cm} \verb|\figures: maillage.pdf \legende: Aperçu du maillage \fin_legende|\\
|
||||
\hspace*{0.5cm} $>$ Exemple sur une ligne avec facteur d'échelle :\\
|
||||
\hspace*{1.5cm} \verb|\figures: maillage.pdf[0.6] \legende: Aperçu du maillage \fin_legende|\\
|
||||
\hspace*{0.5cm} $>$ Exemple multilignes :\\
|
||||
\hspace*{1.5cm} \verb|\figures: coupe_SIG11.pdf \legende: Vue en coupe de|\\
|
||||
\hspace*{1.5cm} \verb|la répartition des contraintes x \fin_legende|\\
|
||||
|
@ -603,7 +604,7 @@ Il est important de noter que cet ex
|
|||
|
||||
Cet exécutable peut \^etre programmé dans n'importe quel langage, mais pour éviter les problèmes de compilateur, il est préférable d'éviter les langages nécessitant une compilation (par exemple : C, C++, Fortran, etc...). Il est préférables d'utiliser les langages interprétés (par exemple : sh, zsh, Perl, Python, etc...).\\
|
||||
|
||||
\underline{Remarque} : le script \verb|.verif| étant lancé après le calcul, il peut tout à fait servir de moyen détourné pour modifier le fichier \verb|.info| avant le calcul suivant (par exemple, pour tester un mot-clé mais avec divers valeurs de paramètres). Voir exemple section \ref{section_exemple_test_5}.
|
||||
\underline{Remarque} : le script \verb|.verif| étant lancé après le calcul, il peut tout à fait servir de moyen détourné pour modifier le fichier \verb|.info| avant le calcul suivant (par exemple, pour tester un m\^eme mot-clé mais avec diverses valeurs de paramètres). Voir exemple section \ref{section_exemple_test_5}.
|
||||
|
||||
\end{itemize}
|
||||
|
||||
|
@ -665,7 +666,7 @@ Le script \verb|Perl/test.pl| lance un calcul Herezh++ avec l'option \verb|-n| s
|
|||
|
||||
Il ne s'agit pas d'un calcul classique. Donc, sauf cas particulier, la vérification sera faite via un script \verb|.verif| afin de comparer le fichier \verb|.info| créé à un fichier \verb|.info| de référence. Attention au fait que le fichier \verb|.info| de référence ne doit pas avoir l'extension \verb|.info| car il ne peut y avoir qu'un seul fichier \verb|.info| dans le répertoire. On peut par exemple utiliser l'extension \verb|.info.ref1|.\\
|
||||
|
||||
L'arborescence pour ce genre de test devrait avoir la forme suivante :\\
|
||||
Actuellement, il n'y a pas d'exemple dans le répertoire \verb|Batterie| mais l'arborescence pour ce genre de test devrait avoir la forme suivante :\\
|
||||
\hspace*{2cm}\begin{minipage}{\textwidth}
|
||||
\vspace*{0.2cm}
|
||||
\begin{tikzpicture}[%
|
||||
|
|
|
@ -632,7 +632,25 @@ sub recopie_rubrique_README {
|
|||
chomp;
|
||||
|
||||
#-----------------------------------------------
|
||||
#cas special : balise d ajout d une figure (saisie des fichiers figures et de la legende)
|
||||
#cas d une ligne blanche => incrementation du compteur et nouveau tour de boucle
|
||||
#-----------------------------------------------
|
||||
if($_ =~ /^\s*$/) {
|
||||
$nb_lignes_blanches++;
|
||||
next;
|
||||
}
|
||||
|
||||
|
||||
|
||||
#-----------------------------------------------
|
||||
# cas des lignes non blanches
|
||||
#-----------------------------------------------
|
||||
|
||||
#on vide le nombre de lignes blanches actuel
|
||||
print $handle_fic_destination "\\vspace*{\\baselineskip}\n" for(1 .. $nb_lignes_blanches);
|
||||
$nb_lignes_blanches = 0;
|
||||
|
||||
#-----------------------------------------------
|
||||
#1) cas special : balise d ajout d une figure (saisie des fichiers figures et de la legende)
|
||||
#-----------------------------------------------
|
||||
if(/^\s*\\figures:\s*(\S+(?:\s+\S+)*)\s*\\legende:/) {
|
||||
#noms des fichiers figures
|
||||
|
@ -675,18 +693,22 @@ sub recopie_rubrique_README {
|
|||
($_, $rep) = splitpath($fic_source);
|
||||
|
||||
#ecriture de l image (\includegraphics) et sa legende
|
||||
print $handle_fic_destination "\n";
|
||||
print $handle_fic_destination "\n";
|
||||
print $handle_fic_destination "\\begin{figure}[H]\n";
|
||||
print $handle_fic_destination "\\centering\n";
|
||||
#-- autant de includegraphics que de fichiers image
|
||||
# (on regarde si il y a un facteur d echelle a la fin du nom de fichier)
|
||||
foreach my $nom_fig (@nom_figures) {
|
||||
print $handle_fic_destination "\\includegraphics[]{$rep/$nom_fig}\n";
|
||||
#echelle par defaut = 1
|
||||
my $scale = 1.;
|
||||
#si le nom du fichier contient un facteur d echelle, on le prend en compte
|
||||
if($nom_fig =~ /\[\s*($format_reel)\s*\]$/) {
|
||||
$scale = $1;
|
||||
$nom_fig =~ s/\[\s*$format_reel\s*\]$//;#suppression de [facteur echelle] du nom du fichier
|
||||
}
|
||||
print $handle_fic_destination "\\includegraphics[scale=$scale]{$rep/$nom_fig}\n";
|
||||
}
|
||||
print $handle_fic_destination "\\caption{$legende}\n";
|
||||
print $handle_fic_destination "\\end{figure}\n";
|
||||
print $handle_fic_destination "\n";
|
||||
print $handle_fic_destination "\n";
|
||||
|
||||
#nouveau tour de la boucle SUBWHILE
|
||||
next SUBWHILE;
|
||||
|
@ -695,20 +717,12 @@ sub recopie_rubrique_README {
|
|||
|
||||
|
||||
#-----------------------------------------------
|
||||
#cas normal : ligne classique
|
||||
#2) cas normal : ligne classique
|
||||
#-----------------------------------------------
|
||||
#gestion des caracteres ou groupes de caracteres speciaux
|
||||
my $texte_a_ecrire = translate_to_latex($_);
|
||||
|
||||
#cas d une ligne blanche => incrementation du compteur
|
||||
if($texte_a_ecrire =~ /^\s*$/) {
|
||||
$nb_lignes_blanches++;
|
||||
}
|
||||
#sinon : cas d une ligne de texte => ecriture de $nb_lignes_blanches passages a la ligne suivi du texte
|
||||
else {
|
||||
#ecriture de $nb_lignes_blanches passages a la ligne \\
|
||||
print $handle_fic_destination "\\\\" for(1 .. $nb_lignes_blanches);
|
||||
$nb_lignes_blanches = 0;#reset du compteur
|
||||
#gestion des caracteres ou groupes de caracteres speciaux
|
||||
my $texte_a_ecrire = translate_to_latex($_);
|
||||
|
||||
#ecriture du texte (suivi d un passage a la ligne pour respecter la forme du README)
|
||||
print $handle_fic_destination "$texte_a_ecrire\\\\\n";
|
||||
}
|
||||
|
@ -811,6 +825,15 @@ sub translate_to_latex {
|
|||
# (important : ne pas oublier de l option "g" a la fin de l operateur de substitution => $string =~ s/bla bla/ha ha/g; )
|
||||
#--------------------------------------------------------------------------------
|
||||
#--------------------------------------------------------------------------------
|
||||
##############################################################################################
|
||||
### IMPORTANT : la ligne ci-dessous traite le cas des antislash. Il faut absolument
|
||||
### ne rien mettre avant ce traitement car les substitutions qui suivent
|
||||
### rajoutent des antislash (et ceux-la, il ne faut pas les remplacer par \backslash)
|
||||
##############################################################################################
|
||||
$string =~ s/\\/\$\\backslash\$/g;#anti-slash (solution : caractere special \backslash entre dollars)
|
||||
|
||||
$string =~ s/\%/\\\%/g;#pourcent (solution : rajout d un antislash devant => \%)
|
||||
$string =~ s/\#/\\\#/g;#diese (solution : rajout d un antislash devant => \#)
|
||||
$string =~ s/_/\$\\_\$/g;#tiret bas (solution : antislash devant + entre dollars)
|
||||
$string =~ s/\^($format_reel)/\$\^$1\$/g;#cas d un exposant mathematique : symbole circonflexe suivi d un nombre (solution : entre dollars)
|
||||
$string =~ s/([<>])/\$$1\$/g;#symboles inferieur et superieur (solution : entre dollars)
|
||||
|
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in a new issue