* fichier : dy_devo7.dgibi ************************************************************************ ************************************************************************ d_pasa = vrai ; temps ; *********************** * * poutre sous charge mobile * ********************** option echo 1; graph = faux ; ** barre ne = 10; xl = 1.; A1 = 0. 0. 0.; A2 = xl 0. 0 ; l1 = d ne a1 a2; PSOl1= 0 0 0; MSOL1= 1.0; KSOL1= 100.0; WSOL1= (KSOL1/ MSOL1)**0.5; FREQSOL1 = wsol1 / (2 * pi ) ; xlz = sin ( 180. * lx ) ; rx 0.0 ry 0.0 rz 0.0; *support b1 = 0. 0. 1e-8; PSOL2 = 0 0 0; rx 0.0 ry 0.0 rz 0.0; PSOL3 = 0 0 0; MSOL2 = .001; KSOL2 = 0.; WSOL2 = (KSOL2 / MSOL2)**0.5; FREQSOL2 = wsol2 / (2 * pi ) ; rx 0.0 ry 0.0 rz 0.0; ************************** ************************** ** BASE DE MODE GLOBALE ** ************************** ************************** TBAS2 = table 'BASE_MODALE'; TAB2 = table 'BASE_DE_MODES'; tab2.maillage = b1 ; TBAS2.'MODES' = TAB2; TABSOL2 = table 'MODES'; TABSOL2.'POINT_REPERE' = PSOL2; TABSOL2.'FREQUENCE' = FREQSOL2; TABSOL2.'MASSE_GENERALISEE' = MSOL2; TABSOL2.'DEFORMEE_MODALE' = DEFSOl2; TABSOL2.numero_mode = 1; TAB2 . 1 = TABSOL2; mo_mod2 = modele mai2 mecanique elastique modal ; TABSOL3 = table 'MODES'; TABSOL3.'POINT_REPERE' = PSOL3; TABSOL3.'FREQUENCE' = FREQSOL2; TABSOL3.'MASSE_GENERALISEE' = MSOL2; TABSOL3.'DEFORMEE_MODALE' = DEFSOL3; TABSOL3.numero_mode = 2; TAB2 . 2 = TABSOL3; mo_mod3 = modele mai3 mecanique elastique modal ; TBAS1 = table 'BASE_MODALE'; TAB1 = table 'BASE_DE_MODES'; tab1.maillage = l1 ; TBAS1.'MODES' = TAB1; TABSOL1 = table 'MODES'; TABSOL1.'POINT_REPERE' = PSOL1; TABSOL1.'FREQUENCE' = FREQSOL1; TABSOL1.'MASSE_GENERALISEE' = MSOL1; TABSOL1.'DEFORMEE_MODALE' = DEFSOL1; TABSOL1.numero_mode = 1; TAB1 . 1 = TABSOL1; mo_mod1 = modele mai1 mecanique elastique modal ; TABTOT = table 'ENSEMBLE_DE_BASES'; TABTOT . 1 = TBAS1; TABTOT . 2= TBAS2; mo_moda = mo_mod1 et mo_mod2 et mo_mod3 ; ca_moda = ca_mod1 et ca_mod2 et ca_mod3 ; *********************************** *********************************** ** Definition de l'amortissement ** *********************************** *********************************** TAMOR = table 'AMORTISSEMENT'; TAMOR . 'AMORTISSEMENT' = AMORTOT; ***************************** TLIA = table 'LIAISON'; TLB = table 'LIAISON_B'; TLIA.'LIAISON_B' = TLB; raid1 = 1e4 ; amor1 = 2*((raid1*msol2)**.5)/2; N1 = 0. 1. 0.; TL1 = table 'LIAISON_ELEMENTAIRE'; TL1.'LIGNE_MAITRE' = l1; TL1.'LIGNE_ESCLAVE' = b1; TL1.'COEFFICIENT_GLISSEMENT' = 0.0; TL1.'COEFFICIENT_ADHERENCE' = 0.0; TL1.'RAIDEUR_TANGENTIELLE' = -1; TL1.'RAIDEURS' = raidn1; TL1.'AMORTISSEMENT_TANGENTIEL' = 1e-2; TL1.'AMORTISSEMENTS' =amorn1; TL1.'NORMALE' = N1; tlb.1=TL1; mollf1 = modele mallf1 liaison ligne_ligne frottement ; TSORT = TABLE 'SORTIE'; TSORV = TABLE 'VARIABLE'; TSORT.'VARIABLE' = TSORV; TSORV.'DEPLACEMENT' = vrai; TSORV.'VITESSE' = vrai; TSOR2 = TABLE 'SORTIE' ; TSORT.'LIAISON_B' = TSOR2 ; tsorv2 = table variable ; tsorv2.'CHPOINT_FORCE_DE_CHOC'= vrai ; tsorv2.'UX_POINT_DE_CONTACT'= vrai; tsorv2.'VITESSE_TANGENTIELLE'= vrai; tsorv2.'FORCE_DE_CHOC_NORMALE' = vrai ; tsor2.tl1 = tsorv2 ; tmollf1 = table ; tmollf1 . mollf1 = tsorv2 ; ***************************************** ***************************************** ** Definition des conditions initiales ** ***************************************** ***************************************** TINIT = table 'INITIAL'; v0 = 1.; ******************************* PDT = 2e-4; NP = 5000; NINS = 50; ******************************* ** Application du chargement ** ******************************* ******************************* FFZ = 1.0/100; FOA1 = force fx 0.0 fy 0.0 fz (-1 * FFZ) b1; pas PDT (NP * PDT * 2); *dessin EVCHA; TCHA1 = TABLE 'CHARGEMENT' ; TCHA1.'BASE_A' = CHAZ; ******************** ******************** ** Operateur DYNE ** ******************** ******************** tabdyn . chargement = cha2 ; tabdyn . vitesses = table ; tabdyn . modele = mo_moda et mollf1 ; tabdyn . caracteristiques = ca_moda et callf1 ; si d_pasa ; tabdyn . dynamique = vrai ; pasapas tabdyn ; sinon ; tabdyn . sortie = table ; tabdyn . sortie . mollf1 = tsorv2 ; tabdyn . pas_de_temps = pdt ; tabdyn . nombre_pas = np ; tabdyn . pas_de_sortie = nins ; dyne de_vogelaere tabdyn ; finsi ; * TRESU = DYNE 'DE_VOGELAERE' TABTOT tamor TINIT tcha1 tSORT TLIA NP PDT NINS; LIS_TEM = TRESU . 'TEMPS_DE_SORTIE'; si d_pasa ; l_fdcn1 = l_fdcn1 et ttu1.force_de_choc_normale ; finsi ; fin bs ; * solution exacte omb= pi * v0 / xl; beta = omb / wsol1; s1 = sin ( lis_tem * omb * 180. / pi) ; s2 = sin ( lis_tem * wsol1 * 180. / pi) ; lz0 =( -1 / ksol1) * (1. / ( 1 - (beta*beta))) * ( s1 - ( beta * s2) ) ; ecart = ( abs (xmax - xmax0)) / (abs (xmax)) ; eccart = ( abs (xmmax - xmax0)) / (abs (xmmax)) ; * * verification du bon fonctionement des sorties si d_pasa ; finsi ; sinon ; tabdyn . liaisons . mollf1 . force_de_choc_normale ; finsi ; x1= tresu.tl1.'CHPOINT_FORCE_DE_CHOC'.&bou1 ; tt1 = tabdyn . temps . (&bou1-1) ; mess 't1' t1 'tt1' tt1 ; si d_pasa ; si (&bou1 > 1 ) ; xxx1 = ttu1 . 'CHPOINT_FORCE_DE_CHOC' ; finsi ; sinon ; xx1 = tabdyn . liaisons . mollf1 . 'CHPOINT_FORCE_DE_CHOC'. &bou1 ; finsi ; si (&bou1 > 1) ; sinon ; finsi ; fin bou1 ; si graph ; titre ' force choc normale ' ; titre ' force choc / normale ' ; titre ' force choc / tangente ' ; titre ' trajectoire ' ; finsi ; temps; si (( ecart > 0.01 )ou ( eccart > 0.01 )); sinon; finsi; fin;
© Cast3M 2003 - Tous droits réservés.
Mentions légales