* fichier : gdep3.dgibi ************************************************************************ * Section : Mecanique Flambage ************************************************************************ debproc charmeca tapas*'TABLE' ttt*'FLOTTANT'; mata= tapas.'MA_TABLE' ; pres1 = mata . 'CHAMPPRES';evpres= mata.'EVOLPRES'; xx = evpres extr 'ABSC' ; yy = evpres extr 'ORDO'; mo1= mata.'MODPRES'; ma1= mata.'MAPRES'; coefp= ipol ttt xx yy; pres2= pres1 * coefp; fpres= pressi coque mo1 pres2 'NORM' ; taa = table; taa.'ADDI_SECOND'= fpres; *taa.'ADDI_MATRICE'=?? finproc taa; complet = faux ; * ************************************************* * pour calcul complet mettre complet à : vrai; ************************************************* ****************************************************************** * * flambage d'une poutre avec encastrement glissant et rotule * sous force axiale suiveuse * * * similaire à gdep1.dgibi mais avec force suiveuse ****************************************************************** OPTIO DIME 2 ELEM SEG2 MODE 'PLAN' 'CONT' ; * | FORCE SUIVEUSE * | * P2 v /|o | x * | \|o | * | |_____ y * | * | * | * | * P1 | * --- * o o *----------------------------------------------------------------- * le pilotage est fait sur l'amplitude du deplacement differentiel * des points P1 et P2, auquel on attribue le signe du deplacement * transversal (UY) 'DEBPROC' AUTOPILO DELT*'CHPOINT' DELA*'CHPOINT' ZMOD*'MMODEL' ZMAT*'MCHAML' TTT*TABLE; Ux = ( EXTR DELT P217 'UX' ) ; Uy = ( EXTR DELT P1 'UY' ) ; U = (ux*ux + (uy*uy))**0.5 ; NORM1 = U * uy / (abs uy) ; FINPROC NORM1; *--------------------------------------------------------------- * MAILLAGE * P1 = 0. 0. ; P2 = 12. 0. ;p217=p2; P3 = 12. -.1 ; P4 = 12 .1 ; L1 = D 12 P1 P2 ; L2 = (P3 D 1 P2) D 1 P4 ; * * MODELE * MOD1 = MODEL L1 MECANIQUE ELASTIQUE coq2 ; mod2 = MODEL L2 MECANIQUE ELASTIQUE coq2 ; * * CARACTERISTIQUES MATERIELLES ET GEOMETRIQUES * MAT1 = MATER MOD1 YOUN 2.E7 NU 0.0 ; CAR1 = CARA MOD1 'EPAI' .15 ; MAT2 = MATER MOD2 YOUN 2.E7 NU 0.0 ; CAR2 = CARA MOD2 'EPAI' .15 ; MODTOT = MOD1 ET MOD2 ; CARTOT = CAR1 ET CAR2 ; MATOT = MAT1 ET MAT2 ; * * FORCES ET CONDITIONS AUX LIMITES * CL1 = BLOQ P1 UX RZ ; CL2 = BLOQ P2 UY ; CLT = CL1 ET CL2; * pres1 = manu chpo l2 1 'P' (1./.2) ; * multiplicateur de charge d Euler lamb1 = 96.383 ; comm 'resultat connu de gdep1.dgibi'; * * CALCUL NON-LINEAIRE GEOMETRIQUE * F11 = pres1 * LAMB1 ; F3 = FORCE (0. .5 ) P1 ; * *---- PREPARATION DE LA TABLE POUR NONLIN * * OBJET CHARGEMENT * LI1 = PROG 0. 100. ; LI2 = PROG 0. 100. ; LI3 = PROG 1. 1. ; EV3 = EVOL MANU LI1 LI3 ; EV11 = EVOL MANU T LI1 F(T) LI2 ; *CHA1 = (CHAR 'PSUI' F11 EV11) ET (CHAR 'MECA' F3 EV3) ; CHA1 = CHAR 'MECA' F3 EV3; mata= table ;mata.'MODPRES' = mod2; mata.'MAPRES' = mat2 et car2; mata.'CHAMPPRES'= f11 ; mata.'EVOLPRES' = ev11; *charg2 = char 'PSUI' chpo1 ev1 ; LIS1A = PROG 0. 0.65; TAB3 = TABLE; TAB3.'GRANDS_DEPLACEMENTS'=VRAI; TAB3.AUTOMATIQUE = VRAI ; TAB3.'AUTOCRIT' = 0.2 ; TAB3.'MAXITERATION'= 100 ; TAB3.'AUTOPAS' =1000 ; TAB3.'BLOCAGES_MECANIQUES' = CLT; TAB3.'MODELE' = MODTOT; TAB3.'CHARGEMENT' = CHA1; TAB3.'CARACTERISTIQUES' = (MATOT ET CARTOT); TAB3.'TEMPS_CALCULES' = LIS1A; tab3.'MA_TABLE'=mata; tab3.'PROCEDURE_CHARMECA'= vrai; tab3.'K_SIGMA'=faux; PASAPAS TAB3 ; * si complet; TAB3.'AUTOCRIT' = 0.5 ; LIS1B = PROG 0.9 pas 0.1 1.3 ; TAB3.'TEMPS_CALCULES' = LIS1B; PASAPAS TAB3 ; * TAB3.'AUTOCRIT' = 0.05 ; TAB3.'TEMPS_CALCULES' = prog 1.4 ; PASAPAS TAB3 ; TAB3.'AUTOCRIT' = 0.3 ; TAB3.'TEMPS_CALCULES' = prog 1.5 pas 0.1 1.8 ; PASAPAS TAB3 ; TAB3.'AUTOCRIT' = 0.2 ; TAB3.'TEMPS_CALCULES' = prog 1.9 ; PASAPAS TAB3 ; TAB3.'AUTOCRIT' = 0.4 ; TAB3.'TEMPS_CALCULES' = prog 2.0 ; PASAPAS TAB3 ; TAB3.'AUTOCRIT' = 0.3 ; TAB3.'TEMPS_CALCULES' = prog 2.1 pas 0.1 2.2 2.31 ; PASAPAS TAB3 ; finsi; ************************************************************** * COMPARAISON AVEC LES RESULTATS ANALYTIQUES * * 1) CHARGEMENT = 2.31 * PCR (equivalent à 1.152Pcr conservatif, * pour un angle de 60 degrées) DEP1 = PECHE TAB3 'DEPLACEMENTS' ; PP1 = POINT L1 12 ; XX1 = (EXTR DEP1 PP1 UX) + (COOR 1 PP1) ; YY1 = (EXTR DEP1 PP1 UY) + (COOR 2 PP1) ; XX2 = (EXTR DEP1 P2 UX) + (COOR 1 P2) ; YY2 = (EXTR DEP1 P2 UY) + (COOR 2 P2) ; TN = ((YY2 - YY1)/(XX2 - XX1)) ; ALPHA = ATG TN ; si complet ; ALPHATH = -60. ; ermax = 5.e-3 ; sinon ; ALPHATH = -1.062 ; ermax = 0.05 ; finsi; ER1 =((ABS (ALPHA - ALPHATH )) / (ABS ALPHATH )) * 100. ; opti echo 0 ; MESS 'ANGLE DE ROTATION P = 2.31 * PCRp ' ; MESS 'THEORIE ' ALPHATH 'CASTEM ' ALPHA '%ERREUR ' ER1 ; opti echo 1 ; * SI (ER1 < ermax); ERRE 0; SINON; ERRE 5; FINSI; FIN ;