Télécharger @USINIB.procedur

Retour à la liste

Numérotation des lignes :

  1. * @USINIB PROCEDUR MB234859 19/11/27 21:15:01 10399
  2. ***********************************************************************
  3. * PROCEDURE @USINIB
  4. *
  5. * Procedure qui initialise les indices de la table 'BOITES_USURE' ou
  6. * seront stockes les resultats de calcul
  7. *
  8. * Entrees :
  9. * T1 : Table de PASAPAS
  10. * ID_BU : Entier donnant le numero de la BOITE D'USURE a considerer
  11. *
  12. * Appelee par @USURE
  13. * [Collaboration LTDS - These E. Marc]
  14. *
  15. ***********************************************************************
  16. 'DEBP' @USINIB T1*'TABLE' ID_BU*'ENTIER' ;
  17. *
  18. BOITE_US = T1.'BOITES_USURE' ;
  19. 'SI' ('NON' ('EXIS' (BOITE_US. ID_BU) 'CYCLE_DE_FRETTING')) ;
  20. *
  21. * Informations communes aux boites d'usure
  22. 'SI' ('EGA' ID_BU 1) ;
  23. *
  24. * Nombre de cycle "numerique" a calculer
  25. NCycle = BOITE_US.'DONNEES'.'NB_CYCLES' ;
  26. F_ACCE = BOITE_US.'DONNEES'.'ACCELERATION' ;
  27. NCyNum = 'ENTI' (NCycle / F_ACCE) ;
  28. BOITE_US.'INFOS' = 'TABLE' ;
  29. BOITE_US.'INFOS'.'NB_CYCLES_NUM' = NCyNum ;
  30. *
  31. * Initialisation compteur cycle et increment par cycle
  32. BOITE_US.'INFOS'.'INDICE_CYCLE_ACTUEL' = 1 ;
  33. BOITE_US.'INFOS'.'INDICE_INCREMENT_ACTUEL' = 1 ;
  34. NbIncCy = 'ENTI' (BOITE_US.'DONNEES'.'INCREMENTS_CYCLE') ;
  35. BOITE_US.'INFOS'.'NB_INCREMENTS_PAR_CYCLE' = NbIncCy ;
  36. *
  37. * Doit-on recalculer les pas de temps ou non
  38. BOITE_US.'INFOS'.'CALCUL_PAS' = VRAI ;
  39. 'SI' ('EXIS' BOITE_US.'DONNEES' 'CALCUL_TEMPS') ;
  40. BOITE_US.'INFOS'.'CALCUL_PAS' = BOITE_US.'DONNEES'.'CALCUL_TEMPS';
  41. 'FINSI' ;
  42. *
  43. * Indices et temps cycle (remplies dans @USURE et @USPOST)
  44. BOITE_US.'POST' = 'TABLE' ;
  45. BOITE_US.'POST'.'LISTE_INDICES_CYCLE' = TABL ;
  46. BOITE_US.'POST'.'LISTE_TEMPS_CYCLE' = TABL ;
  47. BOITE_US.'POST'.'LISTE_CYCLES_NUMERIQUES' = 'PROG' ;
  48. BOITE_US.'POST'.'LISTE_CYCLES_REELS' = 'PROG' ;
  49. *
  50. 'FINSI' ;
  51. *
  52. * Tables remplies dans @USCALC
  53. BOITE_US. ID_BU .'EVO_GLISSEMENT_CONTACT' = TABL ;
  54. BOITE_US. ID_BU .'EVO_CISAILLEMENT_CONTACT' = TABL ;
  55. BOITE_US. ID_BU .'EVO_PRESSION_CONTACT' = TABL ;
  56. SUR_APPL = BOITE_US. ID_BU .'SURFACE_APPLICATION' ;
  57. CHPINI = 'MANU' 'CHPO' SUR_APPL 1 'ED' 0. 'NATURE' 'DISCRET' ;
  58. BOITE_US. ID_BU .'ENERGIE_DISSIPEE_CYCLE' = CHPINI ;
  59. BOITE_US. ID_BU .'ENERGIE_DISSIPEE_TOTALE' = CHPINI ;
  60. BOITE_US. ID_BU .'EVO_ENERGIE_DISSIPEE_CYCLE' = 'MOT' 'INIT' ;
  61. BOITE_US. ID_BU .'EVO_ENERGIE_DISSIPEE_TOTALE' = 'MOT' 'INIT' ;
  62. BOITE_US. ID_BU .'DELTAS' = PROG ;
  63. BOITE_US. ID_BU .'FORCES_TANGENTIELLES' = PROG ;
  64. BOITE_US. ID_BU .'CYCLE_DE_FRETTING' = TABL ;
  65. *
  66. * Tables remplies dans @USPROF
  67. CHPINI = 'MANU' 'CHPO' SUR_APPL 1 'UU2' 0. 'NATURE' 'DISCRET' ;
  68. BOITE_US. ID_BU .'USURE_TOTALE' = CHPINI ;
  69. BOITE_US. ID_BU .'EVO_USURE_CYCLE' = 'MOT' 'INIT' ;
  70. BOITE_US. ID_BU .'EVO_USURE_TOTALE' = 'MOT' 'INIT' ;
  71. *
  72. * Tables remplies dans @USPOST
  73. BOITE_US. ID_BU .'PRESSION_MAX' = 'PROG' ;
  74. BOITE_US. ID_BU .'CISAILLEMENT_MAX' = 'PROG' ;
  75. BOITE_US. ID_BU .'EVO_PRESSION_MOYENNE_CYCLE' = TABL ;
  76. BOITE_US. ID_BU .'EVO_CISAILLEMENT_MOYEN_CYCLE' = TABL ;
  77. BOITE_US. ID_BU .'DELTA_G' = 'PROG' ;
  78. BOITE_US. ID_BU .'DELTA_T' = 'PROG' ;
  79. BOITE_US. ID_BU .'L_ENERGIE_DISSIPEE_CYCLE' = 'PROG' ;
  80. BOITE_US. ID_BU .'L_ENERGIE_DISSIPEE_TOTALE' = 'PROG' 0. ;
  81. BOITE_US. ID_BU .'VOLUME_USE_CYCLE' = 'PROG' ;
  82. BOITE_US. ID_BU .'VOLUME_USE_TOTAL' = 'PROG' 0. ;
  83. *
  84. * - Creation de maillages utilises dans @USDEPL
  85. VOL_REPA = BOITE_US. ID_BU .'VOLUME_REPARTITION' ;
  86. BOITE_US. ID_BU .'VREP_POI1' = 'CHAN' VOL_REPA 'POI1' ;
  87. BOITE_US. ID_BU .'SAPP_PTINI' = SUR_APPL 'POIN' 'INIT' ;
  88. * - Direction selon laquelle s'effectue l'usure
  89. MODREPA = 'REDU' (T1.'MODELE') VOL_REPA ;
  90. CHPR = 'PRES' 'MASS' SUR_APPL MODREPA 1. ;
  91. CMP1 = 'EXCO' CHPR 'FX' 'SCAL' ;
  92. CMP2 = 'EXCO' CHPR 'FY' 'SCAL' ;
  93. NVUS = ((CMP1**2)+(CMP2**2))**(0.5) ;
  94. CHPN = CHPR / NVUS ;
  95. EVVX = 'EVOL' 'CHPO' ('EXCO' CHPN 'FX' 'SCAL') SUR_APPL ;
  96. EVVY = 'EVOL' 'CHPO' ('EXCO' CHPN 'FY' 'SCAL') SUR_APPL ;
  97. BOITE_US. ID_BU .'EVO_VX_USURE' = 'EXTR' EVVX 'COUR' 1 ;
  98. BOITE_US. ID_BU .'EVO_VY_USURE' = 'EXTR' EVVY 'COUR' 1 ;
  99. *
  100. 'SINON' ;
  101. * Reinitialisation des tables a chaque nouveau cycle
  102. 'SI' ('EGA' BOITE_US.'INFOS'.'INDICE_INCREMENT_ACTUEL' 1) ;
  103. BOITE_US. ID_BU .'EVO_GLISSEMENT_CONTACT' = TABLE ;
  104. BOITE_US. ID_BU .'EVO_CISAILLEMENT_CONTACT' = TABLE ;
  105. BOITE_US. ID_BU .'EVO_PRESSION_CONTACT' = TABLE ;
  106. SUR_APPL = BOITE_US. ID_BU .'SURFACE_APPLICATION' ;
  107. CHPINI = 'MANU' 'CHPO' SUR_APPL 1 'ED' 0. 'NATURE' 'DISCRET' ;
  108. BOITE_US. ID_BU .'ENERGIE_DISSIPEE_CYCLE' = CHPINI ;
  109. 'FINSI' ;
  110. 'FINSI' ;
  111. *
  112. 'FINP' ;
  113.  
  114.  
  115.  

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