Télécharger joi1_decol.dgibi

Retour à la liste

Numérotation des lignes :

  1. *----------------------------------------------------------------------*
  2. *
  3. * Objet :
  4. * controler le probleme (solution non physique) observé
  5. * lors de la re-ouverture du JOI1 dans la simulation avec
  6. * Cast3M 2019 de la compression du modele
  7. * simplife du ressort a lames SM_1_2 (stage 2020 )
  8. *
  9. * Test d'écrasement du système de maintien assemblage REP :
  10. * JOI1 Mohr-Coulomb avec glissements et décollements sur lame plastique
  11. *
  12. * Correction par PV le 26/04/2024 pour obtenir une solution physique
  13. * en utilisant l'augmentation automatique pour limiter les increments
  14. * de deformation
  15. *
  16. *----------------------------------------------------------------------*
  17.  
  18.  
  19. *=== OPTIONS ==========================================================*
  20.  
  21. 'OPTI' 'DIME' 3 ;
  22. 'OPTI' 'MODE' 'TRIDIM' ;
  23. 'OPTI' 'ELEM' 'CUB8' ;
  24. 'OPTI' 'DENS' 1.E-3 ;
  25. 'OPTI' 'DENS' 9.37500E-04 ;
  26. 'OPTI' 'TRAC' 'PSC' ;
  27.  
  28. LOGITRAC = FAUX; comm 'à reactiver si besoin visu'; ;
  29.  
  30. * - pas de temps = 1 s
  31. * 18.09.23 passage à 10sec OK pour analyse/cas test rapide
  32. PAS_C = 10.;
  33.  
  34. OEIL_Z = 0.90E+06 -0.11E+07 0.70E+06 ;
  35. O_1 = 0.90E+06 -3.30E+06 0.70E+06 ;
  36.  
  37. * Titres
  38. STR_Z3 = 'MOT' 'SYST.MAINT. - SM_1_2' ;
  39. NOM_ESS = 'MOT' 'Essai EDF' ;
  40.  
  41.  
  42. *=== PARAMETRES =======================================================*
  43.  
  44. *--- Ressort
  45. * Angle de la partie inclinee (degres)
  46. A_INCL = 41.3 ;
  47. * 1/2 largeur de la plaque de compression BB
  48. C6130 = 1.81920E-01 ;
  49. C6132 = 6.50000E-03 ;
  50. BB = (0.5 * C6130) + C6132 ;
  51. * Materiau A718
  52. YOUN1 = 2.000E+11 ;
  53. NU1 = 2.900E-01 ;
  54. ALPH1 = 1.390E-05 ;
  55. RHO1 = 8.210E+03 ;
  56. * PROGX = 'PROG'
  57. * 0.000E+00 4.850E-03 5.700E-03 6.100E-03 6.400E-03 6.800E-03
  58. * 7.400E-03 8.600E-03 1.000E-02 1.200E-02 1.500E-02 1.900E-02
  59. * 2.390E-02 2.870E-02 4.720E-02 8.520E-02 1.218E-01 1.528E-01
  60. * 1.761E-01 10.1761 ;
  61. * PROGY = 'PROG'
  62. * 0.000E+00 9.700E+08 1.090E+09 1.128E+09 1.146E+09 1.165E+09
  63. * 1.185E+09 1.212E+09 1.229E+09 1.246E+09 1.265E+09 1.285E+09
  64. * 1.306E+09 1.328E+09 1.383E+09 1.484E+09 1.564E+09 1.622E+09
  65. * 1.664E+09 1.968975E+10 ;
  66. PROGX = 'PROG'
  67. 0.000E+00 (5.700E-03-4.850E-03) (6.100E-03-4.850E-03)
  68. (6.400E-03-4.850E-03) (6.800E-03-4.850E-03)
  69. (7.400E-03-4.850E-03) (8.600E-03-4.850E-03)
  70. (1.000E-02-4.850E-03)
  71. (1.200E-02-4.850E-03) (1.500E-02-4.850E-03) (1.900E-02-4.850E-03)
  72. (2.390E-02-4.850E-03) (2.870E-02-4.850E-03)
  73. (4.720E-02-4.850E-03)
  74. (8.520E-02-4.850E-03) (1.218E-01-4.850E-03) (1.528E-01-4.850E-03)
  75. (1.761E-01-4.850E-03) (10.1761-4.850E-03) ;
  76. PROGY = 'PROG'
  77. 9.700E+08 1.090E+09 1.128E+09 1.146E+09 1.165E+09
  78. 1.185E+09 1.212E+09 1.229E+09 1.246E+09 1.265E+09 1.285E+09
  79. 1.306E+09 1.328E+09 1.383E+09 1.484E+09 1.564E+09 1.622E+09
  80. 1.664E+09 1.968975E+10 ;
  81. TRAC1 = 'EVOL' 'TURQ' 'MANU' 'EPS.TOT.R' PROGX 'SIG.R' PROGY ;
  82. * Section poutre
  83. SECT5 = (2.73000E-04 + 1.38320E-04) / 2. ;
  84. SECR5 = (5./6.) * SECT5 ;
  85. INRY5 = (3.19922E-10 + 4.16113E-11) / 2. ;
  86. INRZ5 = (7.53571E-09 + 3.81809E-09) / 2. ;
  87. TORS5 = (7.85563E-09 + 3.85970E-09) / 2. ;
  88. 'MESS' 'INRY moyen' ' ' INRY5 ;
  89. 'MESS' 'INRZ moyen' ' ' INRZ5 ;
  90. 'MESS' 'TORS moyen' ' ' TORS5 ;
  91. EP_M = (3.75E-3 + 1.9E-3) / 2. ;
  92. DY5 = EP_M / 2. * (3./4.) ;
  93. LA_T = 18.2E-3 * 4. ;
  94. DZ5 = LA_T / 2. * (3./4.) ;
  95.  
  96. *--- Plaque
  97. * Rotation RY de la plaque vers l'avant : AP_Y > 0
  98. AP_Y = 10. ;
  99. * Rotation RX de la plaque sur le cote : AP_X = 0
  100. AP_X = 0. ;
  101.  
  102. *--- Element de liaison JOI1
  103. DIR1 =
  104. ((COS AP_X)*(SIN AP_Y)) (-1.*(SIN AP_X)) ((COS AP_X)*(COS AP_Y)) ;
  105. DIR2 =
  106. (COS AP_Y) 0. (-1.*(SIN AP_Y)) ;
  107. COFRO1 = 0.44000 ;
  108. PHI1 = 'ATG' COFRO1 ;
  109.  
  110.  
  111. *=== MAILLAGE =========================================================*
  112.  
  113. *--- Ressort
  114. * Base
  115. RE_P1 = 0. 0. 0. ;
  116. RE_P2 = 2.66500E-02 0. 0. ;
  117. RE_L1 = 'DROI' RE_P1 RE_P2 ;
  118. * MESH_Z = RE_L1 'COUL' 'ROUG' ;
  119. * TITR_Z = 'CHAI' 'Base Ressort RE_L1' ;
  120. * 'TRAC' 'QUAL' 'TITRE' TITR_Z MESH_Z OEIL_Z ;
  121.  
  122. * Coude
  123. RE_O1 = 2.66500E-02 0. 1.25000E-02 ;
  124. RE_P3 = RE_P2 'TOUR' (-1.*A_INCL) RE_O1 (RE_O1 'PLUS' (0. 1. 0.)) ;
  125. RE_L2 = 'CERC' RE_P2 RE_O1 RE_P3 ;
  126. * MESH_Z = RE_L2 'COUL' 'ROUG' ;
  127. * TITR_Z = 'CHAI' 'Coude Ressort RE_L2' ;
  128. * 'TRAC' 'QUAL' 'TITRE' TITR_Z MESH_Z OEIL_Z ;
  129. * MESH_Z = RE_L1 'ET' (RE_L2 'COUL' 'ROUG') ;
  130. * 'TRAC' 'QUAL' 'TITRE' TITR_Z MESH_Z OEIL_Z ;
  131.  
  132. * Partie inclinee
  133. RE_P4 = 1.18000E-01 0. 7.42462E-02 ;
  134. RE_L3 = 'DROI' RE_P3 RE_P4 ;
  135. * MESH_Z = RE_L3 'COUL' 'ROUG' ;
  136. * TITR_Z = 'CHAI' 'Partie inclinee Ressort RE_L3' ;
  137. * 'TRAC' 'QUAL' 'TITRE' TITR_Z MESH_Z OEIL_Z ;
  138. * MESH_Z = RE_L1 'ET' RE_L2 'ET' (RE_L3 'COUL' 'ROUG') ;
  139. * 'TRAC' 'QUAL' 'TITRE' TITR_Z MESH_Z OEIL_Z ;
  140.  
  141. * Maillage Ressort
  142. RE_ME = RE_L1 'ET' RE_L2 'ET' RE_L3 ;
  143.  
  144. *--- Plaque
  145. * Bord de la plaque // X
  146. PL_Z = 'COOR' 3 RE_P4 ;
  147. PL_XP2 = 1.78760E-01 ;
  148. PL_P2 = PL_XP2 0. PL_Z ;
  149. PL_P1 = (PL_XP2 - (2.*BB)) 0. PL_Z ;
  150. PL_L1 = 'DROI' 1 PL_P1 PL_P2 ;
  151. * MESH_Z = PL_L1 'COUL' 'ROUG' ;
  152. * TITR_Z = 'CHAI' 'Bord // X Plaque PL_L1' ;
  153. * 'TRAC' 'QUAL' 'TITRE' TITR_Z MESH_Z OEIL_Z ;
  154. * MESH_Z = RE_ME 'ET' (PL_L1 'COUL' 'ROUG') ;
  155. * 'TRAC' 'QUAL' 'TITRE' TITR_Z MESH_Z OEIL_Z ;
  156.  
  157. * Rotation du bord de la plaque // X
  158. PL_O1 = PL_XP2 (-1. * BB) PL_Z ;
  159. PL_O2 = PL_XP2 BB PL_Z ;
  160. PL_L1 = PL_L1 'TOUR' AP_Y PL_O1 PL_O2 ;
  161. PL_P1 = PL_L1 'POIN' 'INITIAL' ;
  162. PL_P2 = PL_L1 'POIN' 'FINAL' ;
  163. * MESH_Z = PL_L1 'COUL' 'ROUG' ;
  164. * TITR_Z = 'CHAI' 'Bord Plaque PL_L1 apres rot. AP_Y' ' ' AP_Y ' deg' ;
  165. * 'TRAC' 'QUAL' 'TITRE' TITR_Z MESH_Z ;
  166. * MESH_Z = RE_ME 'ET' (PL_L1 'COUL' 'ROUG') ;
  167. * 'TRAC' 'QUAL' 'TITRE' TITR_Z MESH_Z ;
  168.  
  169. * Surface plaque
  170. V_EXTRU = 0. ( 2. * BB) 0. ;
  171. PL_S1 = PL_L1 'TRAN' 1 V_EXTRU ;
  172. * MESH_Z = PL_S1 'COUL' 'ROUG' ;
  173. * TITR_Z = 'CHAI' 'Plaque PL_S1 apres rot. AP_Y' ' ' AP_Y ' deg' ;
  174. * 'TRAC' 'QUAL' 'TITRE' TITR_Z MESH_Z OEIL_Z ;
  175. * MESH_Z = RE_ME 'ET' (PL_S1 'COUL' 'ROUG') ;
  176. * 'TRAC' 'QUAL' 'TITRE' TITR_Z MESH_Z OEIL_Z ;
  177.  
  178. * Maillage Plaque
  179. PL_ME = PL_S1 ;
  180.  
  181. *--- Element de liaison JOI1
  182. * Points d'accrochage du JOI1
  183. * - sur le ressort : RE_J1 = RE_P4
  184. * - sur la plaque : PL_J1 = proj. RE_P4 sur la plaque dans la dir. Uimp (Z)
  185. RE_J1 = RE_P4 ;
  186. PL_J1 = RE_P4 'PROJ' 'DIRE' (0. 0. 1.) 'PLAN'
  187. (PL_ME 'POIN' 'PROC' PL_P1)
  188. (PL_ME 'POIN' 'PROC' PL_P2)
  189. (PL_ME 'POIN' 'PROC' (PL_P1 'PLUS' V_EXTRU)) ;
  190. * Distance entre RE_J1 et PL_J1
  191. D_I = ( ((('COOR' 1 PL_J1) - ('COOR' 1 RE_J1))**2) +
  192. ((('COOR' 2 PL_J1) - ('COOR' 2 RE_J1))**2) +
  193. ((('COOR' 3 PL_J1) - ('COOR' 3 RE_J1))**2) )**0.5 ;
  194. * Maillage du JOI1
  195. JO_ME = 'DROI' 1 RE_J1 PL_J1 ;
  196. TITR_Z = 'CHAI' 'Jeu initial dans le JOI1' ' ' D_I ' m' ;
  197. MESH_Z = RE_ME 'ET' (PL_S1 'COUL' 'ROUG') 'ET' (JO_ME 'COUL' 'JAUN') ;
  198. * 'TRAC' 'QUAL' 'TITRE' TITR_Z MESH_Z OEIL_Z ;
  199.  
  200.  
  201. *=== MODELE ET MATERIAU ===============================================*
  202.  
  203. *--- Ressort
  204. RE_MO = 'MODE' RE_ME 'MECANIQUE' 'ELASTIQUE' 'PLASTIQUE' 'POUT'
  205. 'CONS' 'SM_1_2' ;
  206.  
  207. RE_MA = ('MATE' RE_MO 'YOUN' YOUN1 'NU' NU1 'ALPH' ALPH1
  208. 'RHO ' RHO1 'ECRO' TRAC1) 'ET'
  209. ('CARA' RE_MO 'SECT' SECT5 'SECY' SECR5 'SECZ' SECR5
  210. 'INRY' INRY5 'INRZ' INRZ5 'TORS' TORS5
  211. 'DX' 0. 'DY' DY5 'DZ' DZ5) ;
  212.  
  213. *--- Element de liaison JOI1
  214. JO_MO = 'MODE' JO_ME 'MECANIQUE' 'ELASTIQUE' 'ORTHOTROPE'
  215. 'PLASTIQUE' 'COULOMB'
  216. 'JOI1' 'CONS' 'JO_SM12' ;
  217.  
  218. * valeurs bidons sur mass jx jy jz pour pouvoir calculer une masse
  219. JO_MA = 'MATE' JO_MO 'DIRECTION' DIR1 DIR2
  220. 'KN' 1.E8 'KS1' 1.E8 'KS2' 1.E8
  221. 'QN' 1.E-7 'QS1' 1.E-7 'QS2' 1.E-7
  222. 'FRIC' PHI1 'TYPE' 1
  223. 'FNE' 1.E20 'QT' 1.E7 'COHE' 0. 'MASS' rho1 'JX' 1 'JY' 1 'JZ' 1;
  224.  
  225. *--- Assemblage
  226. MODTOT = RE_MO 'ET' JO_MO ;
  227. MATTOT = RE_MA 'ET' JO_MA ;
  228. * 'MESS' 'Modele total'; 'LIST' MODTOT ;
  229. * 'MESS' 'Materiau total'; 'LIST' MATTOT ;
  230.  
  231.  
  232. *=== CONDITIONS AUX LIMITES ===========================================*
  233.  
  234. *--- Maillages supports des CL sur l'ensemble inferieur
  235.  
  236. * Base du ressort
  237. CL_ME1 = RE_L1 ;
  238.  
  239. * Point de pilotage des deplacements de la base du ressort
  240. * et qui recoit la raideur inferieure du bati (point de liaison entre la
  241. * plaque inferieure support de l'embout et la partie inferieure du bati)
  242. * DZ_INF = 20 cm : distance verticale entre CL_ME1 et CL_ME2
  243. DZ_INF = 20.E-2 ;
  244. CL_ME2 = 0. 0. (-1.*DZ_INF) ;
  245.  
  246. * Ensemble inferieur CL_ME1 et CL_ME2 soumis a un mouvement de corps rigide
  247. CL_ME3 = CL_ME1 'ET' CL_ME2 ;
  248.  
  249. *--- CL sur l'ensemble inferieur
  250.  
  251. * Blocage du deplacement axial du point de pilotage
  252. * la partie inferieure du bati est supposee totalement rigide
  253. * dans la direction de compression des ressorts : UZ(CL_ME2) = 0
  254. CL1 = 'BLOQ' 'UZ' CL_ME2 ;
  255.  
  256. * Relation de corps rigide sur CL_ME3
  257. CL2 = 'RELA' 'CORI' 'DEPL' 'ROTA' CL_ME3 ;
  258.  
  259. * Relation d'ensemble en UZ sur 'CL_ME3'
  260. * pour eviter le basculement de l'ensemble (embout + ressort)
  261. CL3 = 'RELA' 'ENSE' 'UZ' CL_ME3 ;
  262.  
  263. * Blocage de la rotation RZ du bati inferieur
  264. * place sur CL_ME2
  265. CL4 = 'BLOQ' 'RZ' CL_ME2 ;
  266.  
  267. * Blocage du deplacement UX du bati inferieur
  268. * placee sur CL_ME2
  269. CL5 = 'BLOQ' 'UX' CL_ME2 ;
  270.  
  271. * Raideur externe en deplacement UY du bati inferieur
  272. * placee sur CL_ME2
  273. KUI_BATI = 20.E4 ;
  274. RE6 = 'APPU' 'UY' KUI_BATI CL_ME2 ;
  275.  
  276. *--- Maillages supports des CL sur l'ensemble superieur
  277.  
  278. * Ensemble superieur regroupant la plaque de compression PL_ME
  279. * et le point d'accrochage du JOI1 a la plaque PL_J1
  280. * soumis a un mouvement de corps rigide
  281. CL_ME4 = PL_ME 'ET' PL_J1 ;
  282.  
  283. *--- CL sur l'ensemble superieur
  284.  
  285. * Relation de corps rigide sur CL_ME4
  286. CL7 = 'RELA' 'CORI' 'DEPL' 'ROTA' CL_ME4 ;
  287.  
  288. * Blocage de la plaque PL_ME sauf en UZ
  289. * et/ou UX et/ou UY selon l'inclinaison de l'axe de poussee
  290. * 1. Axe de poussee vertical (AU_X = 0. ; AU_Y = 0.)
  291. * => deplacement UZ seulement (UX et UY bloques)
  292. CL8 = 'BLOQ' 'UX' 'UY' 'RX' 'RY' 'RZ' PL_ME ;
  293.  
  294. *--- Assemblage
  295. * Rigidite CL
  296. CLTOT = CL1 'ET' CL2 'ET' CL3 'ET' CL4 'ET'
  297. CL5 'ET' CL7 'ET' CL8 ;
  298.  
  299. * Rigidite constante externe
  300. RCTOT = RE6 ;
  301.  
  302.  
  303. *=== CHARGEMENT =======================================================*
  304.  
  305. *--- Chargement en deplacement impose de l'essai de compression EDF
  306.  
  307. * Depl.vertical imp. maxi et mini des cycles
  308. TAB_UV = 'TABLE' ;
  309. TAB_UV.0 = 0. ;
  310. TAB_UV.1 = 40.E-3 ;
  311. TAB_UV.2 = 0. ;
  312. TAB_UV.3 = 35.E-3 ;
  313. TAB_UV.4 = 0. ;
  314.  
  315. * Vitesse de charge/decharge = 5.E-3 m/min
  316. VIMP = 5.E-3 / 60. ;
  317.  
  318. * Pas de temps : t(i) = t(i-1) + (|u(i)-u(i-1)|/Vit.)
  319. TAB_TE = 'TABLE' ;
  320. TAB_TE.0 = 0. ;
  321. 'REPE' B_TE (('DIME' TAB_UV) - 1) ;
  322. TAB_TE. &B_TE = TAB_TE. (&B_TE - 1) +
  323. (('ABS' (TAB_UV. &B_TE - TAB_UV. (&B_TE - 1))) / VIMP) ;
  324. 'FIN' B_TE ;
  325.  
  326. * Evolution temporelle du chargement en deplacement impose
  327. * avec axe de poussee vertical (AU_X = 0. ; AU_Y = 0.)
  328. * Le debut de la montee en charge a lieu a t = 1.E-1s
  329. * de facon a ce que, si le poids propre est pris en compte, il se mette en place
  330. * avant (entre t = 1.E-4s et t = 1E-2s). On neglige l'ecart de 0.1s
  331. * par rapport a la duree totale (90.s) de la montee a UV1 sur la vitesse
  332. * de montee qui est par consequent legerement plus rapide que 5mm/min
  333. L_TPS = 'PROG' 0. 1.E-1 ;
  334. L_COZ = 'PROG' 0. 0. ;
  335. 'REPE' B_TE (('DIME' TAB_UV) - 1) ;
  336. L_TPS = L_TPS 'ET' ('PROG' TAB_TE . &B_TE) ;
  337. L_COZ = L_COZ 'ET' ('PROG' TAB_UV . &B_TE) ;
  338. 'FIN' B_TE ;
  339. * Prise en compte du signe du deplacement : vers -Z
  340. L_COZ = -1. * L_COZ ;
  341. EUZIMP = 'EVOL' TURQ 'MANU' 'TEMPS' L_TPS 'COEF' L_COZ ;
  342. TITR_Z = 'CHAI' 'UZ impose en fn du temps' ;
  343. 'DESS' EUZIMP 'TITR' TITR_Z ;
  344.  
  345. * Chargement UZ impose a la plaque
  346. RIG_1 = 'BLOQ' 'UZ' PL_ME ;
  347. DEP_1 = 'DEPI' RIG_1 1. ;
  348. CHA_1 = 'CHAR' 'DIMP' DEP_1 EUZIMP ;
  349.  
  350. *--- Chargement de jeu initial dans le JOI1
  351.  
  352. * MCHML zero partout
  353. DEF_0 = 'ZERO' MODTOT 'DEFORMATIONS' ;
  354. * Evolution temporelle
  355. EDEFJO = 'EVOL' 'MANU' 'TEMPS' ('PROG' 0. 1.E-4 1.E4)
  356. 'COEF' ('PROG' 0. 1. 1. ) ;
  357. * MCHML de jeu dans le JOI1
  358. DEF_JO = 'MANU' 'CHML' JO_MO 'EXX' (-1. * D_I)
  359. 'TYPE' 'DEFORMATIONS' 'STRESSES' ;
  360.  
  361. * Chargement 'DEFI' de jeu dans le JOI1
  362. DEF_2 = DEF_0 + DEF_JO ;
  363. CHA_2 = 'CHAR' 'DEFI' DEF_2 EDEFJO ;
  364.  
  365. *--- Assemblage
  366. CLTOT = CLTOT 'ET' RIG_1 ;
  367. CHATOT = CHA_1 'ET' CHA_2 ;
  368.  
  369. *=== RESOLUTION =======================================================*
  370.  
  371. *--- Liste des instants calcules, des resultats sauves, sauvegardes
  372.  
  373. * Instants calcules
  374.  
  375.  
  376. * - liste des instants
  377. I = 1 ;
  378. 'REPE' B_INST (('DIME' L_TPS) - 1) ;
  379. I = I + 1 ;
  380. T_PREC = 'EXTR' L_TPS (I - 1) ;
  381. T_COUR = 'EXTR' L_TPS I ;
  382. 'SI' (I 'EGA' 2) ;
  383. INST_C = 'PROG' T_PREC T_COUR ;
  384. 'FINS' ;
  385. 'SI' (I 'EGA' 3) ;
  386. 'SI' (T_PREC '<' 1.) ;
  387. T_PREC = 1. ;
  388. 'FINS' ;
  389. LIST_Z = 'PROG' T_PREC PAS PAS_C T_COUR ;
  390. INST_C = INST_C 'ET' LIST_Z ;
  391. 'FINS' ;
  392. 'SI' (I '>' 3) ;
  393. LIST_Z = 'PROG' T_PREC PAS PAS_C T_COUR ;
  394. LIST_Z = 'ENLE' LIST_Z 1 ;
  395. INST_C = INST_C 'ET' LIST_Z ;
  396. 'FINS' ;
  397. 'FIN' B_INST ;
  398. * 'MESS' 'Instants CALCULES'; 'LIST' INST_C ;
  399.  
  400. * Instants des resultats sauves
  401. * - pas de temps : 1 pas dont les resultats sont sauves tous les 1 pas de calcul
  402. PAS_R = 1 ;
  403. * - liste des instants
  404. 'REPE' B_INST ('DIME' INST_C) ;
  405. T_Z = 'EXTR' INST_C &B_INST ;
  406. 'SI' (T_Z '<' 1.) ;
  407. 'SI' (&B_INST 'EGA' 1) ;
  408. INST_R = 'PROG' ;
  409. 'SINO' ;
  410. INST_R = INST_R 'ET' ('PROG' T_Z) ;
  411. 'FINS' ;
  412. 'SINO' ;
  413. 'SI' (T_Z 'EGA' 1.) ;
  414. INST_R = INST_R 'ET' ('PROG' T_Z) ;
  415. I_Z = &B_INST + PAS_R ;
  416. 'SINO' ;
  417. 'SI' (&B_INST 'EGA' I_Z) ;
  418. INST_R = INST_R 'ET' ('PROG' T_Z) ;
  419. I_Z = &B_INST + PAS_R ;
  420. 'SI' (I_Z '>EG' ('DIME' INST_C)) ;
  421. INST_R = INST_R 'ET'
  422. ('PROG' ('EXTR' INST_C ('DIME' INST_C))) ;
  423. 'QUIT' B_INST ;
  424. 'FINS' ;
  425. 'FINS' ;
  426. * Pas de temps aux pics de chargement et aux six instants suivants
  427. * pour decrire l'hysteresis pendant la decharge
  428. 'SI' ((T_Z 'EGA' TAB_TE.1) 'OU' (T_Z 'EGA' TAB_TE.3)) ;
  429. 'REPE' B_1 6 ;
  430. INST_R = INST_R 'ET'
  431. ('PROG' ('EXTR' INST_C (&B_INST + &B_1 - 1))) ;
  432. 'FIN' B_1 ;
  433. 'FINS' ;
  434. * Pas de temps a chargement = 0
  435. 'SI' ((T_Z 'EGA' TAB_TE.2) 'OU' (T_Z 'EGA' TAB_TE.4)) ;
  436. INST_R = INST_R 'ET' ('PROG' T_Z) ;
  437. 'FINS' ;
  438. 'FINS' ;
  439. 'FINS' ;
  440. 'FIN' B_INST ;
  441. INST_R = 'ORDO' 'UNIQUE' INST_R ;
  442. * 'MESS' 'Instants des resultats SAUVES'; 'LIST' INST_R ;
  443.  
  444. * Instants sauvegardes
  445. * - pas de temps : 1 pas dont les resultats sont sauvegardes tous les 10 pas de calcul
  446. PAS_S = 10 ;
  447. 'REPE' B_INST ('DIME' INST_C) ;
  448. T_Z = 'EXTR' INST_C &B_INST ;
  449. 'SI' (T_Z '<' 1.) ;
  450. 'SI' (&B_INST 'EGA' 1) ;
  451. INST_S = 'PROG' ;
  452. 'SINO' ;
  453. INST_S = INST_S 'ET' ('PROG' T_Z) ;
  454. 'FINS' ;
  455. 'SINO' ;
  456. 'SI' (T_Z 'EGA' 1.) ;
  457. INST_S = INST_S 'ET' ('PROG' T_Z) ;
  458. I_Z = &B_INST + PAS_S ;
  459. 'SINO' ;
  460. 'SI' (&B_INST 'EGA' I_Z) ;
  461. INST_S = INST_S 'ET' ('PROG' T_Z) ;
  462. I_Z = &B_INST + PAS_S ;
  463. 'SI' (I_Z '>EG' ('DIME' INST_C)) ;
  464. INST_S = INST_S 'ET'
  465. ('PROG' ('EXTR' INST_C ('DIME' INST_C))) ;
  466. 'QUIT' B_INST ;
  467. 'FINS' ;
  468. 'FINS' ;
  469. 'FINS' ;
  470. 'FINS' ;
  471. 'FIN' B_INST ;
  472. INST_S = 'ORDO' 'UNIQUE' INST_S ;
  473. * 'MESS' 'Instants des resultats SAUVEGARDES'; 'LIST' INST_S ;
  474.  
  475. ** Debug
  476. * INST_C = 'PROG' 0. 0.1 1. 2. ;
  477. * INST_R = INST_C ;
  478. * INST_S = INST_C ;
  479. * 'MESS' 'Instants CALCULES'; 'LIST' INST_C ;
  480. * 'MESS' 'Instants des resultats SAUVES'; 'LIST' INST_R ;
  481. * 'MESS' 'Instants des resultats SAUVEGARDES'; 'LIST' INST_S ;
  482.  
  483. *--- Apel a PASAPAS
  484.  
  485. TAB1 = 'TABLE' ;
  486. TAB1 . 'MODELE' = MODTOT ;
  487. TAB1 . 'CARACTERISTIQUES' = MATTOT ;
  488. TAB1 . 'BLOCAGES_MECANIQUES' = CLTOT ;
  489. TAB1 . 'RIGIDITE_CONSTANTE' = RCTOT ;
  490. TAB1 . 'CHARGEMENT' = CHATOT ;
  491. TAB1 . 'GRANDS_DEPLACEMENTS' = VRAI ;
  492. TAB1 . 'TEMPS_CALCULES' = INST_C ;
  493. TAB1 . 'TEMPS_SAUVES' = INST_R ;
  494. TAB1 . 'TEMPS_SAUVEGARDES' = INST_S ;
  495. TAB1 . 'AUGMENTATION_AUTOMATIQUE' = VRAI; ;
  496. TAB1 . 'PRECISION' = 1D-7; ;
  497.  
  498. T_EPS_SUP = 'TABLE' ;
  499. TAB1 . 'MES_SAUVEGARDES' = T_EPS_SUP ;
  500. T_EPS_SUP . 'DEFTO' = VRAI ;
  501. T_EPS_SUP . 'DEFIN' = VRAI ;
  502.  
  503. PASAPAS TAB1 ;
  504.  
  505.  
  506. *=== POST-TRAITEMENT ==================================================*
  507.  
  508. *--- Visualisation de la deformee du ressort a lames sous le
  509. *--- depacement vertical de la plaque superieure consideree rigide
  510. *--- et des efforts de contact (appui + frottement)
  511. *--- de la plaque sur le ressort
  512.  
  513. * Nombre de pas de temps sauves
  514. NRESU = 'DIME' TAB1 . 'DEPLACEMENTS' ;
  515.  
  516. * Maillage ressort et plaque
  517. MAIL_TO = RE_ME 'ET' PL_ME ;
  518.  
  519. * Points de cadrage des images animees
  520. CADR_1 = -11.E-2 -11.E-2 -25.E-3 ;
  521. CADR_2 = 11.E-2 -11.E-2 -25.E-3 ;
  522. CADR_3 = 11.E-2 11.E-2 -25.E-3 ;
  523. CADR_4 = -11.E-2 11.E-2 -25.E-3 ;
  524.  
  525. * Maillage fixe (pour comparaison avec maillage deforme)
  526. MAIL_FI = PL_ME 'ET'
  527. ('COUL' (CADR_1 'ET' CADR_2 'ET' CADR_3 'ET' CADR_4) 'BLAN') ;
  528.  
  529. * Etat initial
  530. DEP0 = TAB1 . 'DEPLACEMENTS' . 0 ;
  531. DEF0 = 'DEFO' MAIL_FI DEP0 0. ;
  532.  
  533. * Boucle d'extraction des resultats sur les pas de temps sauves
  534. 'REPE' BRESU (NRESU - 1) ;
  535.  
  536. * Instant de calcul et champ de deplacement calcule
  537. TPS1 = 'EXTR' (TAB1 . 'TEMPS_SAUVES') &BRESU ;
  538. DEP1 = TAB1 . 'DEPLACEMENTS' . &BRESU ;
  539.  
  540. * controle signe de la réaction normale (pb vu au décollement)
  541. FOJ1 = 'REDU' (TAB1 . 'CONTRAINTES' . &BRESU) JO_MO ;
  542. FNOR = ('EXTR' FOJ1 'EFFX' 1 1 1) ;
  543. 'MESS' 'Resultat' ' ' &BRESU ' t =' TPS1
  544. 'MCHAML(EFFX) dans le JOI1, elem1, pt.Gauss1' ' ' FNOR ;
  545.  
  546. SI (FNOR > 1.E-8);
  547. ERRE 5 'signe reaction normale contact JOI1';
  548. FINSI;
  549.  
  550. * Changement des noms de composante du MCHAML d'apres les directions
  551. * locales du JOI1 :
  552. * - Ressort 1 : DIR1(EFFX) = 0. 0. 1. = Z
  553. * DIR2(EFFY) = 1. 0. 0. = X
  554. * DIR3(EFFZ) = 0. 1. 0. = Y
  555. FOJ2 = 'CHAN' 'COMP'
  556. ('MOTS' 'EFFX' 'EFFY' 'EFFZ' 'MOMX' 'MOMY' 'MOMZ')
  557. ('MOTS' 'FZ' 'FX' 'FY' 'MOMZ' 'MOMX' 'MOMY')
  558. FOJ1 ;
  559.  
  560. * Changement en CHPOIN et reduction au point de raccordement
  561. * avec la poutre ressort : RE_J1
  562. FOJ3 = 'REDU' ('CHAN' 'CHPO' JO_MO FOJ2) RE_J1 ;
  563.  
  564. * - Vecteur force
  565. VFOT3 = 'VECT' FOJ3 2.E-5 'FX' 'FY' 'FZ' VERT ;
  566.  
  567. * - Maillage deforme et vecteur force
  568. DEF2 = 'DEFO' MAIL_TO DEP1 1. VFOT3 ROUG ;
  569.  
  570. * Affichage
  571. STR_Z0 = 'CHAI' 'Coef.frot.' FRO1 ;
  572. STR_Z1 = 'CHAI' 'Force de contact sur maillage deforme' ' '
  573. 'FORMAT' '(F7.2)'TPS1' s' ;
  574. STR_Z2 = 'CHAI' NOM_ESS ' ' STR_Z3 ;
  575. TITR_Z = 'CHAI' STR_Z0 ' -' ' ' STR_Z1 ' -' ' ' STR_Z2 ;
  576. SI LOGITRAC;
  577. 'TRAC' 'TITR' TITR_Z (DEF0 'ET' DEF2) O_1 ;
  578. FINSI;
  579.  
  580.  
  581.  
  582.  
  583. 'FIN' BRESU;
  584.  
  585.  
  586.  
  587. * controle signe de la réaction normale
  588.  
  589.  
  590.  
  591.  
  592.  
  593.  
  594.  
  595. 'FIN' ;
  596.  
  597.  
  598.  
  599.  
  600.  
  601.  
  602.  
  603.  
  604.  
  605.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales