* fichier : norton_cis2.dgibi ************************************************************************ * Section : Mecanique Fluage ************************************************************************ ************************************************** * * * 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' ;