* fichier : rupt28.dgibi ************************************************************************ ************************************************************************ * GRAPH = 'O' ; * ************************ *Données paramètriques : ************************ * a : profondeur de la fissure * * t : epaisseur du tube * * ri, re : rayon interne/externe * * h : hauteur du tube * h = 1. ; t = 60.e-3 ; a = t/5 ; ri = t*5; re = ri+t; *POINTS POUR L'AXE DE REVOLUTION p0 = (0. 0. 0.); py = (0. 1. 0.); *COORDONNEE DE LA POINTE DE LA FISSURE pf = (a + ri) 0. 0.; *NOMBRE D'ELEMENTS AUTOUR DE LA POINTE DE LA FISSURE (1 et 2 COUT) n_fiss = 10; *TAILLE D'UN ELEMENT DE LA 1ERE ET 2EME COUTURE* t_el = 200e-6 ; t_el2 = 400e-6 ; *Facteur d'agrandissement de la taille du derafinement tt_el2 = 4.*t_el2 ; *LONGUEUR DE LA 1ERE ET 2EME COUTURE* lc1 = n_fiss * t_el ; lc2 = t_el2 * n_fiss; *NIVEAU DE CHARGEMENT p0T = -400. ; p0P = 400. ; dt0 = 300.; *============================================================= ************************************************************** *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * DEBUT DU MAILLAGE *============================================================= ************************************************************** *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ************************************************************** ********************** 1ERE COUTURE ************************ ************ (Autour de la pointe de la fissure) *********** ************************************************************** *cout1 = coul jaun cout1 ; ************************************************************** ********************** 2EME COUTURE ************************ ************ (Autour de la pointe de la fissure) *********** ************** Partie au-dessus de la fissure ************** ************************************************************** *cout2 = coul vert cout2 ; cout1et2 = cout1 et cout2; ************************************************************** ***************** DERAFINEMENT DES COUTURES **************** ************** Partie au-dessus de la fissure ************** ************************************************************** *------------------( DERAF A 4 ELEMENT )------------------- *------------------( DERAF A 3 ELEMENT )------------------- saa1 = sa1 ; repe i0 1 ; fin i0 ; sa1 = sa1 et ssa1 ; *---------------------- PARTIE GAUCHE ----------------------- *---------------------- PARTIE DROITE ----------------------- *---------------------- PARTIE HAUTE ----------------------- *lignes diagonales pour la symetrie *---------------------- PARTIE COIN ----------------------- cout_tot = cout1 et cout2 et cout3; ************************************************************** ********************* RESTE DU MAILLAGE ******************** ************** Partie au-dessus de la fissure ************** ************************************************************** *Partie de gauche *---------------- p_ri = ri 0. 0.; pg = d_partg tran *Partie de droite *---------------- p_re = re 0. 0.; pd = d_partd tran *Partie du haut *-------------- dini 1.6e-3 dfin t ; *Structure totale EN AXI ************************************* ************************************* *Definition des bords du maillage AXI n1 = 1; deg1 = 0.5 ; *Structure totale EN 3D ************************************************* ************************************************* * Creation des surfaces inferieure et superieure. *surbas = (l_bas et lvsup)rota n1 deg1 p0 py; *Defintion du front de fissure pfx = pfx1 0. pfx3; pfx et fr_fiss et f1 et f2) 1.e-5; si (ega GRAPH 'O') ; fins ; *Trois points sur la surface f2 si (ega GRAPH 'O') ; trac V0 qual cach ; fins ; *============================================================= ************************************************************** *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * FIN DU MAILLAGE *============================================================= ************************************************************** *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ *============================================================= ************************************************************** *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * PARTIE CALCULS *============================================================= ************************************************************** *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * PROPRIETES MATERIAUX A 300°C coefEP = 5. ; E0 = 185e3; nu0 = 0.4999 ; alfa0 = 13.08e-6; *ldc elasto plastique dsig = 0.01 ; si (ega GRAPH 'O') ; list ec3002; fins ; *mo0 = mode v0 mecanique elastique isotrope ; *ma0 = mate mo0 YOUN E0 nu nu0 alph alfa0 ; * CONDITIONS AUX LIMITES cl0 = cl1 et cl2 et cl3 et cl4 ; * CHARGEMENT *Traction uniaxiale *Gradient de temperature chrr = ((chx ** 2) + (chz ** 2)) ** 0.5 ; chr = (chrr - ri) / (re - ri) ; tt1 = table ; tt2 = table ; tt1 . 0 = 0. ; tt1 . 1 = 1. ; tt2 . 0 = cht0 ; tt2 . 1 = cht1 ; *Contraintes résiduelles *********************************************** *CALCUL ELASTOPLASTIQUE : Contraintes résiduelles *********************************************** tab_meca = table ; tab_meca . 'MODELE' = mo0 ; tab_meca . 'CARACTERISTIQUES' = ma0 ; tab_meca . 'BLOCAGES_MECANIQUES' = cl0 ; tab_meca . 'CHARGEMENT' = chSR ; tab_meca . 'TEMPS_CALCULES' = tcha ; tab_meca . 'HYPOTHESE_DEFORMATIONS' = 'LINEAIRE' ; pasapas tab_meca ; ************************************ * CALCUL DE J ELASTO-PLASTIQUE ************************************ tabJpl = table ; tabJpl . 'SOLUTION_PASAPAS' = tab_meca ; tabjpl . 'MAILLAGE' = v0 ; tabJpl . 'LEVRE_SUPERIEURE' = surlev ; tabJpl . 'FRONT_FISSURE' = fr_fiss ; tabJpl . 'COUCHE' = 4 ; g_theta tabJpl ; JplRS = tabJpl.resultats.np.global ; *********************************************** *CALCUL ELASTOPLASTIQUE : Traction uniaxiale *********************************************** tab_meca = table ; tab_meca . 'MODELE' = mo0 ; tab_meca . 'CARACTERISTIQUES' = ma0 ; tab_meca . 'BLOCAGES_MECANIQUES' = cl0 ; tab_meca . 'CHARGEMENT' = cha0 ; tab_meca . 'TEMPS_CALCULES' = tcha ; tab_meca . 'HYPOTHESE_DEFORMATIONS' = 'LINEAIRE' ; pasapas tab_meca ; ************************************ * CALCUL DE J ELASTO-PLASTIQUE ************************************ tabJpl = table ; tabJpl . 'SOLUTION_PASAPAS' = tab_meca ; tabJpl . 'LEVRE_SUPERIEURE' = surlev ; tabJpl . 'FRONT_FISSURE' = fr_fiss ; tabJpl . 'COUCHE' = 4 ; g_theta tabJpl ; JplT = tabJpl.resultats.np.global ; *********************************************** *CALCUL ELASTOPLASTIQUE : Chargement thermique *********************************************** tab_ther = table ; tab_ther . 'MODELE' = mo0 ; tab_ther . 'CARACTERISTIQUES' = ma0 ; tab_ther . 'BLOCAGES_MECANIQUES' = cl0 ; tab_ther . 'CHARGEMENT' = chaT ; tab_ther . 'TEMPS_CALCULES' = tcha ; tab_ther . 'HYPOTHESE_DEFORMATIONS' = 'LINEAIRE' ; pasapas tab_ther ; ************************************ * CALCUL DE J ELASTO-PLASTIQUE ************************************ tabJpl = table ; tabJpl . 'SOLUTION_PASAPAS' = tab_ther ; tabJpl . 'LEVRE_SUPERIEURE' = surlev ; tabJpl . 'FRONT_FISSURE' = fr_fiss ; tabJpl . 'COUCHE' = 4 ; g_theta tabJpl ; JplTH = tabJpl.resultats.np.global ; **************************************** ********* SOLUTIONS ANALYTIQUES ********* ***************************************** *Fonctions d'influence i0 = 1.2208 ; i1 = 0.7205 ; *Contraintes imposées pour le gradient de temperature sig0 = ((E0*alfa0*dt0)/(1-nu0)) * (ri/(3*t)) * ((2*(re**2))/(ri*(re+ri)) - 1); sig1 = -1. * ((E0*alfa0*dt0)/(1-nu0)); * J analytiques JT = coefEP * (1-(nu0**2)) * ((i0*(-1.*p0T)*((pi*a)**(1./2.)))**2) / E0; JTH = (1-(nu0**2)) / coefEP * ((((i0*sig0)+ (i1*sig1*(a/t)))*((pi*a)**(1./2.))) **2)/E0; *Erreurs sur J entre la solution analytique et le MEF errT = ((JplT-JT)/JT)*100.; errTH = ((JplTH-JTH)/JTH)*100.; errRS = ((JplRS-JTH)/JTH)*100.; mess 'Solution MEF : ' JplT JplTH JplRS ; mess 'Solution Theorique : ' JT JTH JTH; mess 'Erreur en % : ' errT errTH errRS ; * Test sur les erreurs si ((abs errT) > 3.1) ; erre 'Erreur sur le calcul de JplT' ; fins ; si ((abs errTH) > 3.7) ; erre 'Erreur sur le calcul de JplTH' ; fins ; si ((abs errRS) > 3.7) ; erre 'Erreur sur le calcul de JplRS' ; fins ; FIN ;
© Cast3M 2003 - Tous droits réservés.
Mentions légales