Download norton_cis2.dgibi

Back to the list

* 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