Test name
dy_devo8
Calculation type
MECHANICS DYNAMICS 3D
IMPACT
LINKAGE POINT-MOVING CIRCLE, LINKAGE LINE-LINE-FRICTION
Finite element type
Topic
Impact of a thrust against a moving circle.
A point impacts a moving circle. Two different linkages are used and compared in this test.
The POINT_CERCLE_MOBILE linkage gives the impact of a point onto a mobile circle, taking into consideration the dry friction in the tangent plane of contact. The LIGNE_LIGNE_FROTTEMENT gives the impact of a slave line against a master line.
Goal
Find displacements UX and UY of the thrust. Comparison between both methods.
Reference
Version
97' customer version
Model description
Test dy_devo8 Results
CASTEM figures
* Test Dy_devo8.dgibi: Jeux de données * * ------------------------------------ * * * OPTION ECHO 0 ; OPTION ELEM SEG2 DIME 3 ; ********************************* * PROBLÈME * * Test de Comparaison entre * * les liaisons * * point_cercle_mobile et * * point_ligne . * * * * Impact d'une butée * * sur un cercle mobile . * * * ********************************* OC = 0. 0. 0. ; A = 0.04 0. 0. ; B = 0. 0.04 0. ; N = 0. 0. 1. ; C1 = CERC 100 B OC A ; C2 = C1 TOUR -90. OC N ; C3 = C1 ET C2 ; C4 = C3 TOUR -180. OC N ; C5 = C3 ET C4 ; OB = 0.01 0.038 0. ; CE1 = ELIM C5 0.0001 ; PCEX = 0 0 0 ; PCEY = 0 0 0 ; PCEZ = 0 0 0 ; PBX = 0 0 0 ; PBY = 0 0 0 ; PCX = 0 0 0 ; PCY = 0 0 0 ; N1 = 0. 0. 1. ; OEIL = 1. 1. 50. ; ********************************* * BASE MODALE * ********************************* MAI1 = (CE1 ET OB) ; CHPCE1 = MANU CHPO 6 (CE1 ET OC) 'UX' 1.0 'UY' 0.0 'UZ' 0.0 'RX' 0.0 'RY' 0.0 'RZ' 0.0 ; CHPCE2 = MANU CHPO 6 (CE1 ET OC) 'UX' 0.0 'UY' 1.0 'UZ' 0.0 'RX' 0.0 'RY' 0.0 'RZ' 0.0 ; CHPCE3 = MANU CHPO 6 (CE1 ET OC) 'UX' 0.0 'UY' 0.0 'UZ' 0.0 'RX' 0.0 'RY' 0.0 'RZ' 1.0 ; CHPOB1 = MANU CHPO 6 OB 'UX' 1.0 'UY' 0.0 'UZ' 0.0 'RX' 0.0 'RY' 0.0 'RZ' 0.0 ; CHPOB2 = MANU CHPO 6 OB 'UX' 0.0 'UY' 1.0 'UZ' 0.0 'RX' 0.0 'RY' 0.0 'RZ' 0.0 ; CHPOC1 = MANU CHPO 6 OC 'UX' 1.0 'UY' 0.0 'UZ' 0.0 'RX' 0.0 'RY' 0.0 'RZ' 0.0 ; CHPOC2 = MANU CHPO 6 OC 'UX' 0.0 'UY' 1.0 'UZ' 0.0 'RX' 0.0 'RY' 0.0 'RZ' 0.0 ; * POINT LIGNE_FROTTEMENT Z=0 0 0; TBAS1 = TABLE 'BASE_MODALE' ; TBAS1 . 'MODES' = TABLE 'BASE_DE_MODES' ; TBAS1 . 'MODES'. 'MAILLAGE' = CE1 ; TBAS1 . 'MODES'. 1 = TABLE 'MODE' ; TBAS1 . 'MODES'. 1 . 'POINT_REPERE' = PCEX ; TBAS1 . 'MODES'. 1 . 'FREQUENCE' = 0.0; TBAS1 . 'MODES'. 1 . 'MASSE_GENERALISEE' = 40.; TBAS1 . 'MODES'. 1 . 'DEFORMEE_MODALE' = CHPCE1 ; TBAS1 . 'MODES'. 1 .numero_mode = 1 ; TBAS1 . 'MODES'. 2 = TABLE 'MODE' ; TBAS1 . 'MODES'. 2 . 'POINT_REPERE' = PCEY ; TBAS1 . 'MODES'. 2 . 'FREQUENCE' = 0.0; TBAS1 . 'MODES'. 2 . 'MASSE_GENERALISEE' = 40.; TBAS1 . 'MODES'. 2 . 'DEFORMEE_MODALE' = CHPCE2 ; TBAS1 . 'MODES'. 2 .numero_mode = 2 ; TBAS2 = TABLE 'BASE_MODALE' ; TBAS2 . 'MODES' = TABLE 'BASE_DE_MODES' ; TBAS2 . 'MODES'. 'MAILLAGE' = (OB et Z); ; TBAS2 . 'MODES'. 1 = TABLE 'MODE' ; TBAS2 . 'MODES'. 1 . 'POINT_REPERE' = PBX ; TBAS2 . 'MODES'. 1 . 'FREQUENCE' = 0.0; TBAS2 . 'MODES'. 1 . 'MASSE_GENERALISEE' = 40.; TBAS2 . 'MODES'. 1 . 'DEFORMEE_MODALE' = CHPOB1 ; TBAS2 . 'MODES'. 1 .numero_mode = 1 ; TBAS2 . 'MODES'. 2 = TABLE 'MODE' ; TBAS2 . 'MODES'. 2 . 'POINT_REPERE' = PBY ; TBAS2 . 'MODES'. 2 . 'FREQUENCE' = 0.0; TBAS2 . 'MODES'. 2 . 'MASSE_GENERALISEE' = 40.; TBAS2 . 'MODES'. 2 . 'DEFORMEE_MODALE' = CHPOB2 ; TBAS2 . 'MODES'. 2 .numero_mode = 2 ; TBAST1 = TABLE 'ENSEMBLE_DE_BASES'; TBAST1.1=TBAS1; TBAST1.2=TBAS2; * POINT CERCLE_FROTTEMENT MAI2 = OC ET OB ; TBAS3 = TABLE 'BASE_MODALE' ; TBAS3 . 'MODES' = TABLE 'BASE_DE_MODES' ; TBAS3 . 'MODES'. 'MAILLAGE' = (OC et z); TBAS3 . 'MODES'. 1 = TABLE 'MODE' ; TBAS3 . 'MODES'. 1 . 'POINT_REPERE' = PCX ; TBAS3 . 'MODES'. 1 . 'FREQUENCE' = 0.0 ; TBAS3 . 'MODES'. 1 . 'MASSE_GENERALISEE' = 40. ; TBAS3 . 'MODES'. 1 . 'DEFORMEE_MODALE' = CHPOC1 ; TBAS3 . 'MODES'. 1 .numero_mode = 1 ; TBAS3 . 'MODES'. 2 = TABLE 'MODE' ; TBAS3 . 'MODES'. 2 . 'POINT_REPERE' = PCY ; TBAS3 . 'MODES'. 2 . 'FREQUENCE' = 0.0 ; TBAS3 . 'MODES'. 2 . 'MASSE_GENERALISEE' = 40. ; TBAS3 . 'MODES'. 2 . 'DEFORMEE_MODALE' = CHPOC2 ; TBAS3 . 'MODES'. 2 .numero_mode = 2 ; TBAST2 = TABLE 'ENSEMBLE_DE_BASES'; TBAST2.1 = TBAS3; TBAST2.2 =TBAS2; ***************************************** * CHARGEMENT * ***************************************** ***************************************** * TEMPS * ***************************************** PDT = 2.5E-5 ; NPDT = 400; NINS = 1; ********************************* * CONDITIONS INITIALES * ********************************* U0 = 5. ; V0 = 10. ; TINIT = TABLE 'INITIAL' ; TINIT.'VITESSE'= (MANU CHPO PBX 1 alfa U0 'NATURE' 'DIFFUS') ET (MANU CHPO PBY 1 alfa V0 'NATURE' 'DIFFUS'); ********************************* * LIAISON LIGNE_LIGNE * * FROTTEMENT * ********************************* TLIA1 = TABLE 'LIAISON' ; TLB1 = TABLE 'LIAISON_B' ; TLIA1 .'LIAISON_B' = TLB1 ; * CHRA=MANU 'CHPO' 1 OB 'RAIN' 100000000.; CHAM=MANU 'CHPO' 1 OB 'AMON' 63245.5; * TL1 = TABLE 'LIAISON_ELEMENTAIRE' ; TL1.'TYPE_LIAISON'= MOT 'LIGNE_LIGNE_FROTTEMENT'; TL1.'LIGNE_MAITRE' = CE1 ; TL1.'LIGNE_ESCLAVE' = OB ; TL1.'COEFFICIENT_GLISSEMENT' = 20.0 ; TL1.'COEFFICIENT_ADHERENCE' = 20.0 ; TL1.'RAIDEUR_TANGENTIELLE' = -100. ; TL1.'RAIDEURS' = CHRA; TL1.'AMORTISSEMENT_TANGENTIEL' = 0.01 ; *TL1.'AMORTISSEMENTS' =CHAM; TL1.'NORMALE' = N1; *TL1.'SYMETRIE' = 'GLOBALE'; TLB1.1 = TL1 ; ********************************* * LIAISON POINT_CERCLE * * FROTTEMENT * ********************************* TLIA2 = TABLE 'LIAISON' ; TLB2 = TABLE 'LIAISON_B' ; TLIA2 .'LIAISON_B' = TLB2 ; * TL2 = TABLE 'LIAISON_ELEMENTAIRE' ; TL2.'TYPE_LIAISON'= MOT 'POINT_CERCLE_MOBILE'; TL2.'POINT' = OB ; TL2.'CERCLE' = OC ; TL2.'COEFFICIENT_GLISSEMENT' = 20.0 ; TL2.'COEFFICIENT_ADHERENCE' = 20.0 ; TL2.'RAIDEUR_TANGENTIELLE' = -100. ; TL2.'RAIDEUR' = 100000000. ; TL2.'AMORTISSEMENT_TANGENTIEL' = 0.01 ; *TL2.'AMORTISSEMENT' =63245.5 ; TL2.'NORMALE' = N1 ; TL2.'RAYON' = 0.04 ; TLB2.1 = TL2 ; ********************************* * SORTIES * ********************************* TSORT1 = TABLE 'SORTIE' ; TSORT2 = TABLE 'SORTIE' ; TSOR1 = TABLE 'SORTIE' ; TSORT1.'VARIABLE' = TSOR1 ; TSORT2.'VARIABLE' = TSOR1 ; TSOR1.'DEPLACEMENT' = VRAI ; TSOR1.'VITESSE' = FAUX ; TSOR2 = TABLE 'SORTIE' ; TSORT1.'LIAISON_B' = TSOR2 ; TSOR2.TL1 = FAUX ; TSOR3 = TABLE 'SORTIE' ; TSORT2.'LIAISON_B' = TSOR3 ; TSOR3.TL2 = FAUX ; ********************************* * OPERATEUR DYNE * ********************************* TRESU11 = DYNE 'DIFFERENCES_CENTREES' TBAST1 TSORT1 TLIA1 TINIT NPDT PDT NINS ; TRESU2 = DYNE 'DIFFERENCES_CENTREES' TBAST2 TSORT2 TLIA2 TINIT NPDT PDT NINS ; * EV5 = EVOL rouge 'RECO' TRESU11 TBAST1 'DEPL' OB 'UX'; EV6 = EVOL rouge 'RECO' TRESU11 TBAST1 'DEPL' OB 'UY'; EV7 = EVOL 'RECO' TRESU2 TBAST2 'DEPL' OB 'UX'; EV8 = EVOL 'RECO' TRESU2 TBAST2 'DEPL' OB 'UY'; *dess (ev5 et ev7) ; dess (ev6 et ev8) ; TX1 =EXTR EV5 'ORDO'; TX2 =EXTR EV7 'ORDO'; TY1 =EXTR EV6 'ORDO'; TY2 =EXTR EV8 'ORDO'; NFOIS= dime tresu11.temps_de_sortie; max_x = 0.; max_y = 0.; * *recherche des maximums REPETER BLOC1 NFOIS; x1 = EXTR TX1 (&BLOC1); x2 = EXTR TX2 (&BLOC1); y1 = EXTR TY1 (&BLOC1); y2 = EXTR TY2 (&BLOC1); ecart_x = ABS(x1 - x2); ecart_y = ABS(y1 - y2); SI (ecart_x > max_x); max_x = ecart_x; FINSI; SI (ecart_y > max_y); max_y = ecart_y; FINSI; FIN BLOC1; * validation par rapport aux resultats numeriques * d'une certaine version SI (max_x > 0.0018); ERREUR 5; SINON; SI (max_y > 0.0012); ERREUR 5; SINON; ERREUR 0; FINSI; FINSI; FIN;
Test dy_devo8 Comments
TLIA1 = TABLE 'LIAISON' ;
TLB1 = TABLE 'LIAISON_B' ;
TLIA1 .'LIAISON_B' = TLB1 ;
CHRA = MANU 'CHPO' 1 OB 'RAIN' 100000000.;
TL1 = TABLE 'LIAISON_ELEMENTAIRE' ;
TL1.'TYPE_LIAISON'= MOT 'LIGNE_LIGNE_FROTTEMENT';
TL1.'LIGNE_MAITRE' = CE1 ;
TL1.'LIGNE_ESCLAVE' = OB ;
TL1.'COEFFICIENT_GLISSEMENT' = 20.0 ;
TL1.'COEFFICIENT_ADHERENCE' = 20.0 ;
TL1.'RAIDEUR_TANGENTIELLE' = -100. ;
TL1.'RAIDEURS' = CHRA ;
TL1.'AMORTISSEMENT_TANGENTIEL' = 0.01 ;
TL1.'NORMALE' = N1 ;
TL1.'SYMETRIE' = 'GLOBALE';
TLB1.1 = TL1 ;
The LIGNE_LIGNE_FROTTEMENT linkage is used for impacts of a slave line (TL1.'LIGNE_ESCLAVE') against a master line (TL1.'LIGNE_MAITRE'). The slave line can be restricted to one point like here. The vector N1 (TL1.'NORMALE') represents the normal perpendicular to the contact plane. The computation tests the penetration of the slave nodes in the master surface (TL1.'SYMETRIE').
The linkage takes into consideration the friction, also specific data must be given : the sliding coefficient (TL1.'COEFFICIENT_GLISSEMENT'), the adherence stress coefficient (TL1.'COEFFICIENT_ADHERENCE'), the tangential stiffness (TL1.'RAIDEUR_TANGENTIELLE'), the tangential damping (TL1.'AMORTISSEMENT_TANGENTIEL'). The impact stiffness (TL1.'RAIDEURS') is given in CHPOINT form (if the slave line is not restricted to one point, it is necessary to define the impact stiffness for each slave node).
TLIA2 = TABLE 'LIAISON' ;
TLB2 = TABLE 'LIAISON_B' ;
TLIA2 .'LIAISON_B' = TLB2 ;
TL2 = TABLE 'LIAISON_ELEMENTAIRE' ;
TL2.'TYPE_LIAISON'= MOT 'POINT_CERCLE_MOBILE';
TL2.'POINT' = OB ;
TL2.'CERCLE' = OC ;
TL2.'COEFFICIENT_GLISSEMENT' = 20.0 ;
TL2.'COEFFICIENT_ADHERENCE' = 20.0 ;
TL2.'RAIDEUR_TANGENTIELLE' = -100. ;
TL2.'RAIDEUR' = 100000000. ;
TL2.'AMORTISSEMENT_TANGENTIEL' = 0.01 ;
TL2.'NORMALE' = N1 ;
TL2.'RAYON' = 0.04 ;
TLB2.1 = TL2 ;
The POINT_CERCLE_MOBILE linkage is used for impacts of a point (TL2.'POINT') against a mobile circle. The circle is simply described by its center
(TL2.'CERCLE') and its radius (TL2.'RAYON'). The given normal (TL2.'NORMALE') is perpendicular to the circle plane.
The linkage takes into consideration the friction. Specific data are the same as the previous linkage except for the impact stiffness which is here a real (because it is related to one point).
REPETER BLOC1 NFOIS;
x1 = EXTR TX1 (&BLOC1);
x2 = EXTR TX2 (&BLOC1);
y1 = EXTR TY1 (&BLOC1);
y2 = EXTR TY2 (&BLOC1);
...
FIN BLOC1 ;
&BLOC1 is an integer which contains the number of times the loop BLOC1 has been in execution, it can therefore be used as a loop counter.