Download drx_grd_defo_cisail_elplas2.dgibi
* fichier : drx_grd_defo_cisail_elplas2.dgibi
*
* CAS TEST POUR LES GRANDES DÉFORMATIONS
*
* ref Rapport DMT 96/359 A de Gayffier
* "Les lois de comportement des matériaux solides
* en grandes déformations dans Castem2000 et Plexus"
*
* on considère un test de traction sur un rectangle
* en 2D deformation planes
*
* comparaison avec une solution analytique
*
* Ce cas test presente des variations incomprehensibles en fonction de la
* valeur de Rho. On va donc s'en passer en attendant de comprendre le
* phenomene
fin ;
*
*
*
*
*
*
compar = vrai ;
graph = faux;
*
opti dime 2 elem seg2 mode plan defo ;
y1 = 1. ;
y2 = 1. ;
p1 = 0. 0. ;
p2 = y1 0. ;
p3 = y1 y2 ;
p4 = 0. y2 ;
n = 1 ;
l1 = d n p1 p2 ;
l2 = d n p2 p3 ;
l3 = d n p3 p4 ;
l4 = d n p4 p1 ;
opti elem qua4 ;
su1 = dall l1 l2 l3 l4 plan ;
youn1 = 1.d11 ;
nu1 = 0.3 ;
mod1 = mode su1 mecanique elastique plastique parfait ;
mat1 = mate mod1 'YOUN' youn1 'NU' nu1 'RHO' 1.d0 'SIGY' 1.732d8;
blo1 = bloq l1 'UY' 'UX' ;
blox3 = bloq l3 'UX' ;
bloy3 = bloq l3 'UY' ;
blo2 = bloq l2 'UY' ;
blo4 = bloq l4 'UY' ;
* le chargement unité correspond à 100% de defo suivant x
fblo2 = depi blox3 y1 ;
lt1 = prog 0. pas 10. 100. ;
* L'acceleration des blocages est nulle
evt = evol manu lt1 (lt1 * 0.) ;
char1 = char 'MECA' evt fblo2 ;
tab1 = table 'DYNEXPLX' ;
tab1 . 'VITESSE_INITIALE' = ('MANU' 'CHPO' su1 2 'UX' 0. 'UY' 0.
'NATURE' 'DIFFUS')
+ ( 'MANU' 'CHPO' ( P3 ET P4 ) 1 'UX' 0.01) ;
tab1 . 'MODELE' = mod1 ;
tab1 . 'CARACTERISTIQUES' = mat1 ;
tab1 . 'CHARGEMENT'= char1 ;
tab1 . 'LIAISONS' = blo1 et blox3 et bloy3 ;
tab1 . 'GRANDES_DEFORMATIONS' = vrai ;
tab1 . 'PAS_TEMPS' = 1. ;
tab1 . 'NPASMAX' = 10000 ;
tab1 . 'TEMPS_SORTIE' = lt1 * 0.99999 ;
DREXUS tab1 ;
* sortie deformation - force suivant x
lpxx = prog ;
lpyy = prog ;
lpxy = prog ;
lpp = prog ;
lepxy = prog ;
i=0 ;
repeter bloc1 ( dime tab1 . deplacements ) ;
dep1 = tab1 . deplacements . i ;
sig1 = tab1 . contraintes . i ;
var1 = tab1 . variables_internes . i ;
def1 = tab1 . deformations_inelastiques . i ;
pxx = intg sig1 mod1 'SMXX';
pyy = intg sig1 mod1 'SMYY';
pxy = intg sig1 mod1 'SMXY';
p = ( intg var1 mod1 'EPSE' ) ;
epsxy = ( intg def1 mod1 'GAXY' ) / 2.;
lpxx = lpxx et (prog pxx ) ;
lpyy = lpyy et (prog pyy ) ;
lpxy = lpxy et (prog pxy ) ;
lpp = lpp et ( prog p ) ;
lepxy = lepxy et ( prog epsxy ) ;
i = i+1 ;
fin bloc1 ;
k2gdsxx = evol bleu manu 'defo' lt1 lpxx ;
k2gdsyy = evol bleu manu 'defo' lt1 lpyy ;
k2gdsxy = evol bleu manu 'defo' lt1 lpxy ;
k2gdhp = evol bleu manu 'defo' lt1 lpp ;
k2gdepxy = evol bleu manu 'defo' lt1 lepxy ;
tabgraf = table ;
tabgraf . 1 = 'MARQ CROI ' ;
tabgraf . 2 = 'MARQ ETOI ' ;
tabgraf . 3 = 'MARQ TRIA ';
tabgraf.'TITRE' = table ;
tabgraf .'TITRE'. 1 = mot 'sxx_k2000' ;
tabgraf .'TITRE'. 2 = mot 'syy_k2000' ;
tabgraf .'TITRE'. 3 = mot 'sxy_k2000';
si graph ;
dess ( k2gdsxx et k2gdsyy et k2gdsxy ) tabgraf
lege ;
finsi;
* solution analytique avec la derivée de Truesdell
* Cette solution a été obtenue par intégration d'un système
* d'équation réduit avec un algorithme de Runge Kutta.
* cf referénce page 37
lanaxx = prog
0.00000E+00 6.92658E+06 1.35932E+07 2.02597E+07 2.69263E+07
3.35929E+07 4.02595E+07 4.69260E+07 5.35926E+07 6.02592E+07
6.69258E+07 ;
ANASXX = evol rouge manu lt1 lanaxx ;
lanaxy = prog
0.00000E+00 9.99996E+07 9.99996E+07 9.99996E+07 9.99996E+07
9.99996E+07 9.99996E+07 9.99996E+07 9.99996E+07 9.99996E+07
9.99996E+07 ;
ANASXY = evol rouge manu lt1 lanaxy ;
lanayy = prog
0.00000E+00 6.40667E+06 1.30733E+07 1.97400E+07 2.64067E+07
3.30733E+07 3.97400E+07 4.64067E+07 5.30733E+07 5.97400E+07
6.64067E+07 ;
ANASYY = evol rouge manu lt1 lanaxy ;
tabgraf = table ;
tabgraf . 1 = 'MARQ CROI REGU ' ;
tabgraf . 2 = 'MARQ ETOI REGU ' ;
tabgraf . 3 = 'MARQ TRIA REGU ' ;
tabgraf . 4 = 'MARQ CROI REGU ' ;
tabgraf . 5 = 'MARQ ETOI REGU ' ;
tabgraf . 6 = 'MARQ TRIA REGU ' ;
tabgraf.'TITRE' = table ;
tabgraf .'TITRE'. 1 = mot 'sxx_ana' ;
tabgraf .'TITRE'. 2 = mot 'syy_ana' ;
tabgraf .'TITRE'. 3 = mot 'sxy_ana' ;
tabgraf .'TITRE'. 4 = mot 'sxx_k2000' ;
tabgraf .'TITRE'. 5 = mot 'syy_k2000' ;
tabgraf .'TITRE'. 6 = mot 'sxy_k2000' ;
titr 'Test de Cisaillement elasto-plastique -
H = 0' ;
si graph ;
dess ( anasxx et anasyy et anasxy
et k2gdsxx et k2gdsyy et k2gdsxy )
tabgraf LEGE ;
finsi;
* code de bon fonctionnement
* on regarde l'erreur pour 50% de déformation
err1 = (extr ( lpxx - lanaxx ) 5 ) / ( extr lanaxx 5 ) * 100.;
err2 = (extr ( lpxy - lanaxy ) 5 ) / ( extr lanaxy 5 ) * 100.;
'OPTI' 'ECHO' 0 ;
'SAUTER' 1 LIGNE ;
'MESS' 'Erreur sur SMXX' err1 '% ' 'Erreur sur SMXY' err2 '%';
'SAUTER' 1 LIGNE ;
'OPTI' 'ECHO' 1 ;
si ( ( err1 '>EG' 5. ) 'OU' ( err2 '>EG' 5. ) ) ;
erreur 5 ;
finsi ;
fin ;
© Cast3M 2003 - All rights reserved.
Disclaimer