* fichier : xfem_gd.dgibi ************************************************************************ ************************************************************************ ******************************************************************** * xfemcapipica.dgibi * * Test de l'opérateur de passage des contraintes(déformations) * PK2 aux contraintes de Cauchy pour la XFEM * d'une plaque elastique en traction avec fissure droite * * création : as, le 14.01.2010 ******************************************************************** * Options : *######## * pour afficher les messages et les graphes + choix de la sortie en .ps: lmess = faux ; lgraph = faux ; si lgraph ; lps=vrai; sinon; lps= faux; finsi; * Maillage : * ######## dx1 = 0.06 ; blim = 1. + 5 * dx1 ; nbr1 = enti (blim / dx1); * densité sur la hauteur de la bande : nbh1 = 3 ; hh1 = ((flot nbh1)*dx1); s1h = 'DALLER' lm ldh lh lgh ; s1b = 'DALLER' lb ldb lm lgb ; * fissure initiale : * ################# a0 = 3.*dx1; pfis0 = -0.01 0.; pfisi = a0 0.; * Modèle et materiau : * #################### Ey1 = 2.e5 ; nu1=0.3; rho1 = 7.e-6 ; * CHARGEMENT : déplacement imposé : * ################################# tf = 1.; NT = ENTI (3.*tf); coeff0 = 0.2; **################### ** Calcul MASSIF ** **################### s1q = s1h ; * Modèle et materiau : * #################### * Conditions aux limites, Déplacements imposés : * ################################################ cl1hx = 'BLOQUE' ptrach 'UX' ; cl1hy = 'BLOQUE' ptrach 'UY' ; cl1sym = 'BLOQUE' psyms 'UY' ; cl0 = (cl1hx 'ET' cl1hy 'ET' cl1sym) ; * Resolution iterative du probleme * ################################################ TAB0.'MODELE' = Mod1q ; TAB0.'CARACTERISTIQUES' = mat1q ; TAB0.'CHARGEMENT' = uimp0; TAB0.'BLOCAGES_MECANIQUES' = cl0 ; TAB0.'TEMPS_CALCULES' = L_t ; TAB0.'TEMPS_SAUVES' = L_t ; TAB0.'CONVERGENCE_FORCEE' = faux; TAB0.'DELTAITER' = 190; TAB0.'MAXITERATION' = 199; TAB0.'HYPOTHESE_DEFORMATIONS' = 'LINEAIRE'; PASAPAS tab0; *opti donn 5; **################## ** Calcul XFEM ** **################## s1 = s1h et s1b; * Modèle et materiau : * #################### Mod1 = Mod1a ; ** Table XFEM : fisssure initiale, critere d'initiation, modele zone cohesive ** ################################################################# TAB_xfem.fissure = fis0 ; * creation des level set psi1 phi1 = PSIPHI s1 fis0 'DEUX' pfisi; * Appel a TRIELE : * Conditions aux limites, Déplacements imposés : * ################################################ cl1hx = 'BLOQUE' ptrach 'UX' ; cl1bx = 'BLOQUE' ptracb 'UX' ; cl1hy = 'BLOQUE' ptrach 'UY' ; cl1by = 'BLOQUE' ptracb 'UY' ; cl1 = (cl1hx 'ET' cl1bx 'ET'cl1hy 'ET' cl1by) ; * CHARGEMENT : déplacement imposé : * Resolution iterative du probleme * ################################################ TAB1.'MODELE' = Mod1 ; TAB1.'CARACTERISTIQUES' = mat1 ; TAB1.'CHARGEMENT' = uimp0; TAB1.'BLOCAGES_MECANIQUES' = cl1 ; TAB1.'TEMPS_CALCULES' = L_t ; TAB1.'TEMPS_SAUVES' = L_t ; TAB1.'CONVERGENCE_FORCEE' = faux; TAB1.'DELTAITER' = 190; TAB1.'MAXITERATION' = 199; TAB1.'HYPOTHESE_DEFORMATIONS' = 'LINEAIRE'; *opti donn 5 ; pasapas tab1; **###################### ** Post-traitement ** *######################## si lgraph; finsi; **##################### * TEST de PICA et CAPI **###################### tab1.deplacements. 0 tab1.modele; tab1.modele; tab0.modele; si lmess ; mess ' '; mess ' '; mess ' '; finsi; el1 = 3; pg1 = 61; pg0 = 3; err6001 = abs ((sig01-sig00)/sig00); err6002 = abs ((cau11-cau01)/cau01); err6003 = abs ((pic11-pic01)/pic01); el3 = 2; err5001 = abs ((sig013-sig003)/sig003); err5002 = abs ((cau13-cau03)/cau03); err5003 = abs ((pic13-pic03)/pic03); el2 = 11; err26001 = abs ((sig012-sig002)/sig002); err26002 = abs ((cau12-cau02)/cau02); err26003 = abs ((pic12-pic02)/pic02); err5003 err26001 err26002 err26003 ); * Test de CAPI et PICA en grandes defs * * Configuration de départ = configuration initiale'; * ------------------------------------------------- * XFEM : FORM uvr1; PIC111 = capi CAU1 (tab1.deplacements. 0 - tab1.deplacements.naff) tab1.deplacements. naff tab1.modele; tab1.deplacements. naff tab1.modele; * Standard : form conf0; tab0.modele; tab0.modele; si lmess; mess ' '; mess ' '; fins; el1 = 3; pg1 = 61; pg0 = 3; err6001 = abs ((sig01-sig00)/sig00); err6002 = abs ((cau11-cau01)/cau01); err6003 = abs ((pic11-pic01)/pic01); el3 = 2; err5001 = abs ((sig013-sig003)/sig003); err5002 = abs ((cau13-cau03)/cau03); err5003 = abs ((pic13-pic03)/pic03); el2 = 11; err26001 = abs ((sig012-sig002)/sig002); err26002 = abs ((cau12-cau02)/cau02); err26003 = abs ((pic12-pic02)/pic02); err5003 err26001 err26002 err26003 ); si lmess; fins; * Erreur initiale entre calcul standard et XFEM: 0.10829 * Attention, on fait des erreurs assez importantes car le nombre de * pts de Gauss n'est pas le même dans les deux cas : * -> différences sur le calcul des contraintes initiales * -> le pt de gauss xq4r est le plus proche possible du pt QUA4 * mais reste different, 'où une erreur importante pour les éléments * en pointe de fissure. * pr etre sur, comparer avec éléments xq4r à 4pts de Gauss ->erreur~e-15 SI (errmax >EG 20.); FINSI; fin;
© Cast3M 2003 - Tous droits réservés.
Mentions légales