diff --git a/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/LOI_VIA_UMAT_1.CVisu1 b/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/LOI_VIA_UMAT_1.CVisu1 new file mode 100644 index 0000000..efbda17 --- /dev/null +++ b/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/LOI_VIA_UMAT_1.CVisu1 @@ -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: + # 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 , 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 , + # 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 , puis + 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 , puis + deb_list_noeud fin_list_noeud + # debut de la liste des ref de noeuds, puis une liste de nom , puis + deb_list_ref_noeud fin_list_ref_noeud + # debut de la liste des ddl a considerer aux noeuds, (une liste de ddl), puis + deb_list_ddl_noeud 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 + 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 + 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 + deb_list_NbElement_NbPtInteg 1 1 fin_list_NbElement_NbPtInteg + # debut de la liste des ref d'elements, puis une liste de: nom + numero d'integ, puis + deb_list_ref_element fin_list_ref_element + # debut de la liste des ref de ptinteg d'elements, puis une liste de: nom puis + 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 + 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 + 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 (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 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 + + ############################################################################################### + + diff --git a/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/LOI_VIA_UMAT_1.info b/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/LOI_VIA_UMAT_1.info new file mode 100644 index 0000000..0480c91 --- /dev/null +++ b/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/LOI_VIA_UMAT_1.info @@ -0,0 +1,179 @@ +# +# etude de la traction simple d'un cube trilineaire en statique +# +#------------------------------------- +# definition de de la dimension | +# elle peut être 1 ou 2 ou 3 | +#------------------------------------- + +dimension 3 + +# def du niveau de commentaire +niveau_commentaire 3 #0 + + +TYPE_DE_CALCUL + +non_dynamique avec plus lectureCommandesVisu + +< cube111.her + +les_courbes_1D + C1_fonction_T COURBEPOLYLINEAIRE_1_D + Debut_des_coordonnees_des_points + Coordonnee dim= 2 -34. 0.006 + Coordonnee dim= 2 -29. 0.057 + Coordonnee dim= 2 -17. 0.127 + Coordonnee dim= 2 -13. 0.156 + Coordonnee dim= 2 -9. 0.282 + Coordonnee dim= 2 0.5 0.465 + Coordonnee dim= 2 10. 0.547 + Coordonnee dim= 2 20. 0.556 + Coordonnee dim= 2 80. 0.607 + Fin_des_coordonnees_des_points + + C2_fonction_T COURBEPOLYLINEAIRE_1_D + Debut_des_coordonnees_des_points + Coordonnee dim= 2 -34. 0.255 + Coordonnee dim= 2 -29. 0.255 + Coordonnee dim= 2 -17. 0.255 + Coordonnee dim= 2 -13. 0.305 + Coordonnee dim= 2 -9. 0.101 + Coordonnee dim= 2 0.5 0.008 + Coordonnee dim= 2 10. 0.021 + Coordonnee dim= 2 20. 0.065 + Coordonnee dim= 2 80. 0.062 + Fin_des_coordonnees_des_points + + C3_fonction_T COURBEPOLYLINEAIRE_1_D + Debut_des_coordonnees_des_points + Coordonnee dim= 2 -34. 23.128 + Coordonnee dim= 2 -29. 43.128 + Coordonnee dim= 2 -17. 23.128 + Coordonnee dim= 2 -13. 18.175 + Coordonnee dim= 2 -9. 10.426 + Coordonnee dim= 2 0.5 0.031 + Coordonnee dim= 2 10. 0.003 + Coordonnee dim= 2 20. 0.008 + Coordonnee dim= 2 80. 0.014 + Fin_des_coordonnees_des_points + + +choix_materiaux + +#------------------------------------- +# Elements | Materiau | +#------------------------------------- + E_to MATE2 +# E_to H_AVEC_T_C1_C2_C3 +# E_to acier + + + materiaux ---------------- + + + MATE2 LOI_VIA_UMAT + +# ---------------------------------------------------------- +# | exemple de loi de comportement defini en Umat | +# | via un processus qui dialogue avec herezh++ | +# ---------------------------------------------------------- + nom_de_la_loi= H_AVEC_T_C1_C2_C3 categorie= CAT_THERMO_MECANIQUE dim_loi= 3 +# utilisation_umat_interne +# nom_pipe_envoi= pipe_envoi nom_pipe_reception= pipe_reception + fin_loi_Umat + + +#--------------------------------------------------- +# Nom Materiau | Type loi | Potentiel | +#--------------------------------------------------- + acier ISOELAS + +#--------------------- +# E | nu | +#--------------------- + 210000. 0.3 + +#------------------------------------------ +# Nom Materiau | Type loi | +#------------------------------------------ + + +#C1, C2, C3 dependant T +H_AVEC_T_C1_C2_C3 HART_SMITH3D + C1= C1_thermo_dependant_ C1_fonction_T + C2= C2_thermo_dependant_ C2_fonction_T + C3= C3_thermo_dependant_ C3_fonction_T + K= 0 type_potvol_ 4 + + +masse_volumique +#----------- +# RHO | +#----------- + E_to 1.00 + +charges +#----------------------------------------------------------------- +# Noeuds | Type de force : | Vecteur force | +# | pression,ponctuelle,uniforme | | +#----------------------------------------------------------------- +#F_haut UNIFORME 0.0 0.0 1.40 + + +blocages +#-------------------------------------------------------------------- +# Noeuds blocage +#------------------------------------------------------------------- +N_tout 'TEMP= 80' + +N_bas UZ # blocage avec deux symétries +N_arriere UY # une par rapport au plan xz +N_droit UX # une par rapport au plan yz +N_haut 'UZ=0.2' # même déplacement suivant les trois plans restant + + + typecharge ------------ +#------------------------- +# NOM DU | temps | +# TYPE | | +#------------------------ + TYPE1 1. + + controle ------------ +#--------------------------- +# PARAMETRE | VALEUR | +#--------------------------- +SAUVEGARDE 1 +DELTAtMAXI 0.1 +TEMPSFIN 1. +DELTAt 0.1 +MULTIPLICATEUR 10. +ITERATIONS 20 +PRECISION 1.e-3 +NORME Residu/PVExterne +VARIATION_CHARGE_EXTERNE_SUR_RAIDEUR 1 + + + + para_pilotage_equi_global ------------ +#--------------------------- +# PARAMETRE | VALEUR | +#--------------------------- +FACTEUR_AUGMENTATION 1. +NB_BONNE_CONVERGENCE 20 +NB_ITER_POUR_BONNE_CONVERGENCE 1 +INIT_COMP_TANGENT_SIMPLE -1 + + +# resultats ----------- +#--------------------------- +# PARAMETRE | VALEUR | +#--------------------------- + +resultats pas_de_sortie_finale_ +COPIE 0 + + +_fin_point_info_ + diff --git a/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/LOI_VIA_UMAT_1.posttrait1 b/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/LOI_VIA_UMAT_1.posttrait1 new file mode 100755 index 0000000..bfbff46 --- /dev/null +++ b/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/LOI_VIA_UMAT_1.posttrait1 @@ -0,0 +1,52 @@ +#!/usr/bin/env perl +use strict; +use warnings; +use English; +use File::Basename; +use Cwd; +my $NOM_PROG = basename $PROGRAM_NAME; + +# +# +# le but de ce script est de tuer (kill -9) le processus Herezh Umat_Hz.info +# remarque : l executable Herezh a ete lance par le script LOI_VIA_UMAT_1.pretrait1 via +# un lien symoblique dont le nom le rend facilement reperable pour faire un kill du processus +# +# +# + + +#chemin absolu vers l executable Herezh +my $hzchemin = shift(@ARGV); + +#nom du fichier .info +my $finfo = shift(@ARGV); + +#nom du fichier .log +my $flog = shift(@ARGV); + + + +#lien symbolique qui a ete utilise pour lancer le processus Herezh UMAT dans le script LOI_VIA_UMAT_1.pretrait1 +# (voir script LOI_VIA_UMAT_1.pretrait1) +my $lien_symbolique_HZ = basename $hzchemin; +$_ = basename cwd; +$lien_symbolique_HZ = $_.'_'.$lien_symbolique_HZ; + + +#recuperation du processus Herezh UMAT (par reconnaissance de la chaine $lien_symbolique_HZ) +my @processus = qx(ps -U $ENV{USER} -o pid,%cpu,command | grep $lien_symbolique_HZ | grep -v grep); + + +#si ce processus tourne encore, on le kill +if($#processus != -1) { + foreach my $processus (@processus) { + next if(not $processus =~ /^\s*(\d+)/); + my $pid = $1; + kill("KILL", $pid); + print "Attention (prog:$NOM_PROG) : le processus Herezh Umat_HZ.info tournait encore (suppression par kill -9)...\n\n"; + } +} + +#reussite du script +print "resultat posttrait : OK\n"; diff --git a/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/LOI_VIA_UMAT_1.pretrait1 b/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/LOI_VIA_UMAT_1.pretrait1 new file mode 100755 index 0000000..3113954 --- /dev/null +++ b/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/LOI_VIA_UMAT_1.pretrait1 @@ -0,0 +1,102 @@ +#!/usr/bin/env perl +use strict; +use warnings; +use English; +use File::Basename; +use Cwd; +my $NOM_PROG = basename $PROGRAM_NAME; + +# +# +# les buts de ce script sont : +# 1- creer les pipes nommes pour le dialogue Herezh-Herezh (mkfifo) +# 2- lancer le processus Herezh Umat_HZ.info (qui sert d UMAT pour le vrai calcul Herezh de ce test LOI_VIA_UMAT_1.info) +# 3- s assurer que le processus Umat_HZ.info fonctionne avant de quitter +# +# remarque1 : on lance le processus Herezh Umat_HZ.info via le lien symbolique $lien_symbolique_HZ +# dont le nom sera facile a reperer pour le script de post-traitement LOI_VIA_UMAT_1.posttrait1 +# (car le script LOI_VIA_UMAT_1.posttrait1 aura pour but de tuer ce processus apres le calcul LOI_VIA_UMAT_1.info) +# +# remarque2 : le processus Herezh Umat_HZ.info est lance dans un processus fils (fork) pour pouvoir le laisser +# tourner en fond de tache et quitter ce script +# + + +#chemin absolu vers l executable Herezh +my $hzchemin = shift(@ARGV); + +#nom du fichier .info +my $finfo = shift(@ARGV); + + + +#forcer a vider le buffer (autoflush) +$| = 1; + + + +#creation des pipes nommes (mkfifo) +system("mkfifo -m+wr Umat_envoi_Hz"); +if($!) { + print "\nErreur (prog:$NOM_PROG) : probleme dans la creation du pipe nomme Umat_envoi_Hz ($!)...\n\n"; + print "resultat pretrait : ECHEC\n"; + exit; +} +system("mkfifo -m+wr Umat_reception_Hz"); +if($!) { + print "\nErreur (prog:$NOM_PROG) : probleme dans la creation du pipe nomme Umat_reception_Hz ($!)...\n\n"; + print "resultat pretrait : ECHEC\n"; + exit; +} + + +#changement d extension (suppression de l extension .a_renommer pour faire de ce fichier un .info exploitable) +system("mv -f Umat_HZ.info.a_renommer Umat_HZ.info"); + + +#lien symbolique vers Herezh pour rendre le nom de cette commande unique +my $lien_symbolique_HZ = basename $hzchemin; +$_ = basename cwd; +$lien_symbolique_HZ = $_.'_'.$lien_symbolique_HZ; +system("ln -s $hzchemin $lien_symbolique_HZ"); + + +#lancement du processus Herezh Umat dans un processus fils (fork) +system("rm -f $lien_symbolique_HZ.com"); +my $pid_UMAT_HZ = fork(); + # + #le bloc suivant ne concerne que le processus fils + if($pid_UMAT_HZ == 0) { + system("$lien_symbolique_HZ -f Umat_HZ.info"); + system("echo 1 > $lien_symbolique_HZ.com"); + exit; + } + + +#apres un temps de pause, on regarde si le processus Herezh tourne +select(undef, undef, undef, 0.5); +my $cpt_probleme = 0; +while(join('', qx(ps | grep $lien_symbolique_HZ | grep -v grep)) eq '') { + select(undef, undef, undef, 0.5); + $cpt_probleme++; + if($cpt_probleme == 50) { + print "\nErreur (prog:$NOM_PROG) : le processus Herezh Umat_HZ.info ne se lance pas (ou alors s est arrete prematurement)...\n\n"; + print "resultat pretrait : ECHEC\n"; + exit; + } +} + + +#apres un nouveau temps de pause, on regarde si le fichier $lien_symbolique_HZ.com a ete cree +# si oui, ca veut dire que le processus Herezh Umat s est arrete => donc il y a un probleme +select(undef, undef, undef, 0.5); +if(-e "$lien_symbolique_HZ.com") { + print "\nErreur (prog:$NOM_PROG) : le processus Herezh Umat_HZ.info s est peut-etre arrete prematurement...\n\n"; + print "resultat pretrait : ECHEC\n"; + exit; +} + + + +#reussite du script +print "resultat pretrait : OK\n"; diff --git a/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/LOI_VIA_UMAT_1_princ.maple.ref1 b/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/LOI_VIA_UMAT_1_princ.maple.ref1 new file mode 100644 index 0000000..aaf3757 --- /dev/null +++ b/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/LOI_VIA_UMAT_1_princ.maple.ref1 @@ -0,0 +1,78 @@ +#fichier au format maple6 +############################################################################################### +# Visualisation elements finis : Herezh++ V6.745 # +# 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 -------------------------------- +#0 0 (nombre de noeuds, nombre total de grandeurs associees) +#---------------------------------- 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: [2]X [3]Y [4]Z [5] EPS11 [6] EPS22 [7] EPS33 [8] 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+00 2.535879954109e+00 9.464032830629e+00 9.464101615138e+00 1.527727305432e-01 1.527727305432e-01 1.527777777778e-01 -6.884868259288e-06 diff --git a/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/README b/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/README new file mode 100644 index 0000000..1d314f3 --- /dev/null +++ b/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/README @@ -0,0 +1,50 @@ +------------------------------------------------------ +Auteur +------------------------------------------------------ +Gérard Rio (gerard.rio@univ-ubs.fr) +Julien Troufflard (troufflard@univ-ubs.fr) + + +------------------------------------------------------ +Mots-cles +------------------------------------------------------ +cube unitaire +traction uniaxiale +statique +non_dynamique +LOI_VIA_UMAT +thermo dependance + + +------------------------------------------------------ +But du test +------------------------------------------------------ +test simple d une loi de comportement externe LOI_VIA_UMAT dans le cas +d un dialogue Herezh-Herezh en prenant en compte une thermo dependance: +"" + MAT_UMAT LOI_VIA_UMAT + nom_de_la_loi= acier categorie= CAT_THERMO_MECANIQUE dim_loi= 3 + fin_loi_Umat +"" + +------------------------------------------------------ +Description du calcul +------------------------------------------------------ +mise en donnees : + traction uniaxiale suivant Z sur un cube de coté 10 (1 element HEXAEDRE LINEAIRE) + - loi hyper elastique HART_SMITH3D, avec les trois coefficients = une fonction de la temperature + +NB: il est possible d'utiliser la loi en interne : cf. le fichier .info + +------------------------------------------------------- +Informations sur les fichiers facultatifs +------------------------------------------------------- +idem Test_R_LOI_VIA_UMAT_1 + + +------------------------------------------------------- +Grandeurs de comparaison +------------------------------------------------------- +pour le point d integration 1 de l element 1 : + - deformations : EPS11 EPS22 EPS33 + - contrainte : SIG11 diff --git a/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/Umat_HZ.info.a_renommer b/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/Umat_HZ.info.a_renommer new file mode 100644 index 0000000..9c7429f --- /dev/null +++ b/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/Umat_HZ.info.a_renommer @@ -0,0 +1,104 @@ +# +# l extension .a_renommer sera supprimee +# pour faire de ce fichier un .info +# (pour eviter d avoir 2 fichiers .info +# au debut de ce test, car ce n est pas +# autorise) +# +# + +dimension 3 + + +niveau_commentaire 3 + + +TYPE_DE_CALCUL +umat_abaqus + + +noeuds +1 NOEUDS +1 0 0 0 + +elements +1 ELEMENTS + +1 POINT CONSTANT 1 + + +les_courbes_1D + C1_fonction_T COURBEPOLYLINEAIRE_1_D + Debut_des_coordonnees_des_points + Coordonnee dim= 2 -34. 0.006 + Coordonnee dim= 2 -29. 0.057 + Coordonnee dim= 2 -17. 0.127 + Coordonnee dim= 2 -13. 0.156 + Coordonnee dim= 2 -9. 0.282 + Coordonnee dim= 2 0.5 0.465 + Coordonnee dim= 2 10. 0.547 + Coordonnee dim= 2 20. 0.556 + Coordonnee dim= 2 80. 0.607 + Fin_des_coordonnees_des_points + + C2_fonction_T COURBEPOLYLINEAIRE_1_D + Debut_des_coordonnees_des_points + Coordonnee dim= 2 -34. 0.255 + Coordonnee dim= 2 -29. 0.255 + Coordonnee dim= 2 -17. 0.255 + Coordonnee dim= 2 -13. 0.305 + Coordonnee dim= 2 -9. 0.101 + Coordonnee dim= 2 0.5 0.008 + Coordonnee dim= 2 10. 0.021 + Coordonnee dim= 2 20. 0.065 + Coordonnee dim= 2 80. 0.062 + Fin_des_coordonnees_des_points + + C3_fonction_T COURBEPOLYLINEAIRE_1_D + Debut_des_coordonnees_des_points + Coordonnee dim= 2 -34. 23.128 + Coordonnee dim= 2 -29. 43.128 + Coordonnee dim= 2 -17. 23.128 + Coordonnee dim= 2 -13. 18.175 + Coordonnee dim= 2 -9. 10.426 + Coordonnee dim= 2 0.5 0.031 + Coordonnee dim= 2 10. 0.003 + Coordonnee dim= 2 20. 0.008 + Coordonnee dim= 2 80. 0.014 + Fin_des_coordonnees_des_points + + +choix_materiaux +E_tout H_AVEC_T_C1_C2_C3 + + +materiaux + +#C1, C2, C3 dependant T +H_AVEC_T_C1_C2_C3 HART_SMITH3D + C1= C1_thermo_dependant_ C1_fonction_T + C2= C2_thermo_dependant_ C2_fonction_T + C3= C3_thermo_dependant_ C3_fonction_T + K= 0 type_potvol_ 4 + +masse_volumique +E_tout 1. + + +charges + + +blocages + +N_tout TEMP 0 + + +controle +SAUVEGARDE 1 + + +resultats pas_de_sortie_finale_ +COPIE 0 + + +_fin_point_info_ diff --git a/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/ancienNom b/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/ancienNom new file mode 100644 index 0000000..96ea653 --- /dev/null +++ b/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/ancienNom @@ -0,0 +1 @@ +LOI_VIA_UMAT_1 \ No newline at end of file diff --git a/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/cube111.her b/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/cube111.her new file mode 100644 index 0000000..3a5f9a9 --- /dev/null +++ b/Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/LOI_VIA_UMAT/Test_R_LOI_VIA_UMAT_THERMO_DEPENDANTE/cube111.her @@ -0,0 +1,131 @@ + +############################################################################# +# # +# STAMM # +# (maillage automatique de pieces simples) # +############################################################################# +# Copyright © 1997-2005 Gerard Rio, gerard.rio@univ-ubs.fr # +# All rights reserved. http://www-lg2m.univ-ubs.fr/~rio # +# # +############################################################################# +# version 02 , compatible avec la version Herezh++5.82 + + + # ---------------------------------------------------------------- + # | construction automatique d'un maillage 3D | + # | pour une utilisation par herezh++ | + # ---------------------------------------------------------------- + # prisme de dimension : 10 x 10 x 10 ( 1 x 1 x 1 elements ) + # geometrie prismatique, decoupage en hexaedre(s), interpolation lineaire. + + noeuds ------------ + 8 NOEUDS + + +#--------------------------------------------------------------- +#|NO DU| X | Y | Z | +#|NOEUD| | | | +#--------------------------------------------------------------- + 1 0 0 0 + 2 0 0 10 + 3 0 10 0 + 4 0 10 10 + 5 10 0 0 + 6 10 0 10 + 7 10 10 0 + 8 10 10 10 + + # references des noeuds + +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 + + + # les elements + + elements ---------- + 1 ELEMENTS + #---------------------------------------------------------------------- + #| NO | | | + #|ELTS | type element | Noeuds | + #---------------------------------------------------------------------- + 1 HEXAEDRE LINEAIRE 5 7 3 1 6 8 4 2 + + + + # references des elements + +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 + + # references des faces et arretes d'elements + +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 +