* fichier : norton_cis2.dgibi
**************************************************
* *
* TEST DE VALIDATION D'UNE LOI DE COMPORTEMENT *
* -------------------------------------------- *
* DE MATERIAU *
* ----------- *
* *
* LOI DE COMPORTEMENT DE FLUAGE DE : *
* NORTON *
* *
* COMPARAISON DE CALCULS SUR DES ELEMENTS: *
* - COQUE EPAISSE ( MFR=5 ) *
* - COQUE MINCE ( MFR=3 ) *
* - MASSIF 3D ( MFR=1 ) *
* *
* STRUCTURE : UNE PLAQUE CARREE *
* - COTE : 1. M *
* - EPAISSEUR : 0.01 M *
* *
* CHARGEMENT : FORCES IMPOSEES *
* CISAILLEMENT PUR *
* *
**************************************************
opti echo 0 dime 3 elem cub8 ;
*
* Maillage
*
l1 = 1. ;
l2 = 1. ;
ep0 = .01 ;
p1 = 0. 0. 0. ;
p2 = ep0 0. 0. ;
p3 = ep0 l2 0. ;
p4 = 0. l2 0. ;
p10 = 0. 0. l1 ;
p20 = ep0 0. l1 ;
p30 = ep0 l2 l1 ;
p40 = 0. l2 l1 ;
li1 = d p1 1 p2 ;
li2 = d p2 1 p3 ;
li3 = d p3 1 p4 ;
li4 = d p4 1 p1 ;
li10 = d p10 1 p20 ;
li20 = d p20 1 p30 ;
li30 = d p30 1 p40 ;
li40 = d p40 1 p10 ;
sur1 = 'DALL' li1 li2 li3 li4 ;
sur10 = 'DALL' li10 li20 li30 li40 ;
mail1 = sur1 'VOLU' 1 sur10 ;
*
* Modele
*
AF1 = 1.E-45 ;
AF2 = 5. ;
AF3 = 1.2 ;
SMAX = 2.1E8 ;
youn0 = 2.1E11 ;
nu0 = .3 ;
mod0 = 'MODE' mail1 'MECANIQUE' 'ELASTIQUE' 'ISOTROPE'
'FLUAGE' 'NORTON' ;
mat0 = 'MATE' mod0 'YOUN' youn0 'NU' nu0 'AF1' AF1
'AF2' AF2 'AF3' AF3 'SMAX' SMAX ;
*
* Conditions aux limites
*
cl1 = 'BLOQ' mail1 'UX' 'UZ' ;
cl2 = 'BLOQ' sur1 'UY' ;
cl0 = cl1 'ET' cl2 ;
*
* Chargement
*
depmax = 5.E5 ;
dep0 = 'FORCE' sur10 'FX' 0. 'FY' depmax 'FZ' 0. ;
ev0 = 'EVOL' 'MANU' temps ( 'PROG' 0. 1.E-2 1000. )
y ( 'PROG' 0. 1. 1. ) ;
cha0 = 'CHAR' 'MECA' dep0 ev0 ;
*
dt0 = .0500 ;
dt1 = 2. * dt0 ;
dt2 = 2. * dt1 ;
dt3 = 5. * dt2 ;
tfin0 = 40. ;
pro0 = ( 'PROG' 0. 'PAS' 1.E-2 dt0 ) 'ET'
( 'PROG' ( 2. * dt0 ) 'PAS' 5. 50. ) ;
*
* Appel à PASAPAS
*
ta1 = 'TABLE' ;
ta1 .'MODELE' = mod0 ;
ta1 .'CARACTERISTIQUES' = mat0 ;
ta1 .'CHARGEMENT' = cha0 ;
ta1 .'BLOCAGES_MECANIQUES' = cl0 ;
ta1 .'TEMPS_CALCULES' = pro0 ;
*
TMASAU=table;
ta1 . 'MES_SAUVEGARDES'=TMASAU;
TMASAU .'DEFTO'=VRAI;
TMASAU .'DEFIN'=VRAI;
PASAPAS ta1 ;
*
* Post traitement
*
dim0 = 'DIME' ta1 .'TEMPS' ;
*
* Résultats calculés
*
def0 = ta1 .'DEFORMATIONS_INELASTIQUES'.( dim0 - 1 ) ;
depl0 = ta1 .'DEPLACEMENTS'.( dim0 - 1 ) ;
sigm0 = ta1 .'CONTRAINTES'.( dim0 - 1 ) ;
temp0 = ta1 .'TEMPS'.( dim0 - 1 ) ;
var0 = ta1 .'VARIABLES_INTERNES'.( dim0 - 1 ) ;
eps0 = 'EPSI' mod0 depl0 ;
*
defo0 = 'DEFO' mail1 depl0 0. ;
defo1 = 'DEFO' mail1 depl0 10. 'ROUG' ;
*titr ' deformee finale' ;
*trace ( defo0 'ET' defo1 ) ;
*titr ' Deplacement suivant X' ;
*trace ( 'EXCO' depl0 'UX' ) mail1 ;
*titr ' Deplacement suivant Y' ;
*trace ( 'EXCO' depl0 'UY' ) mail1 ;
*titr ' Deplacement suivant Z' ;
*trace ( 'EXCO' depl0 'UZ' ) mail1 ;
sigm0 = 'CHAN' 'CHPO' sigm0 mod0 ;
*titr ' Contrainte suivant X' ;
*trace ( 'EXCO' sigm0 'SMXX' ) mail1 ;
*titr ' Contrainte suivant Y' ;
*trace ( 'EXCO' sigm0 'SMYY' ) mail1 ;
*titr ' Contrainte suivant Z' ;
*trace ( 'EXCO' sigm0 'SMZZ' ) mail1 ;
*titr ' Cisaillement X Y' ;
*trace ( 'EXCO' sigm0 'SMYZ' ) mail1 ;
eps0 = 'CHAN' 'CHPO' eps0 mod0 ;
*titr ' Deformation suivant X' ;
*trace ( 'EXCO' eps0 'EPXX' ) mail1 ;
*titr ' Deformation suivant Y' ;
*trace ( 'EXCO' eps0 'EPYY' ) mail1 ;
*titr ' Deformation suivant Z' ;
*trace ( 'EXCO' eps0 'EPZZ' ) mail1 ;
*titr ' Deformation X Y' ;
*trace ( 'EXCO' eps0 'GAYZ' ) mail1 ;
*
depl1 = 'EXTR' ( 'EXCO' eps0 'GAYZ' 'SCAL' ) 'SCAL' p10 ;
*
opti echo 0 dime 3 elem tri3 ;
*
* Maillage
*
l1 = 1. ;
l2 = 1. ;
p1 = 0. 0. 0. ;
p4 = 0. l2 0. ;
p10 = 0. 0. l1 ;
p40 = 0. l2 l1 ;
li1 = d p1 1 p4 ;
li2 = d p4 1 p40 ;
li3 = d p40 1 p10 ;
li4 = d p10 1 p1 ;
mail1 = 'DALL' li1 li2 li3 li4 ;
*
* Modele
*
mod0 = 'MODE' mail1 'MECANIQUE' 'ELASTIQUE' 'ISOTROPE'
'FLUAGE' 'NORTON' 'DKT' ;
mat0 = 'MATE' mod0 'YOUN' youn0 'NU' nu0 'AF1' AF1
'AF2' AF2 'AF3' AF3 'SMAX' SMAX ;
car0 = 'CARA' mod0 'EPAI' ep0 ;
*
* Conditions aux limites
*
cl1 = 'BLOQ' mail1 'UX' 'UZ' ;
cl2 = 'BLOQ' li1 'UY' ;
cl0 = cl1 'ET' cl2 ;
*
* Chargement
*
dep0 = 'FORCE' li3 'FX' 0. 'FY' depmax 'FZ' 0. ;
ev0 = 'EVOL' 'MANU' temps ( 'PROG' 0. 1.E-2 1000. )
y ( 'PROG' 0. 1. 1. ) ;
cha0 = 'CHAR' 'MECA' dep0 ev0 ;
*
* Appel à PASAPAS
*
ta1 = 'TABLE' ;
ta1 .'MODELE' = mod0 ;
ta1 .'CARACTERISTIQUES' = mat0 'ET' car0 ;
ta1 .'CHARGEMENT' = cha0 ;
ta1 .'BLOCAGES_MECANIQUES' = cl0 ;
ta1 .'TEMPS_CALCULES' = pro0 ;
*
TMASAU=table;
ta1 . 'MES_SAUVEGARDES'=TMASAU;
TMASAU .'DEFTO'=VRAI;
TMASAU .'DEFIN'=VRAI;
PASAPAS ta1 ;
*
* Post traitement
*
dim0 = 'DIME' ta1 .'TEMPS' ;
*
* Résultats calculés
*
def0 = ta1 .'DEFORMATIONS_INELASTIQUES'.( dim0 - 1 ) ;
depl0 = ta1 .'DEPLACEMENTS'.( dim0 - 1 ) ;
sigm0 = ta1 .'CONTRAINTES'.( dim0 - 1 ) ;
temp0 = ta1 .'TEMPS'.( dim0 - 1 ) ;
var0 = ta1 .'VARIABLES_INTERNES'.( dim0 - 1 ) ;
eps0 = 'EPSI' mod0 depl0 car0 ;
sigm0 = 'RTENS' sigm0 mod0 ( 0 1 0 ) ;
eps0 = 'RTENS' eps0 mod0 ( 0 1 0 ) ;
*
defo0 = 'DEFO' mail1 depl0 0. ;
defo1 = 'DEFO' mail1 depl0 10. 'ROUG' ;
*titr ' deformee finale' ;
*trace ( defo0 'ET' defo1 ) ;
*titr ' Deplacement suivant X' ;
*trace ( 'EXCO' depl0 'UX' ) mail1 ;
*titr ' Deplacement suivant Y' ;
*trace ( 'EXCO' depl0 'UY' ) mail1 ;
*titr ' Deplacement suivant Z' ;
*trace ( 'EXCO' depl0 'UZ' ) mail1 ;
sigm0 = 'CHAN' 'CHPO' sigm0 mod0 ;
*titr ' Contrainte suivant Y' ;
*trace ( 'EXCO' sigm0 'N11' ) mail1 ;
*titr ' Contrainte suivant Z' ;
*trace ( 'EXCO' sigm0 'N22' ) mail1 ;
*titr ' Cisaillement Y Z' ;
*trace ( 'EXCO' sigm0 'N12' ) mail1 ;
eps0 = 'CHAN' 'CHPO' eps0 mod0 ;
*titr ' Deformation suivant Y' ;
*trace ( 'EXCO' eps0 'EPSS' ) mail1 ;
*titr ' Deformation suivant Z' ;
*trace ( 'EXCO' eps0 'EPTT' ) mail1 ;
*titr ' Deformation Y Z' ;
*trace ( 'EXCO' eps0 'GAST' ) mail1 ;
*
depl2 = 'EXTR' ( 'EXCO' eps0 'GAST' 'SCAL' ) 'SCAL' p10 ;
*
opti echo 0 dime 3 elem qua8 ;
*
* Maillage
*
l1 = 1. ;
l2 = 1. ;
p1 = 0. 0. 0. ;
p4 = 0. l2 0. ;
p10 = 0. 0. l1 ;
p40 = 0. l2 l1 ;
p50 = 0. 0. ( l1 / 2. ) ;
p60 = 0. l2 ( l1 / 2. ) ;
li1 = d p1 1 p4 ;
li2 = d p4 1 p40 ;
li3 = d p40 1 p10 ;
li4 = d p10 1 p1 ;
mail1 = 'DALL' li1 li2 li3 li4 ;
*
* Modele
*
mod0 = 'MODE' mail1 'MECANIQUE' 'ELASTIQUE' 'ISOTROPE'
'FLUAGE' 'NORTON' 'COQ8' ;
mat0 = 'MATE' mod0 'YOUN' youn0 'NU' nu0 'AF1' AF1
'AF2' AF2 'AF3' AF3 'SMAX' SMAX ;
car0 = 'CARA' mod0 'EPAI' ep0 ;
*
* Conditions aux limites
*
cl1 = 'BLOQ' mail1 'UX' 'UZ' ;
cl2 = 'BLOQ' li1 'UY' ;
cl3 = 'RELA' 'ENSE' 'UY' li3 ;
cl0 = cl1 'ET' cl2 'ET' cl3 ;
*
* Chargement
*
p51 = mail1 'POIN' 'PROC' p50 ;
p61 = mail1 'POIN' 'PROC' p60 ;
dep1 = 'FORCE' li3 'FX' 0. 'FY' depmax 'FZ' 0. ;
dep0 = dep1 ;
ev0 = 'EVOL' 'MANU' temps ( 'PROG' 0. 1.E-2 1000. )
y ( 'PROG' 0. 1. 1. ) ;
cha0 = 'CHAR' 'MECA' dep0 ev0 ;
*
* Appel à PASAPAS
*
ta1 = 'TABLE' ;
ta1 .'MODELE' = mod0 ;
ta1 .'CARACTERISTIQUES' = mat0 'ET' car0 ;
ta1 .'CHARGEMENT' = cha0 ;
ta1 .'BLOCAGES_MECANIQUES' = cl0 ;
ta1 .'TEMPS_CALCULES' = pro0 ;
TMASAU=table;
ta1 . 'MES_SAUVEGARDES'=TMASAU;
TMASAU .'DEFTO'=VRAI;
TMASAU .'DEFIN'=VRAI;
*
PASAPAS ta1 ;
*
* Post traitement
*
dim0 = 'DIME' ta1 .'TEMPS' ;
*
* Résultats calculés
*
def0 = ta1 .'DEFORMATIONS_INELASTIQUES'.( dim0 - 1 ) ;
depl0 = ta1 .'DEPLACEMENTS'.( dim0 - 1 ) ;
sigm0 = ta1 .'CONTRAINTES'.( dim0 - 1 ) ;
temp0 = ta1 .'TEMPS'.( dim0 - 1 ) ;
var0 = ta1 .'VARIABLES_INTERNES'.( dim0 - 1 ) ;
eps0 = 'EPSI' mod0 depl0 car0 ;
sigm0 = 'RTENS' sigm0 mod0 ( 0 1 0 ) car0 ;
eps0 = 'RTENS' eps0 mod0 ( 0 1 0 ) car0 ;
*
defo0 = 'DEFO' mail1 depl0 0. ;
defo1 = 'DEFO' mail1 depl0 10. 'ROUG' ;
*titr ' deformee finale' ;
*trace ( defo0 'ET' defo1 ) ;
*titr ' Deplacement suivant X' ;
*trace ( 'EXCO' depl0 'UX' ) mail1 ;
*titr ' Deplacement suivant Y' ;
*trace ( 'EXCO' depl0 'UY' ) mail1 ;
*titr ' Deplacement suivant Z' ;
*trace ( 'EXCO' depl0 'UZ' ) mail1 ;
sigm0 = 'CHAN' 'CHPO' sigm0 mod0 ;
*titr ' Contrainte suivant Y' ;
*trace ( 'EXCO' sigm0 'SMSS' ) mail1 ;
*titr ' Contrainte suivant Z' ;
*trace ( 'EXCO' sigm0 'SMTT' ) mail1 ;
*titr ' Cisaillement Y Z' ;
*trace ( 'EXCO' sigm0 'SMST' ) mail1 ;
eps0 = 'CHAN' 'CHPO' eps0 mod0 ;
*titr ' Deformation suivant Y' ;
*trace ( 'EXCO' eps0 'EPSS' ) mail1 ;
*titr ' Deformation suivant Z' ;
*trace ( 'EXCO' eps0 'EPTT' ) mail1 ;
*titr ' Deformation Y Z' ;
*trace ( 'EXCO' eps0 'GAST' ) mail1 ;
*
depl3 = 'EXTR' ( 'EXCO' eps0 'GAST' 'SCAL' ) 'SCAL' p10 ;
*
'MESS' ' Déformation de cisaillement, calcul massif = ' depl1 ;
'MESS' ' Déformation de cisaillement, calcul coque mince = ' depl2 ;
'MESS' ' Déformation de cisaillement, calcul coque épaisse = ' depl3 ;
*
'SI' ( depl1 '>' 0. ) ;
err1 = ( 'ABS' ( depl1 - depl2 ) ) / depl1 ;
err1 = err1 * 100. ;
err2 = ( 'ABS' ( depl1 - depl3 ) ) / depl1 ;
err2 = err2 * 100. ;
'SINON' ;
err1 = 0. ;
err2 = 0. ;
'FINSI' ;
'MESS' ' Erreurs relatives obtenues, en % = ' err1 err2 ;
*
'SI' ( ( err1 '>' .2 ) 'OU' ( err2 '>' .2 ) ) ;
'ERRE' 5 ;
'SINON' ;
'ERRE' 0 ;
'FINSI' ;
*
'FIN' ;
© Cast3M 2003 - All rights reserved.
Disclaimer