Télécharger usprof.procedur

Retour à la liste

Numérotation des lignes :

  1. * USPROF PROCEDUR MB234859 24/01/09 21:15:33 11816
  2. ************************************************************************
  3. * PROCEDURE USPROF
  4. *
  5. * Procedure qui calcule le profil d usure a appliquer en chaque point
  6. * de la surface a user. En notant phi la densite d'energie dissipee,
  7. * on a pour chaque point x de la surface a user :
  8. *
  9. * h(x) = alpha * phi(x)
  10. *
  11. * Un facteur d'acceleration est determine
  12. *
  13. * Entrees :
  14. * T1 : Table de PASAPAS
  15. *
  16. * Sortie :
  17. * T1 : Table de PASAPAS contenant les champs calcules
  18. *
  19. * Appelee par USURE
  20. *
  21. ************************************************************************
  22. DEBP USPROF T1*'TABLE' ;
  23. *
  24. *----------------------------------------------------------------------*
  25. * - PROFIL D'USURE POUR LE CYCLE CALCULE *
  26. *----------------------------------------------------------------------*
  27. BOITE_US = T1.'BOITES_USURE' ;
  28. NbCycRe = BOITE_US.'INFOS'.'NB_CYCLES_RESTANTS' ;
  29. *
  30. ListAcce = 'LECT' ; TPROF = 'TABL' ;
  31. 'REPE' BU (BOITE_US.'DONNEES'.'N_BOITES') ;
  32. *
  33. ALPHA = BOITE_US. &BU .'COEFFICIENT_USURE' ;
  34. EnerDiss = BOITE_US. &BU .'DENS_ENER_DISS_CYCLE' ;
  35. ProfUsee = ALPHA * EnerDiss ;
  36. hmaxcyc = 'MAXI' ('ABS' ProfUsee) ;
  37. TPROF. &BU = ProfUsee ;
  38. *
  39. * Facteur d'acceleration
  40. ** hmax = (BOITE_US. &BU .'LELT') * (sin 1) ;
  41. *** hmax = (BOITE_US. &BU .'LELT') * (tan 5.) ;
  42. *** MESS 'HMAX ESTIME ' ; LIST hmax ;
  43. *** MESS 'HCYCLE ' ; LIST hmaxcyc ;
  44. *** FactAcce = 'ENTI' 'PROC' (hmax / hmaxcyc) ;
  45. *** ListAcce = ListAcce 'ET' FactAcce ;
  46. 'FIN' BU ;
  47. *
  48. *----------------------------------------------------------------------*
  49. * - FACTEUR D'ACCELERATION ET NOMBRE DE CYCLES RESTANTS A CALCULER *
  50. *----------------------------------------------------------------------*
  51. FactAcce = 'MINI' ListAcce ;
  52. FactAcce = BOITE_US.'DONNEES'.'ACCELERATION' ;
  53. * FactAcce = 'ENTI' ('IPOL' (BOITE_US.'DONNEES'.'ACCELERATION') NbCycRe);
  54. 'SI' ('EGA' FactAcce 0) ;
  55. FactAcce = 1 ;
  56. 'FINSI' ;
  57. 'SI' ('<' (NbCycRe-FactAcce) 0) ;
  58. FactAcce = NbCycRe ;
  59. 'FINSI' ;
  60. BOITE_US.'POST'.'FACTEUR_ACCELERATION' =
  61. (BOITE_US.'POST'.'FACTEUR_ACCELERATION') 'ET' FactAcce ;
  62. BOITE_US.'INFOS'.'NB_CYCLES_RESTANTS' = NbCycRe-FactAcce ;
  63. *
  64. *----------------------------------------------------------------------*
  65. * - PROFIL D'USURE A APPLIQUER *
  66. *----------------------------------------------------------------------*
  67. 'REPE' BU (BOITE_US.'DONNEES'.'N_BOITES') ;
  68. UsureNew = FactAcce * (TPROF. &BU) ;
  69. MESS ' HMAX APPL ' ; LIST (MAXI (ABS UsureNew)) ;
  70. UsureNew = 'CHAN' 'COMP' UsureNew 'SCAL' ;
  71. *
  72. UsureTot = BOITE_US. &BU .'USURE_TOTALE' ;
  73. UsureTot = UsureTot + UsureNew ;
  74. *
  75. 'SI' (BOITE_US.'INFOS'.'ITRID') ;
  76. 'SINON' ;
  77. SUR_APPL = BOITE_US. &BU .'SURFACE_APPLICATION' ;
  78. EvUsureT = 'EVOL' 'TURQ' 'CHPO' UsureTot SUR_APPL ;
  79. EvUsureT = 'EXTR' EvUsureT 'COUR' 1 ;
  80. EvUsureT = 'CHAN' EvUsureT 'LEGE' 'Usure_Totale' ;
  81. CycActu = BOITE_US.'INFOS'.'INDICE_CYCLE_ACTUEL' ;
  82. BOITE_US. &BU .'EVO_USURE_TOTALE'. CycActu = EvUsureT ;
  83. *
  84. 'SI' (BOITE_US.'INFOS'.'TRACE_DEBUG') ;
  85. *
  86. EvUsureN = 'EVOL' 'OR' 'CHPO' UsureNew SUR_APPL ;
  87. EvUsureN = 'EXTR' EvUsureN 'COUR' 1 ;
  88. EvUsureN = 'CHAN' EvUsureN 'LEGE' 'Usure_Nouvelle' ;
  89. *
  90. TITZ = 'CHAI' 'Usure nouvelle(OR)-totale(TURQ) Boite ' &BU ;
  91. 'DESS' (EvUsureN 'ET' EvUsureT) 'TITR' TITZ 'LEGE' ;
  92. 'FINSI' ;
  93. 'FINSI' ;
  94. *
  95. *----------------------------------------------------------------------*
  96. * - STOCKAGE DES RESULTATS *
  97. *----------------------------------------------------------------------*
  98. BOITE_US. &BU .'USURE_CYCLE' = UsureNew ;
  99. BOITE_US. &BU .'USURE_TOTALE' = UsureTot ;
  100. 'FIN' BU ;
  101. *
  102. FINP T1 ;
  103.  
  104.  
  105.  

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