* fichier : mazars_compression_cyclique.dgibi
************************************************************************
* Cas test elementaire pour la loi d'endommagement de Mazars *
* Essai de compression simple cyclique *
* *
* Le test est realise avec plusieurs modes de calcul : *
* 1) 3D volumique *
* 2) 3D poutre a fibre *
* 3) 2D contraintes planes *
* 4) 2D axisymetrique *
* 5) 2D poutre a fibre *
* *
* ITRAC1 : VRAI => affichage resultats *
* IPSC1 : VRAI => affichage resultats dans un PostScript Couleur *
************************************************************************
** Options pour les traces
ITRAC1 = FAUX ;
IPSC1 = VRAI ;
SI IPSC1 ;
FINSI ;
** Sortie sur Erreur 1152 "Solution calculee non conforme par rapport a la solution de reference"
IERR = FAUX ;
** Liste des modes de calcul a traiter
*nh145313
*lcas = LECT 1 ; COMM '3D volumique' ;
*lcas = LECT 2 ; COMM '3D poutre a fibre' ;
*lcas = LECT 3 ; COMM '2D contraintes planes' ;
*lcas = LECT 4 ; COMM '2D axisymetrique' ;
*lcas = LECT 5 ; COMM '2D poutre a fibre' ;
** Parametres geometriques
long = 1. ;
epai = 0.1 ;
** Parametres materiau
you = 20.E9 ;
nu = 0.2 ;
epd0 = 8.E-5 ;
at = 1. ;
ac = 1.5 ;
bt = 8000. ;
bc = 1550. ;
beta = 1. ;
*nh145313
** Paramètres chargement
umax = -5.E-3 ;
** Legende courbes
tdess = 'TABLE' ;
tdess.'TITRE' = 'TABLE' ;
tdess. 1 = 'MARQ LOSA' ;
tdess.'TITRE'.
1 = MOT 'Calcul'
; tdess. 2 = 'MARQ CROI' ;
tdess.'TITRE'.
2 = MOT 'Reference'
;
**************** C A S #1 : 3 D V O L U M I Q U E ****************
** Options generales
** Maillage
p1 = 0. 0. 0. ;
p2 = 0. long 0. ;
sgauche
= l12
TRAN 1 (0.
0.
long) ; mail
= sgauche
VOLU '
TRAN'
1 (long
0.
0.
) ; p3
= sdroite
POIN 'PROC'
(long
0.
0.
) ;*nh145313
cadr1
= COUL ((0.
1.05 1.05) ET (1.
1.05 1.05)) 'BLAN'
;rep1
= @REPERE (-0.55 -0.55 0.
) 'TURQ'
;SI ITRAC1 ;
TRAC 'QUAL'
(cadr1
ET rep1
ET mail
ET (sgauche
COUL 'VERT'
) ET (sdroite
COUL 'ROUG'
)) '
TITR' '
[3D V
] Maillage'
; FINSI ;
** Modele et caracteristiques materiau
mo
= MODE mail 'MECANIQUE' 'ELASTIQUE' 'ENDOMMAGEMENT' 'MAZARS'
; ma
= MATE mo 'YOUN' you 'NU' nu 'KTR0' epd0 'ACOM' ac 'BCOM' bc 'ATRA' at 'BTRA' bt 'BETA' beta
;
** Blocages
blgauche
= BLOQ 'UX' sgauche
; bldroite
= BLOQ 'UX' sdroite
; blrig
= (BLOQ 'UY' 'UZ' p1
) ET (BLOQ 'UZ' p2
) ; bl = blgauche ET bldroite ET blrig ;
** Chargements
didroite
= DEPI bldroite umax
; ec1
= EVOL '
MANU'
(PROG 0.
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.
) (PROG 0.
0.2 0.
0.4 0.
0.6 0.
0.8 0.
1.
0.
) ; cha
= CHAR 'DIMP' didroite ec1
;
** Tracé des blocages et du chargement
mor
= MODE re0 'MECANIQUE' 'BARR'
; mar
= MATE mor 'YOUN'
1. 'NU'
1. 'SECT'
1.
; vf
= VECT didroite 'FLX' ' ' ' ' 'ROUGE'
; SI ITRAC1 ;
TRAC ((RIGI mo ma
) ET blgauche
ET blrig
ET rir
) vf 'NOLE' '
TITR' '
[3D V
] Blocages
et chargement'
; FINSI ;
** Resolution
t . 'MODELE' = mo ;
t . 'CARACTERISTIQUES' = ma ;
t . 'BLOCAGES_MECANIQUES' = bl ;
t . 'CHARGEMENT' = cha ;
t . 'TEMPS_CALCULES'
= PROG 0. 'PAS'
0.01 0.08 0.086 'PAS' 0.002 0.09
0.1 'PAS' 0.01 0.3
'PAS' 0.01 0.46 0.466
'PAS' 0.00066 0.468
'PAS' 0.002 0.47
'PAS' 0.01 0.67
'PAS' 0.0025 0.68
'PAS' 0.01 0.7
'PAS' 0.01 0.9
'PAS' 0.01 1.0 ;
t . 'MES_SAUVEGARDES'
= TABL ; t . 'MES_SAUVEGARDES' . 'DEFTO' = VRAI ;
** Post traitement
* courbes : endommagement moyen vs temps
* contrainte moyenne vs deformation moyenne
* force de reaction vs deplacement impose
tt = t . 'TEMPS' ;
tc = t . 'CONTRAINTES' ;
te = t . 'DEFORMATIONS' ;
tv = t . 'VARIABLES_INTERNES' ;
tu = t . 'DEPLACEMENTS' ;
tr = t . 'REACTIONS' ;
def0
= DEFO (cadr1
ET rep1
ET mail
) (tu .
0) 0.
; tps1 = tt . (&b1 - 1) ;
ltps = ltps ET tps1 ;
end1
= (INTG mo
(tv .
(&b1
- 1)) 'D'
) / mes1
; sig1
= (INTG mo
(tc .
(&b1
- 1)) 'SMXX'
) / mes1
; eps1
= (INTG mo
(te .
(&b1
- 1)) 'EPXX'
) / mes1
; u1
= EXTR (tu .
(&b1
- 1)) 'UX' p3
; rea1 = 0. ;
SI (NEG &b1 1) ;
rea1
= @TOTAL (tr .
(&b1
- 1)) sgauche 'FX'
; FINSI ;
lend = lend ET end1 ;
lsig = lsig ET sig1 ;
leps = leps ET eps1 ;
ldep = ldep ET u1 ;
lrea = lrea ET rea1 ;
FIN b1 ;
ev0
= EVOL 'ROUG' '
MANU' 'Temps' ltps 'D' lend
; ev1
= EVOL 'ROUG' '
MANU' 'EPXX' leps 'SMXX' lsig
; ev2
= EVOL 'ROUG' '
MANU' 'UX' ldep 'FX' lrea
;*nh145313
lepd0
= PROG nb1
* epd0
; lepu = lep1 * umax / long ;
lepe = (2.**0.5) * nu * (ABS lepu) ;
*mess 'lepe avant seuillage 0'; list lepe;
seuil0
= lepe
MASQ 'EGAL'
0 ;*mess 'test seuil0';list seuil0;
lepe0 = seuil0 * 1.E-20 ;
*mess 'lepe0';list lepe0;
lepe = lepe + lepe0 ;
*mess 'lepe apres seuillage 0'; list lepe;
dc = un1 - ((epd0*(un1-lac1)/lepe) + (ac*(EXP(bc*(lepd0-lepe))))) ;
*mess 'dc avant filtrage';list dc;
dc_m = 0. ;
REPE b2 ;
SI (EGA &b2 1) ;
dc_p = 1. ;
de_p = 0. ;
FINSI ;
ddc = dc_i - dc_p ;
dde = de_i - de_p ;
*mess '=== Boucle b2 passage' ' ' &b2;
*mess ' dom.max ' ' ' dc_m;
*mess ' dom.preced.' ' ' dc_p;
*mess ' dom.courant' ' ' dc_i;
*mess ' inc.dommage' ' ' ddc;
*mess ' inc.defo.eq' ' ' dde;
SI ((ddc < 0.) OU (dc_i < 0.) OU (dc_i > 1.) OU (dde < 0)) ;
*mess ' => a filtrer';
ldc
= ldc
ET (PROG dc_m
) ; SINON;
*mess ' a garder si le dommage augmente...';
*mess ' dom.max ' ' ' dc_m;
SI (dc_i < dc_m) ;
*mess ' ... NON => on ne garde pas';
ldc
= ldc
ET (PROG dc_m
) ; SINON ;
*mess ' ... OUI => on garde';
ldc
= ldc
ET (PROG dc_i
) ; FINSI ;
FINSI ;
dc_p = dc_i ;
de_p = de_i ;
*mess ' list dom.';list ldc;
*mess '=== Sortie Boucle b2';
QUIT b2 ;
FINSI ;
FIN b2 ;
dc = ldc ;
*mess 'dc apres filtrage';list dc;
lsig1 = (un1 - dc) * you * lepu ;
* contrainte nulle = 1.E-20
seuilsc
= lsig
MASQ 'EGSUP'
-1.
E-6
; sc0 = seuilsc * -1.E-20 ;
lsig
= (lsig
* (lsig
MASQ 'EGINF'
-1.
E-6
)) + sc0
; seuilsr
= lsig1
MASQ 'EGSUP'
-1.
E-6
; sr0 = seuilsr * -1.E-20 ;
lsig1
= (lsig1
* (lsig1
MASQ 'EGINF'
-1.
E-6
)) + sr0
;*mess 'Sig.calcul';list (ENLE lsig 1);
*mess 'Sig.Ref.';list lsig1;
an0
= EVOL 'TURQ' '
MANU' 'Temps' ltps1 'D' dc
; an1
= EVOL 'TURQ' '
MANU' 'EPXX' lepu 'SMXX' lsig1
; ansmxx
= EVOL 'TURQ' '
MANU' 'Temps' ltps1 'SMXX' lsig1
; SI ITRAC1 ;
DESS (ev0
ET an0
) '
TITR' '
[3D V
] Endommagement vs Temps' 'LEGE' 'SE' tdess
; DESS (ev1
ET an1
) 'XBOR'
-6.
E-3
0. '
TITR' '
[3D V
] Contrainte vs Deformation' 'LEGE' 'NO' tdess
; DESS ev2 '
TITR' '
[3D V
] Reaction vs Deplacement' 'LEGE' 'SO' tdess
; FINSI ;
* evolutions temporelles a tous les points de Gauss
ng = 8 ;
tleg .
1 = MOT 'MARQ CARR NOLI'
; tleg .
2 = MOT 'MARQ LOSA NOLI'
; tleg .
3 = MOT 'MARQ ROND NOLI'
; tleg .
4 = MOT 'MARQ ETOI NOLI'
; tleg .
5 = MOT 'MARQ TRID NOLI'
; tleg .
6 = MOT 'MARQ TRIU NOLI'
; tleg .
7 = MOT 'MARQ TRIL NOLI'
; tleg .
8 = MOT 'MARQ TRIR NOLI'
;*
evend
= VIDE 'EVOLUTIO'
; evsmxx
= VIDE 'EVOLUTIO'
; evepxx
= VIDE 'EVOLUTIO'
; REPE b ng ;
tleg . 'TITRE' .
&b
= CHAI 'Calc_Pt_Gauss' ' '
&b
; evend
= evend
ET (EVOL 'ROSE' '
TEMP' t 'VARIABLES_INTERNES' 'D'
1 1 &b
) ; evsmxx
= evsmxx
ET (EVOL 'BLEU' '
TEMP' t 'CONTRAINTES' 'SMXX'
1 1 &b
) ; evepxx
= evepxx
ET (EVOL 'VERT' '
TEMP' t 'DEFORMATIONS' 'EPXX'
1 1 &b
) ; FIN b ;
tleg .
(ng
+1) = MOT 'MARQ CROI'
; tleg . 'TITRE' .
(ng
+1) = MOT 'Reference'
;*
SI ITRAC1 ;
DESS (evend
ET an0
) 'LEGE' 'SE' tleg '
TITR' '
[3D V
] D vs Temps'
; DESS (evsmxx
ET ansmxx
) 'LEGE' 'NE' tleg '
TITR' '
[3D V
] SMXX vs Temps'
; DESS evepxx 'LEGE' 'SO' tleg '
TITR' '
[3D V
] EPXX vs Temps'
; FINSI ;
*
* deformee
tps1 = tt . (&b2 - 1) ;
* trace de la deformee (pour controle visuel)
def1
= DEFO mail
(tu .
(&b2
- 1)) 33. 'ROUG'
; tit1
= CHAI '
[3D V
] Deformee au temps' ' ' tps1
; SI ITRAC1 ;
* TRAC (def0 ET def1) 'TITR' tit1 ;
FINSI ;
FIN b2 ;
SI ITRAC1 ;
FINSI ;
*
* comparaison Calcul / Reference sur la contrainte moyenne
ler1
= ABS (((ENLE lsig
1) - lsig1
) / lsig1
) ; eer1
= EVOL 'ORAN' '
MANU' 'Temps' ltps1 '|Ec.
rel|SMXX' ler1
; mer1
= (INTG eer1
) / dtps
; tit1
= CHAI '
[3D V
] Val.
abs.
Ec.
rel.|
(Calc
-Ref
)/Ref| Contr.
vs tps, moy.
int.|Ecart|' ' ' mer1
; SI ITRAC1 ;
FINSI ;
MESS '
**************** C A S #
1 :
3 D V O L U M I Q U E
****************'
; SI (mer1 < 1.E-6) ;
MESS ' Moy.
int.
Val.
abs.
Ecart relatif entre Calcul
et Reference' ' ' mer1 '
< 1.
E-06
=> OK'
; SINO ;
MESS ' Moy.
int.
Val.
abs.
Ecart relatif entre Calcul
et Reference' ' ' mer1 '
> 1.
E-06
=> ECHEC'
; IERR = VRAI ;
FINS ;
FINSI ;
*********** C A S #2 : 3 D P O U T R E A F I B R E ************
** Options generales
** Maillage
p1s = (-0.5 * epai) (-0.5 * epai) 0. ;
p2s = (-0.5 * epai) ( 0.5 * epai) 0. ;
mails
= l12s
TRAN 1 (epai
0.
0.
) ; p1 = 0. 0. 0. ;
p2 = long 0. 0. ;
*nh145313
cadr1
= COUL ((-0.1 0.
0.
) ET (1.
0.
0.
)) 'BLAN'
;rep1
= @REPERE (-0.2 -0.2 0.
) (PROG 0.2 0.2 0.2) 'TURQ'
;SI ITRAC1 ;
TRAC 'QUAL'
(cadr1
ET rep1
ET (mails
COUL 'VERT'
) ET (mail
COUL 'ROUG'
)) '
TITR' '
[3D PaF
] Maillages de la Poutre
et de sa Section'
; FINSI ;
** Modele et caracteristiques materiau
mos
= MODE mails 'MECANIQUE' 'ELASTIQUE' 'PLASTIQUE' 'MAZARS' 'QUAS'
; mas
= MATE mos 'YOUN' you 'NU' nu 'KTR0' epd0 'ACOM' ac 'BCOM' bc 'ATRA' at 'BTRA' bt 'BETA' beta
'ALPY' 1. 'ALPZ' 1. ;
mo
= MODE mail 'MECANIQUE' 'ELASTIQUE' 'SECTION' 'PLASTIQUE' 'SECTION' 'TIMO'
; ma
= MATE mo 'MODS' mos 'MATS' mas '
VECT'
(0.
1.
0.
) ;
** Blocages
bldroite
= BLOQ 'UX' p2
; bl = blgauche ET bldroite ;
*nh145313
bl = bl ET bldroit2 ;
** Chargements
didroite
= DEPI bldroite umax
; ec1
= EVOL '
MANU'
(PROG 0.
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.
) (PROG 0.
0.2 0.
0.4 0.
0.6 0.
0.8 0.
1.
0.
) ; cha
= CHAR 'DIMP' didroite ec1
;
** Tracé des blocages et du chargement
mor
= MODE re0 'MECANIQUE' 'BARR'
; mar
= MATE mor 'YOUN'
1. 'NU'
1. 'SECT'
1.
; vf
= VECT didroite 'FLX' ' ' ' ' 'ROUG'
20.
; SI ITRAC1 ;
TRAC ((RIGI mo ma
) ET blgauche
ET rir
) vf 'NOLE' '
TITR' '
[3D PaF
] Blocages
et chargement'
; FINSI ;
** Resolution
t . 'MODELE' = mo ;
t . 'CARACTERISTIQUES' = ma ;
t . 'BLOCAGES_MECANIQUES' = bl ;
t . 'CHARGEMENT' = cha ;
t . 'TEMPS_CALCULES'
= PROG 0. 'PAS'
0.01 0.08 0.086 'PAS' 0.002 0.09
0.1 'PAS' 0.01 0.3
'PAS' 0.01 0.46 0.466
'PAS' 0.00066 0.468
'PAS' 0.002 0.47
'PAS' 0.01 0.67
'PAS' 0.0025 0.68
'PAS' 0.01 0.7
'PAS' 0.01 0.9
'PAS' 0.01 1.0 ;
t . 'MES_SAUVEGARDES'
= TABL ; t . 'MES_SAUVEGARDES' . 'DEFTO' = VRAI ;
** Post traitement
* courbes : endommagement moyen vs temps
* contrainte moyenne vs deformation moyenne
* force de reaction vs deplacement impose
* evolutions temporelles a tous les points de Gauss
ng = 4 ;
tleg .
1 = MOT 'MARQ CARR NOLI'
; tleg .
2 = MOT 'MARQ LOSA NOLI'
; tleg .
3 = MOT 'MARQ ROND NOLI'
; tleg .
4 = MOT 'MARQ ETOI NOLI'
; REPE b ng ;
tleg . 'TITRE' .
&b
= CHAI 'Calc_Pt_Gauss' ' '
&b
; FIN b ;
*nh145313
tleg .
(ng
+1) = MOT 'MARQ CROI'
; tleg . 'TITRE' .
(ng
+1) = MOT 'Reference'
; tt = t . 'TEMPS' ;
tv = t . 'VARIABLES_INTERNES' ;
tu = t . 'DEPLACEMENTS' ;
tr = t . 'REACTIONS' ;
def0
= DEFO (cadr1
ET rep1
ET mail
) (tu .
0) 0.
; tps1 = tt . (&b1 - 1) ;
ltps = ltps ET tps1 ;
SI (EGA &b1 1) ;
lend1 = lend1 ET 0. ;
lend2 = lend2 ET 0. ;
lend3 = lend3 ET 0. ;
lend4 = lend4 ET 0. ;
lsig1 = lsig1 ET 0. ;
lsig2 = lsig2 ET 0. ;
lsig3 = lsig3 ET 0. ;
lsig4 = lsig4 ET 0. ;
leps1 = leps1 ET 0. ;
leps2 = leps2 ET 0. ;
leps3 = leps3 ET 0. ;
leps4 = leps4 ET 0. ;
SINON ;
lend1
= lend1
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VAIS'
1 1 1) 'VHNI'
1 1 1) ; lend2
= lend2
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VAIS'
1 1 1) 'VHNI'
1 1 2) ; lend3
= lend3
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VAIS'
1 1 1) 'VHNI'
1 1 3) ; lend4
= lend4
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VAIS'
1 1 1) 'VHNI'
1 1 4) ; lsig1
= lsig1
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VONS'
1 1 1) 'SMXX'
1 1 1) ; lsig2
= lsig2
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VONS'
1 1 1) 'SMXX'
1 1 2) ; lsig3
= lsig3
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VONS'
1 1 1) 'SMXX'
1 1 3) ; lsig4
= lsig4
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VONS'
1 1 1) 'SMXX'
1 1 4) ; leps1
= leps1
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VAIS'
1 1 1) 'VISX'
1 1 1) ; leps2
= leps2
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VAIS'
1 1 1) 'VISX'
1 1 2) ; leps3
= leps3
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VAIS'
1 1 1) 'VISX'
1 1 3) ; leps4
= leps4
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VAIS'
1 1 1) 'VISX'
1 1 4) ; FINSI ;
u1
= EXTR (tu .
(&b1
- 1)) 'UX' p2
; rea1
= EXTR (tr .
(&b1
- 1)) 'FX' p1
; ldep = ldep ET u1 ;
lrea = lrea ET rea1 ;
FIN b1 ;
ev0
= (EVOL 'ROUG' '
MANU' 'Temps' ltps 'D' lend1
) ET (EVOL 'ROUG' '
MANU' 'Temps' ltps 'D' lend2
) ET (EVOL 'ROUG' '
MANU' 'Temps' ltps 'D' lend3
) ET (EVOL 'ROUG' '
MANU' 'Temps' ltps 'D' lend4
) ; ev1
= (EVOL 'ROUG' '
MANU' 'EPXX' leps1 'SMXX' lsig1
) ET (EVOL 'ROUG' '
MANU' 'EPXX' leps2 'SMXX' lsig2
) ET (EVOL 'ROUG' '
MANU' 'EPXX' leps3 'SMXX' lsig3
) ET (EVOL 'ROUG' '
MANU' 'EPXX' leps4 'SMXX' lsig4
) ; ev2
= EVOL 'ROUG' '
MANU' 'UX' ldep 'FX' lrea
;*nh145313
lepd0
= PROG nb1
* epd0
; lepu = lep1 * umax / long ;
lepe = (2.**0.5) * nu * (ABS lepu) ;
*mess 'lepe avant seuillage 0'; list lepe;
seuil0
= lepe
MASQ 'EGAL'
0 ;*mess 'test seuil0';list seuil0;
lepe0 = seuil0 * 1.E-20 ;
*mess 'lepe0';list lepe0;
lepe = lepe + lepe0 ;
*mess 'lepe apres seuillage 0'; list lepe;
dc = un1 - ((epd0*(un1-lac1)/lepe) + (ac*(EXP(bc*(lepd0-lepe))))) ;
dc_m = 0. ;
REPE b2 ;
SI (EGA &b2 1) ;
dc_p = 1. ;
de_p = 0. ;
FINSI ;
ddc = dc_i - dc_p ;
dde = de_i - de_p ;
SI ((ddc < 0.) OU (dc_i < 0.) OU (dc_i > 1.) OU (dde < 0)) ;
ldc
= ldc
ET (PROG dc_m
) ; SINON;
SI (dc_i < dc_m) ;
ldc
= ldc
ET (PROG dc_m
) ; SINON ;
ldc
= ldc
ET (PROG dc_i
) ; FINSI ;
FINSI ;
dc_p = dc_i ;
de_p = de_i ;
QUIT b2 ;
FINSI ;
FIN b2 ;
dc = ldc ;
lsan1 = (un1 - dc) * you * lepu ;
* contrainte nulle = 1.E-20
lsig = (lsig1 + lsig2 + lsig3 + lsig4) / 4. ;
seuilsc
= lsig
MASQ 'EGSUP'
-1.
E-6
; sc0 = seuilsc * -1.E-20 ;
lsig
= (lsig
* (lsig
MASQ 'EGINF'
-1.
E-6
)) + sc0
; seuilsr
= lsan1
MASQ 'EGSUP'
-1.
E-6
; sr0 = seuilsr * -1.E-20 ;
lsan1
= (lsan1
* (lsan1
MASQ 'EGINF'
-1.
E-6
)) + sr0
; an0
= EVOL 'TURQ' '
MANU' 'Temps' ltps1 'D' dc
; an1
= EVOL 'TURQ' '
MANU' 'EPXX' lepu 'SMXX' lsan1
; SI ITRAC1 ;
DESS (ev0
ET an0
) 'LEGE' 'SE' tleg '
TITR' '
[3D PaF
] Endommagement vs Temps'
; DESS (ev1
ET an1
) 'LEGE' 'NO' tleg '
TITR' '
[3D PaF
] Contrainte vs Deformation'
; DESS ev2 '
TITR' '
[3D PaF
] Reaction vs Deplacement' 'LEGE' 'SO' tdess
; FINSI ;
* deformee
tps1 = tt . (&b2 - 1) ;
* trace de la deformee (pour controle visuel)
def1
= DEFO mail
(tu .
(&b2
- 1)) 33. 'ROUG'
; tit1
= CHAI '
[3D PaF
] Deformee au temps' ' ' tps1
; SI ITRAC1 ;
* TRAC (def0 ET def1) 'TITR' tit1 ;
FINSI ;
FIN b2 ;
SI ITRAC1 ;
FINSI ;
* comparaison Calcul / Reference sur la contrainte moyenne
ler1
= ABS (((ENLE lsig
1) - lsan1
) / lsan1
) ; eer1
= EVOL 'ORAN' '
MANU' 'Temps' ltps1 '|Ec.
rel|SMXX' ler1
; mer1
= (INTG eer1
) / dtps
; tit1
= CHAI '
[3D PaF
] Val.
abs.
Ec.
rel.|
(Calc
-Ref
)/Ref| Contr.
vs tps, moy.
int.|Ecart|' ' ' mer1
; SI ITRAC1 ;
FINSI ;
MESS '
*********** C A S #
2 :
3 D P O U T R E A F I B R E
************'
; SI (mer1 < 1.E-6) ;
MESS ' Moy.
int.
Val.
abs.
Ecart relatif entre Calcul
et Reference' ' ' mer1 '
< 1.
E-06
=> OK'
; SINO ;
MESS ' Moy.
int.
Val.
abs.
Ecart relatif entre Calcul
et Reference' ' ' mer1 '
> 1.
E-06
=> ECHEC'
; IERR = VRAI ;
FINS ;
FINSI ;
******* C A S #3 : 2 D C O N T R A I N T E S P L A N E S ********
** Options generales
** Maillage
p1 = 0. 0. ;
p2 = 0. long ;
mail
= sgauche
TRAN 1 (long
0.
) ; p3
= sdroite
POIN 'PROC'
(long
0.
) ;*nh145313
cadr1
= COUL ((0.
1.05) ET (1.
1.05)) 'BLAN'
;SI ITRAC1 ;
TRAC 'QUAL'
(cadr1
ET rep1
ET mail
ET (sgauche
COUL 'VERT'
) ET (sdroite
COUL 'ROUG'
)) '
TITR' '
[2D Plan
cont.
] Maillage'
; FINSI ;
** Modele et caracteristiques materiau
mo
= MODE mail 'MECANIQUE' 'ELASTIQUE' 'ENDOMMAGEMENT' 'MAZARS'
; ma
= MATE mo 'YOUN' you 'NU' nu 'KTR0' epd0 'ACOM' ac 'BCOM' bc 'ATRA' at 'BTRA' bt 'BETA' beta 'DIM3' epai
;
** Blocages
blgauche
= BLOQ 'UX' sgauche
; bldroite
= BLOQ 'UX' sdroite
; bl = blgauche ET bldroite ET blrig ;
** Chargements
didroite
= DEPI bldroite umax
; ec1
= EVOL '
MANU'
(PROG 0.
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.
) (PROG 0.
0.2 0.
0.4 0.
0.6 0.
0.8 0.
1.
0.
) ; cha
= CHAR 'DIMP' didroite ec1
;
** Tracé des blocages et du chargement
mor
= MODE re0 'MECANIQUE' 'BARR'
; mar
= MATE mor 'YOUN'
1. 'NU'
1. 'SECT'
1.
; vf
= VECT didroite 'FLX' ' ' 'ROUG'
; SI ITRAC1 ;
TRAC ((RIGI mo ma
) ET blgauche
ET blrig
ET rir
) vf 'NOLE' '
TITR' '
[2D Plan
cont.
] Blocages
et chargement'
; FINSI ;
** Resolution
t . 'MODELE' = mo ;
t . 'CARACTERISTIQUES' = ma ;
t . 'BLOCAGES_MECANIQUES' = bl ;
t . 'CHARGEMENT' = cha ;
t . 'TEMPS_CALCULES'
= PROG 0. 'PAS'
0.01 0.08 0.086 'PAS' 0.002 0.09
0.1 'PAS' 0.01 0.3
'PAS' 0.01 0.46 0.466
'PAS' 0.00066 0.468
'PAS' 0.002 0.47
'PAS' 0.01 0.67
'PAS' 0.0025 0.68
'PAS' 0.01 0.7
'PAS' 0.01 0.9
'PAS' 0.01 1.0 ;
t . 'MES_SAUVEGARDES'
= TABL ; t . 'MES_SAUVEGARDES' . 'DEFTO' = VRAI ;
** Post traitement
* courbes : endommagement moyen vs temps
* contrainte moyenne vs deformation moyenne
* force de reaction vs deplacement impose
tt = t . 'TEMPS' ;
tc = t . 'CONTRAINTES' ;
te = t . 'DEFORMATIONS' ;
tv = t . 'VARIABLES_INTERNES' ;
tu = t . 'DEPLACEMENTS' ;
tr = t . 'REACTIONS' ;
def0
= DEFO (cadr1
ET rep1
ET mail
) (tu .
0) 0.
; tps1 = tt . (&b1 - 1) ;
ltps = ltps ET tps1 ;
end1
= (INTG mo
(tv .
(&b1
- 1)) 'D'
) / mes1
; sig1
= (INTG mo
(tc .
(&b1
- 1)) 'SMXX'
) / mes1
; eps1
= (INTG mo
(te .
(&b1
- 1)) 'EPXX'
) / mes1
; u1
= EXTR (tu .
(&b1
- 1)) 'UX' p3
; rea1 = 0. ;
SI (NEG &b1 1) ;
rea1
= @TOTAL (tr .
(&b1
- 1)) sgauche 'FX'
; FINSI ;
lend = lend ET end1 ;
lsig = lsig ET sig1 ;
leps = leps ET eps1 ;
ldep = ldep ET u1 ;
lrea = lrea ET rea1 ;
FIN b1 ;
ev0
= EVOL 'ROUG' '
MANU' 'Temps' ltps 'D' lend
; ev1
= EVOL 'ROUG' '
MANU' 'EPXX' leps 'SMXX' lsig
; ev2
= EVOL 'ROUG' '
MANU' 'UX' ldep 'FX' lrea
;*nh145313
lepd0
= PROG nb1
* epd0
; lepu = lep1 * umax / long ;
lepe = (2.**0.5) * nu * (ABS lepu) ;
*mess 'lepe avant seuillage 0'; list lepe;
seuil0
= lepe
MASQ 'EGAL'
0 ;*mess 'test seuil0';list seuil0;
lepe0 = seuil0 * 1.E-20 ;
*mess 'lepe0';list lepe0;
lepe = lepe + lepe0 ;
*mess 'lepe apres seuillage 0'; list lepe;
dc = un1 - ((epd0*(un1-lac1)/lepe) + (ac*(EXP(bc*(lepd0-lepe))))) ;
dc_m = 0. ;
REPE b2 ;
SI (EGA &b2 1) ;
dc_p = 1. ;
de_p = 0. ;
FINSI ;
ddc = dc_i - dc_p ;
dde = de_i - de_p ;
SI ((ddc < 0.) OU (dc_i < 0.) OU (dc_i > 1.) OU (dde < 0)) ;
ldc
= ldc
ET (PROG dc_m
) ; SINON;
SI (dc_i < dc_m) ;
ldc
= ldc
ET (PROG dc_m
) ; SINON ;
ldc
= ldc
ET (PROG dc_i
) ; FINSI ;
FINSI ;
dc_p = dc_i ;
de_p = de_i ;
QUIT b2 ;
FINSI ;
FIN b2 ;
dc = ldc ;
lsig1 = (un1 - dc) * you * lepu ;
* contrainte nulle = 1.E-20
seuilsc
= lsig
MASQ 'EGSUP'
-1.
E-6
; sc0 = seuilsc * -1.E-20 ;
lsig
= (lsig
* (lsig
MASQ 'EGINF'
-1.
E-6
)) + sc0
; seuilsr
= lsig1
MASQ 'EGSUP'
-1.
E-6
; sr0 = seuilsr * -1.E-20 ;
lsig1
= (lsig1
* (lsig1
MASQ 'EGINF'
-1.
E-6
)) + sr0
; an0
= EVOL 'TURQ' '
MANU' 'Temps' ltps1 'D' dc
; an1
= EVOL 'TURQ' '
MANU' 'EPXX' lepu 'SMXX' lsig1
; ansmxx
= EVOL 'TURQ' '
MANU' 'Temps' ltps1 'SMXX' lsig1
; SI ITRAC1 ;
DESS (ev0
ET an0
) '
TITR' '
[2D Plan
cont.
] Endommagement vs Temps' 'LEGE' 'SE' tdess
; DESS (ev1
ET an1
) '
TITR' '
[2D Plan
cont.
] Contrainte vs Deformation' 'LEGE' 'NO' tdess
; DESS ev2 '
TITR' '
[2D Plan
cont.
] Reaction vs Deplacement' 'LEGE' 'SO' tdess
; FINSI ;
* evolutions temporelles a tous les points de Gauss
ng = 4 ;
tleg .
1 = MOT 'MARQ CARR NOLI'
; tleg .
2 = MOT 'MARQ LOSA NOLI'
; tleg .
3 = MOT 'MARQ ROND NOLI'
; tleg .
4 = MOT 'MARQ ETOI NOLI'
;*
evend
= VIDE 'EVOLUTIO'
; evsmxx
= VIDE 'EVOLUTIO'
; evepxx
= VIDE 'EVOLUTIO'
; REPE b ng ;
tleg . 'TITRE' .
&b
= CHAI 'Calc_Pt_Gauss' ' '
&b
; evend
= evend
ET (EVOL 'ROSE' '
TEMP' t 'VARIABLES_INTERNES' 'D'
1 1 &b
) ; evsmxx
= evsmxx
ET (EVOL 'BLEU' '
TEMP' t 'CONTRAINTES' 'SMXX'
1 1 &b
) ; evepxx
= evepxx
ET (EVOL 'VERT' '
TEMP' t 'DEFORMATIONS' 'EPXX'
1 1 &b
) ; FIN b ;
*
tleg .
(ng
+1) = MOT 'MARQ CROI'
; tleg . 'TITRE' .
(ng
+1) = MOT 'Reference'
;*
SI ITRAC1 ;
DESS (evend
ET an0
) 'LEGE' 'SE' tleg '
TITR' '
[2D Plan
cont.
] D vs Temps'
; DESS (evsmxx
ET ansmxx
) 'LEGE' 'NE' tleg '
TITR' '
[2D Plan
cont.
] SMXX vs Temps'
; DESS evepxx 'LEGE' 'SO' tleg '
TITR' '
[2D Plan
cont.
] EPXX vs Temps'
; FINSI ;
* deformee
tps1 = tt . (&b2 - 1) ;
* trace de la deformee (pour controle visuel)
def1
= DEFO mail
(tu .
(&b2
- 1)) 33. 'ROUG'
; tit1
= CHAI '
[2D Plan
cont.
] Deformee au temps' ' ' tps1
; SI ITRAC1 ;
* TRAC (def0 ET def1) 'TITR' tit1 ;
FINSI ;
FIN b2 ;
SI ITRAC1 ;
FINSI ;
* comparaison Calcul / Reference sur la contrainte moyenne
ler1
= ABS (((ENLE lsig
1) - lsig1
) / lsig1
) ; eer1
= EVOL 'ORAN' '
MANU' 'Temps' ltps1 '|Ec.
rel|SMXX' ler1
; mer1
= (INTG eer1
) / dtps
; tit1
= CHAI '
[2D Plan
cont.
] Val.
abs.
Ec.
rel.|
(Calc
-Ref
)/Ref| Contr.
vs tps, moy.
int.|Ecart|' ' ' mer1
; SI ITRAC1 ;
FINSI ;
MESS '
******* C A S #
3 :
2 D C O N T R A I N T E S P L A N E S
********'
; SI (mer1 < 1.E-6) ;
MESS ' Moy.
int.
Val.
abs.
Ecart relatif entre Calcul
et Reference' ' ' mer1 '
< 1.
E-06
=> OK'
; SINO ;
MESS ' Moy.
int.
Val.
abs.
Ecart relatif entre Calcul
et Reference' ' ' mer1 '
> 1.
E-06
=> ECHEC'
; IERR = VRAI ;
FINS ;
FINSI ;
************ C A S #4 : 2 D A X I S Y M E T R I Q U E *************
** Options generales
** Maillage
p1 = 0. 0. ;
p2 = long 0. ;
mail
= sbas
TRAN 1 (0.
long) ; p3
= shaut
POIN 'PROC'
(0.
long) ;*nh145313
cadr1
= COUL ((0.
1.
) ET (1.05 1.
)) 'BLAN'
;SI ITRAC1 ;
TRAC 'QUAL'
(cadr1
ET rep1
ET mail
ET (sbas
COUL 'VERT'
) ET (shaut
COUL 'ROUG'
)) '
TITR' '
[2D Axi.
] Maillage'
; FINSI ;
** Modele et caracteristiques materiau
mo
= MODE mail 'MECANIQUE' 'ELASTIQUE' 'ENDOMMAGEMENT' 'MAZARS'
; ma
= MATE mo 'YOUN' you 'NU' nu 'KTR0' epd0 'ACOM' ac 'BCOM' bc 'ATRA' at 'BTRA' bt 'BETA' beta
; un = zer + 1. ;
mes1
= INTG mo un 'SCAL'
;
** Blocages
blhaut
= BLOQ 'UZ' shaut
; bl = blbas ET blhaut ;
** Chargements
dihaut
= DEPI blhaut umax
; ec1
= EVOL '
MANU'
(PROG 0.
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.
) (PROG 0.
0.2 0.
0.4 0.
0.6 0.
0.8 0.
1.
0.
) ; cha
= CHAR 'DIMP' dihaut ec1
;
** Tracé des blocages et du chargement
mor
= MODE re0 'MECANIQUE' 'BARR'
; mar
= MATE mor 'YOUN'
1. 'NU'
1. 'SECT'
1.
; vf
= VECT dihaut ' ' 'FLX' 'ROUG'
; SI ITRAC1 ;
TRAC ((RIGI mo ma
) ET blbas
ET rir
) vf 'NOLE' '
TITR' '
[2D Axi.
] Blocages
et chargement'
; FINSI ;
** Resolution
t . 'MODELE' = mo ;
t . 'CARACTERISTIQUES' = ma ;
t . 'BLOCAGES_MECANIQUES' = bl ;
t . 'CHARGEMENT' = cha ;
t . 'TEMPS_CALCULES'
= PROG 0. 'PAS'
0.01 0.08 0.086 'PAS' 0.002 0.09
0.1 'PAS' 0.01 0.3
'PAS' 0.01 0.46 0.466
'PAS' 0.00066 0.468
'PAS' 0.002 0.47
'PAS' 0.01 0.67
'PAS' 0.0025 0.68
'PAS' 0.01 0.7
'PAS' 0.01 0.9
'PAS' 0.01 1.0 ;
t . 'MES_SAUVEGARDES'
= TABL ; t . 'MES_SAUVEGARDES' . 'DEFTO' = VRAI ;
** Post traitement
* courbes : endommagement moyen vs temps
* contrainte moyenne vs deformation moyenne
* force de reaction vs deplacement impose
tt = t . 'TEMPS' ;
tc = t . 'CONTRAINTES' ;
te = t . 'DEFORMATIONS' ;
tv = t . 'VARIABLES_INTERNES' ;
tu = t . 'DEPLACEMENTS' ;
tr = t . 'REACTIONS' ;
def0
= DEFO (cadr1
ET rep1
ET mail
) (tu .
0) 0.
; tps1 = tt . (&b1 - 1) ;
ltps = ltps ET tps1 ;
end1
= (INTG mo
(tv .
(&b1
- 1)) 'D'
) / mes1
; sig1
= (INTG mo
(tc .
(&b1
- 1)) 'SMZZ'
) / mes1
; eps1
= (INTG mo
(te .
(&b1
- 1)) 'EPZZ'
) / mes1
; u1
= EXTR (tu .
(&b1
- 1)) 'UZ' p3
; rea1 = 0. ;
SI (NEG &b1 1) ;
rea1
= @TOTAL (tr .
(&b1
- 1)) sbas 'FZ'
; FINSI ;
lend = lend ET end1 ;
lsig = lsig ET sig1 ;
leps = leps ET eps1 ;
ldep = ldep ET u1 ;
lrea = lrea ET rea1 ;
FIN b1 ;
ev0
= EVOL 'ROUG' '
MANU' 'Temps' ltps 'D' lend
; ev1
= EVOL 'ROUG' '
MANU' 'EPZZ' leps 'SMZZ' lsig
; ev2
= EVOL 'ROUG' '
MANU' 'UZ' ldep 'FZ' lrea
;*nh145313
lepd0
= PROG nb1
* epd0
; lepu = lep1 * umax / long ;
lepe = (2.**0.5) * nu * (ABS lepu) ;
*mess 'lepe avant seuillage 0'; list lepe;
seuil0
= lepe
MASQ 'EGAL'
0 ;*mess 'test seuil0';list seuil0;
lepe0 = seuil0 * 1.E-20 ;
*mess 'lepe0';list lepe0;
lepe = lepe + lepe0 ;
*mess 'lepe apres seuillage 0'; list lepe;
dc = un1 - ((epd0*(un1-lac1)/lepe) + (ac*(EXP(bc*(lepd0-lepe))))) ;
dc_m = 0. ;
REPE b2 ;
SI (EGA &b2 1) ;
dc_p = 1. ;
de_p = 0. ;
FINSI ;
ddc = dc_i - dc_p ;
dde = de_i - de_p ;
SI ((ddc < 0.) OU (dc_i < 0.) OU (dc_i > 1.) OU (dde < 0)) ;
ldc
= ldc
ET (PROG dc_m
) ; SINON;
SI (dc_i < dc_m) ;
ldc
= ldc
ET (PROG dc_m
) ; SINON ;
ldc
= ldc
ET (PROG dc_i
) ; FINSI ;
FINSI ;
dc_p = dc_i ;
de_p = de_i ;
QUIT b2 ;
FINSI ;
FIN b2 ;
dc = ldc ;
lsig1 = (un1 - dc) * you * lepu ;
* contrainte nulle = 1.E-20
seuilsc
= lsig
MASQ 'EGSUP'
-1.
E-6
; sc0 = seuilsc * -1.E-20 ;
lsig
= (lsig
* (lsig
MASQ 'EGINF'
-1.
E-6
)) + sc0
; seuilsr
= lsig1
MASQ 'EGSUP'
-1.
E-6
; sr0 = seuilsr * -1.E-20 ;
lsig1
= (lsig1
* (lsig1
MASQ 'EGINF'
-1.
E-6
)) + sr0
; an0
= EVOL 'TURQ' '
MANU' 'Temps' ltps1 'D' dc
; an1
= EVOL 'TURQ' '
MANU' 'EPXX' lepu 'SMXX' lsig1
; ansmzz
= EVOL 'TURQ' '
MANU' 'Temps' ltps1 'SMZZ' lsig1
; SI ITRAC1 ;
DESS (ev0
ET an0
) '
TITR' '
[2D Axi.
] Endommagement vs Temps' 'LEGE' 'SE' tdess
; DESS (ev1
ET an1
) '
TITR' '
[2D Axi.
] Contrainte vs Deformation' 'LEGE' 'NO' tdess
; DESS ev2 '
TITR' '
[2D Axi.
] Reaction vs Deplacement' 'LEGE' 'SO' tdess
; FINSI ;
* evolutions temporelles a tous les points de Gauss
ng = 4 ;
tleg .
1 = MOT 'MARQ CARR NOLI'
; tleg .
2 = MOT 'MARQ LOSA NOLI'
; tleg .
3 = MOT 'MARQ ROND NOLI'
; tleg .
4 = MOT 'MARQ ETOI NOLI'
;*
evend
= VIDE 'EVOLUTIO'
; evsmzz
= VIDE 'EVOLUTIO'
; evepzz
= VIDE 'EVOLUTIO'
; REPE b ng ;
tleg . 'TITRE' .
&b
= CHAI 'Calc_Pt_Gauss' ' '
&b
; evend
= evend
ET (EVOL 'ROSE' '
TEMP' t 'VARIABLES_INTERNES' 'D'
1 1 &b
) ; evsmzz
= evsmzz
ET (EVOL 'BLEU' '
TEMP' t 'CONTRAINTES' 'SMZZ'
1 1 &b
) ; evepzz
= evepzz
ET (EVOL 'VERT' '
TEMP' t 'DEFORMATIONS' 'EPZZ'
1 1 &b
) ; FIN b ;
*
tleg .
(ng
+1) = MOT 'MARQ CROI'
; tleg . 'TITRE' .
(ng
+1) = MOT 'Reference'
;*
SI ITRAC1 ;
DESS (evend
ET an0
) 'LEGE' 'SE' tleg '
TITR' '
[2D Axi.
] D vs Temps'
; DESS (evsmzz
ET ansmzz
) 'LEGE' 'NE' tleg '
TITR' '
[2D Axi.
] SMZZ vs Temps'
; DESS evepzz 'LEGE' 'SO' tleg '
TITR' '
[2D Axi.
] EPZZ vs Temps'
; FINSI ;
* deformee
tps1 = tt . (&b2 - 1) ;
* trace de la deformee (pour controle visuel)
def1
= DEFO mail
(tu .
(&b2
- 1)) 33. 'ROUG'
; tit1
= CHAI '
[2D Axi.
] Deformee au temps' ' ' tps1
; SI ITRAC1 ;
* TRAC (def0 ET def1) 'TITR' tit1 ;
FINSI ;
FIN b2 ;
SI ITRAC1 ;
FINSI ;
* comparaison Calcul / Reference sur la contrainte moyenne
ler1
= ABS (((ENLE lsig
1) - lsig1
) / lsig1
) ; eer1
= EVOL 'ORAN' '
MANU' 'Temps' ltps1 '|Ec.
rel|SMXX' ler1
; mer1
= (INTG eer1
) / dtps
; tit1
= CHAI '
[2D Axi.
] Val.
abs.
Ec.
rel.|
(Calc
-Ref
)/Ref| Contr.
vs tps, moy.
int.|Ecart|' ' ' mer1
; SI ITRAC1 ;
FINSI ;
MESS '
************ C A S #
4 :
2 D A X I S Y M E T R I Q U E
*************'
; SI (mer1 < 1.E-6) ;
MESS ' Moy.
int.
Val.
abs.
Ecart relatif entre Calcul
et Reference' ' ' mer1 '
< 1.
E-06
=> OK'
; SINO ;
MESS ' Moy.
int.
Val.
abs.
Ecart relatif entre Calcul
et Reference' ' ' mer1 '
> 1.
E-06
=> ECHEC'
; IERR = VRAI ;
FINS ;
FINSI ;
*********** C A S #5 : 2 D P O U T R E A F I B R E ************
** Options generales
** Maillage
p1s = (-0.5 * epai) (-0.5 * epai) ;
p2s = (-0.5 * epai) ( 0.5 * epai) ;
mails
= l12s
TRAN 1 (epai
0.
) ; p1 = 0. 0. ;
p2 = long 0. ;
*nh145313
cadr1
= COUL ((-0.1 0.
) ET (1.
0.
)) 'BLAN'
;SI ITRAC1 ;
TRAC 'QUAL'
(rep1
ET (mails
COUL 'VERT'
) ET (mail
COUL 'ROUG'
)) '
TITR' '
[2D PaF
] Maillages de la Poutre
et de sa Section'
; FINSI ;
** Modele et caracteristiques materiau
mos
= MODE mails 'MECANIQUE' 'ELASTIQUE' 'PLASTIQUE' 'MAZARS' 'QUAS'
; mas
= MATE mos 'YOUN' you 'NU' nu 'KTR0' epd0 'ACOM' ac 'BCOM' bc 'ATRA' at 'BTRA' bt 'BETA' beta
'ALPY' 1. ;
mo
= MODE mail 'MECANIQUE' 'ELASTIQUE' 'SECTION' 'PLASTIQUE' 'SECTION' 'TIMO'
; ma
= MATE mo 'MODS' mos 'MATS' mas
;
** Blocages
bldroite
= BLOQ 'UX' p2
; bl = blgauche ET bldroite ;
*nh145313
bl = bl ET bldroit2 ;
** Chargements
didroite
= DEPI bldroite umax
; ec1
= EVOL '
MANU'
(PROG 0.
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.
) (PROG 0.
0.2 0.
0.4 0.
0.6 0.
0.8 0.
1.
0.
) ; cha
= CHAR 'DIMP' didroite ec1
;
** Tracé des blocages et du chargement
mor
= MODE re0 'MECANIQUE' 'BARR'
; mar
= MATE mor 'YOUN'
1. 'NU'
1. 'SECT'
1.
; vf
= VECT didroite 'FLX' ' ' 'ROUG'
20.
; SI ITRAC1 ;
TRAC ((RIGI mo ma
) ET blgauche
ET rir
) vf 'NOLE' '
TITR' '
[2D PaF
] Blocages
et chargement'
; FINSI ;
** Resolution
t . 'MODELE' = mo ;
t . 'CARACTERISTIQUES' = ma ;
t . 'BLOCAGES_MECANIQUES' = bl ;
t . 'CHARGEMENT' = cha ;
t . 'TEMPS_CALCULES'
= PROG 0. 'PAS'
0.01 0.08 0.086 'PAS' 0.002 0.09
0.1 'PAS' 0.01 0.3
'PAS' 0.01 0.46 0.466
'PAS' 0.00066 0.468
'PAS' 0.002 0.47
'PAS' 0.01 0.67
'PAS' 0.0025 0.68
'PAS' 0.01 0.7
'PAS' 0.01 0.9
'PAS' 0.01 1.0 ;
t . 'MES_SAUVEGARDES'
= TABL ; t . 'MES_SAUVEGARDES' . 'DEFTO' = VRAI ;
** Post traitement
* courbes : endommagement moyen vs temps
* contrainte moyenne vs deformation moyenne
* force de reaction vs deplacement impose
* evolutions temporelles a tous les points de Gauss
ng = 4 ;
tleg .
1 = MOT 'MARQ CARR NOLI'
; tleg .
2 = MOT 'MARQ LOSA NOLI'
; tleg .
3 = MOT 'MARQ ROND NOLI'
; tleg .
4 = MOT 'MARQ ETOI NOLI'
; REPE b ng ;
tleg . 'TITRE' .
&b
= CHAI 'Calc_Pt_Gauss' ' '
&b
; FIN b ;
*nh145313
tleg .
(ng
+1) = MOT 'MARQ CROI'
; tleg . 'TITRE' .
(ng
+1) = MOT 'Reference'
; tt = t . 'TEMPS' ;
tv = t . 'VARIABLES_INTERNES' ;
tu = t . 'DEPLACEMENTS' ;
tr = t . 'REACTIONS' ;
def0
= DEFO (cadr1
ET rep1
ET mail
) (tu .
0) 0.
; tps1 = tt . (&b1 - 1) ;
ltps = ltps ET tps1 ;
SI (EGA &b1 1) ;
lend1 = lend1 ET 0. ;
lend2 = lend2 ET 0. ;
lend3 = lend3 ET 0. ;
lend4 = lend4 ET 0. ;
lsig1 = lsig1 ET 0. ;
lsig2 = lsig2 ET 0. ;
lsig3 = lsig3 ET 0. ;
lsig4 = lsig4 ET 0. ;
leps1 = leps1 ET 0. ;
leps2 = leps2 ET 0. ;
leps3 = leps3 ET 0. ;
leps4 = leps4 ET 0. ;
SINON ;
lend1
= lend1
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VAIS'
1 1 1) 'VHNI'
1 1 1) ; lend2
= lend2
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VAIS'
1 1 1) 'VHNI'
1 1 2) ; lend3
= lend3
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VAIS'
1 1 1) 'VHNI'
1 1 3) ; lend4
= lend4
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VAIS'
1 1 1) 'VHNI'
1 1 4) ; lsig1
= lsig1
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VONS'
1 1 1) 'SMXX'
1 1 1) ; lsig2
= lsig2
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VONS'
1 1 1) 'SMXX'
1 1 2) ; lsig3
= lsig3
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VONS'
1 1 1) 'SMXX'
1 1 3) ; lsig4
= lsig4
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VONS'
1 1 1) 'SMXX'
1 1 4) ; leps1
= leps1
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VAIS'
1 1 1) 'VISX'
1 1 1) ; leps2
= leps2
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VAIS'
1 1 1) 'VISX'
1 1 2) ; leps3
= leps3
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VAIS'
1 1 1) 'VISX'
1 1 3) ; leps4
= leps4
ET (EXTR (EXTR (tv .
(&b1
- 1)) 'VAIS'
1 1 1) 'VISX'
1 1 4) ; FINSI ;
u1
= EXTR (tu .
(&b1
- 1)) 'UX' p2
; rea1
= EXTR (tr .
(&b1
- 1)) 'FX' p1
; ldep = ldep ET u1 ;
lrea = lrea ET rea1 ;
FIN b1 ;
ev0
= (EVOL 'ROUG' '
MANU' 'Temps' ltps 'D' lend1
) ET (EVOL 'ROUG' '
MANU' 'Temps' ltps 'D' lend2
) ET (EVOL 'ROUG' '
MANU' 'Temps' ltps 'D' lend3
) ET (EVOL 'ROUG' '
MANU' 'Temps' ltps 'D' lend4
) ; ev1
= (EVOL 'ROUG' '
MANU' 'EPXX' leps1 'SMXX' lsig1
) ET (EVOL 'ROUG' '
MANU' 'EPXX' leps2 'SMXX' lsig2
) ET (EVOL 'ROUG' '
MANU' 'EPXX' leps3 'SMXX' lsig3
) ET (EVOL 'ROUG' '
MANU' 'EPXX' leps4 'SMXX' lsig4
) ; ev2
= EVOL 'ROUG' '
MANU' 'UX' ldep 'FX' lrea
;*nh145313
lepd0
= PROG nb1
* epd0
; lepu = lep1 * umax / long ;
lepe = (2.**0.5) * nu * (ABS lepu) ;
*mess 'lepe avant seuillage 0'; list lepe;
seuil0
= lepe
MASQ 'EGAL'
0 ;*mess 'test seuil0';list seuil0;
lepe0 = seuil0 * 1.E-20 ;
*mess 'lepe0';list lepe0;
lepe = lepe + lepe0 ;
*mess 'lepe apres seuillage 0'; list lepe;
dc = un1 - ((epd0*(un1-lac1)/lepe) + (ac*(EXP(bc*(lepd0-lepe))))) ;
dc_m = 0. ;
REPE b2 ;
SI (EGA &b2 1) ;
dc_p = 1. ;
de_p = 0. ;
FINSI ;
ddc = dc_i - dc_p ;
dde = de_i - de_p ;
SI ((ddc < 0.) OU (dc_i < 0.) OU (dc_i > 1.) OU (dde < 0)) ;
ldc
= ldc
ET (PROG dc_m
) ; SINON;
SI (dc_i < dc_m) ;
ldc
= ldc
ET (PROG dc_m
) ; SINON ;
ldc
= ldc
ET (PROG dc_i
) ; FINSI ;
FINSI ;
dc_p = dc_i ;
de_p = de_i ;
QUIT b2 ;
FINSI ;
FIN b2 ;
dc = ldc ;
lsan1 = (un1 - dc) * you * lepu ;
* contrainte nulle = 1.E-20
lsig = (lsig1 + lsig2 + lsig3 + lsig4) / 4. ;
seuilsc
= lsig
MASQ 'EGSUP'
-1.
E-6
; sc0 = seuilsc * -1.E-20 ;
lsig
= (lsig
* (lsig
MASQ 'EGINF'
-1.
E-6
)) + sc0
; seuilsr
= lsan1
MASQ 'EGSUP'
-1.
E-6
; sr0 = seuilsr * -1.E-20 ;
lsan1
= (lsan1
* (lsan1
MASQ 'EGINF'
-1.
E-6
)) + sr0
; an0
= EVOL 'TURQ' '
MANU' 'Temps' ltps1 'D' dc
; an1
= EVOL 'TURQ' '
MANU' 'EPXX' lepu 'SMXX' lsan1
; SI ITRAC1 ;
DESS (ev0
ET an0
) 'LEGE' 'SE' tleg '
TITR' '
[2D PaF
] Endommagement vs Temps'
; DESS (ev1
ET an1
) 'LEGE' 'NO' tleg '
TITR' '
[2D PaF
] Contrainte vs Deformation'
; DESS ev2 '
TITR' '
[2D PaF
] Reaction vs Deplacement' 'LEGE' 'SO' tdess
; FINSI ;
* deformee
tps1 = tt . (&b2 - 1) ;
* trace de la deformee (pour controle visuel)
def1
= DEFO mail
(tu .
(&b2
- 1)) 33. 'ROUG'
; tit1
= CHAI '
[2D PaF
] Deformee au temps' ' ' tps1
; SI ITRAC1 ;
* TRAC (def0 ET def1) 'TITR' tit1 ;
FINSI ;
FIN b2 ;
SI ITRAC1 ;
FINSI ;
* comparaison Calcul / Reference sur la contrainte moyenne
ler1
= ABS (((ENLE lsig
1) - lsan1
) / lsan1
) ; eer1
= EVOL 'ORAN' '
MANU' 'Temps' ltps1 '|Ec.
rel|SMXX' ler1
; mer1
= (INTG eer1
) / dtps
; tit1
= CHAI '
[2D PaF
] Val.
abs.
Ec.
rel.|
(Calc
-Ref
)/Ref| Contr.
vs tps, moy.
int.|Ecart|' ' ' mer1
; SI ITRAC1 ;
FINSI ;
MESS '
*********** C A S #
5 :
2 D P O U T R E A F I B R E
************'
; SI (mer1 < 1.E-6) ;
MESS ' Moy.
int.
Val.
abs.
Ecart relatif entre Calcul
et Reference' ' ' mer1 '
< 1.
E-06
=> OK'
; SINO ;
MESS ' Moy.
int.
Val.
abs.
Ecart relatif entre Calcul
et Reference' ' ' mer1 '
> 1.
E-06
=> ECHEC'
; IERR = VRAI ;
FINS ;
FINSI ;
** Sortie sur Erreur 1152 en cas de non conformite
SI IERR ;
FINSI ;
FIN ;