Télécharger uo2cr.eso

Retour à la liste

Numérotation des lignes :

uo2cr
  1. C UO2CR SOURCE CHAT 05/01/13 03:58:52 5004
  2. C responsable STRUB
  3. SUBROUTINE UO2CR(NC,NCA,NN,SIGMA,W,WMAX,SMAX,BILIN,WRUPT,BTR,
  4. & XLTR,XINVL,SBILI,FCRIT,PENTE,LEBIL,PRECIE,PRECIZ,KERRE)
  5. C----------------------------------------------------------------------
  6. C ECOULEMENT MODELE UO2 (OTTOSEN ET GATT_MONERIE)
  7. C----------------------------------------------------------------------
  8. C
  9. C ENTREES
  10. C -------
  11. C NC = 3 NBR. TOTAL DE DIRECTIONS DE FISS. POSSIBLES
  12. C NCA = NBR. DE DIRECTIONS DE FISS. OU UN CRITERE EST ATTEINT
  13. C NN(NC) = NUMEROS DES DIRECTIONS DE FISS. OU UN CRIT. EST ATTEINT
  14. C SIGMA(6) = CONTRAINTES
  15. C W(3) = OUVERTURES DES FISSURES
  16. C WMAX(3) = OUVERTURES MAXIMALES DES FISSURES
  17. C SMAX(3) = CONTR. CORRESPONDANT A WMAX
  18. C BILIN(3) = OUVERTURES DEFINISSANT LE CHANGEMENT DE PENTE EN CAS DE
  19. C RELATION BILINEAIRE ENTRE CONTRAINTE ET OUVERTURE
  20. C WRUPT(3) = OUVERTURES CONDITIONNANT LA RUPTURE
  21. C BTR = PARAMETRE DE FERMETURE
  22. C XLTR(3) = LIMITES EN TRACTION POUR LA FISSURATION
  23. C XINVL(3) = PARAMETRES DE TAILLE
  24. C SBILI(3) = CONTR. CORRESPONDANT A BILIN
  25. C LEBIL(NC) = COMPRESSION/TRACTION
  26. C PRECIE = PRECISION POUR TESTS SUR OUVERTURES DE FISSURES
  27. C PRECIZ = PRECISION POUR TESTS SUR CONTRAINTES
  28. C
  29. C SORTIES
  30. C -------
  31. C FCRIT(NC) = CRITERE DE FISSURATION
  32. C PENTE(NC) = PENTE DE LA DROITE DE FISSURATION CORRESPONDANT A FCRIT
  33. C KERRE = GESTION DES ERREURS
  34. C----------------------------------------------------------------------
  35. C
  36. IMPLICIT INTEGER(I-N)
  37. IMPLICIT REAL*8(A-H,O-Z)
  38.  
  39. -INC PPARAM
  40. -INC CCOPTIO
  41. C
  42. PARAMETER (XZER=0.D0,UN=1.D0)
  43. C
  44. DIMENSION NN(*),SIGMA(*),W(*),WMAX(*),SMAX(*),BILIN(*),WRUPT(3)
  45. DIMENSION XLTR(*),XINVL(*),SBILI(*),FCRIT(*),PENTE(*),LEBIL(*)
  46. DIMENSION WREOUV(3)
  47. C
  48. C INITIALISATIONS
  49. C
  50. KERRE=0
  51. DO IC=1,NC
  52. FCRIT(IC)=-1.D4*PRECIZ
  53. ENDDO
  54. C
  55. DO IC=1,NCA
  56. JC=NN(IC)
  57. C
  58. GO TO (1,1,1),JC
  59. C
  60. KERRE=99
  61. RETURN
  62. C
  63. 1 CONTINUE
  64. C
  65. IF (XINVL(JC).NE.XZER) THEN
  66. C
  67. WREOUV(JC) = BTR*MIN(WMAX(JC),WRUPT(JC))
  68. PRECIW=PRECIE/XINVL(JC)
  69.  
  70. IF(IIMPI.EQ.42) THEN
  71. PRINT *,' '
  72. PRINT *,'UO2CR - JC =',JC
  73. PRINT *,'UO2CR - W =',W(JC)
  74. PRINT *,'UO2CR - WMAX =',WMAX(JC)
  75. PRINT *,'UO2CR - WREOUV =',WREOUV(JC)
  76. PRINT *,'UO2CR - WRUPT =',WRUPT(JC)
  77. PRINT *,'UO2CR - SMAX =',SMAX(JC)
  78. PRINT *,'UO2CR - LEBIL =',LEBIL(JC)
  79. ENDIF
  80. C
  81. C
  82. C cas ou le materiau n est pas totalement casse
  83. C ---------------------------------------------
  84. C
  85. IF(WMAX(JC).LT.WRUPT(JC)) THEN
  86. C
  87. IF(ABS(W(JC)-WREOUV(JC)).LT.PRECIW) THEN
  88. C
  89. IF(WMAX(JC).EQ.0.D0.OR.BTR.EQ.UN) THEN
  90. C
  91. C le materiau vient d'atteindre la limite
  92. C
  93. CALL OTTOFU(XINVL,XLTR,WRUPT,BTR,BILIN,SBILI,W,
  94. & WMAX,SMAX,PENTE,JC)
  95. FCRIT(JC)=SIGMA(JC)-SMAX(JC)
  96. C
  97. ELSE
  98. C
  99. C CAS A L'INTERSECTION SIGMA=0 - SECANTE
  100. C
  101. IF(LEBIL(JC).EQ.0) THEN
  102. FCRIT(JC)=SIGMA(JC)
  103. IF(FCRIT(JC).GE.-PRECIZ) THEN
  104. PENTE(JC) = SMAX(JC)/(WMAX(JC)-WREOUV(JC))
  105. ENDIF
  106. C
  107. ELSE IF(LEBIL(JC).EQ.1) THEN
  108. PENTE(JC) = SMAX(JC)/(WMAX(JC)-WREOUV(JC))
  109. FCRIT(JC)= SIGMA(JC) -
  110. & PENTE(JC)*(W(JC)-WREOUV(JC))
  111. C
  112. ELSE IF(LEBIL(JC).EQ.2) THEN
  113. PRINT *,'UO2CR CAS IMPOSSIBLE SELON ',JC
  114. KERRE=7
  115. RETURN
  116. ENDIF
  117. ENDIF
  118. C
  119. ELSE IF(W(JC).GT.WREOUV(JC)) THEN
  120. C
  121. C
  122. IF(W(JC)-WMAX(JC).GT.PRECIW) THEN
  123. C
  124. PRINT *,' UO2CR - W > WMAX SELON ',JC
  125. PRINT *,'W(JC) =',W(JC)
  126. PRINT *,'WMAX(JC) =',WMAX(JC)
  127. KERRE=7
  128. RETURN
  129.  
  130. C
  131. C
  132. ELSE IF(ABS(W(JC)-WMAX(JC)).LT.PRECIW) THEN
  133. C
  134. C CAS A L'INTERSECTION SECANTE - POST PIC
  135. C
  136. IF(LEBIL(JC).EQ.0) THEN
  137. CALL OTTOFU(XINVL,XLTR,WRUPT,BTR,BILIN,
  138. & SBILI,W,WMAX,SMAX,PENTE,JC)
  139. FCRIT(JC)=SIGMA(JC)-SMAX(JC)
  140. C
  141. ELSE IF(LEBIL(JC).EQ.1) THEN
  142. PENTE(JC) = SMAX(JC)/(WMAX(JC)-WREOUV(JC))
  143. FCRIT(JC)= SIGMA(JC) -
  144. & PENTE(JC)*(W(JC)-WREOUV(JC))
  145. C
  146. ELSE IF(LEBIL(JC).EQ.2) THEN
  147. PRINT *,'UO2CR CAS IMPOSSIBLE SELON ',JC
  148. KERRE=7
  149. RETURN
  150. ENDIF
  151. C
  152. C
  153. ELSE IF(W(JC).LT.WMAX(JC)) THEN
  154. C
  155. PENTE(JC) = SMAX(JC)/(WMAX(JC)-WREOUV(JC))
  156. FCRIT(JC)= SIGMA(JC) - PENTE(JC)*(W(JC)-WREOUV(JC))
  157. C
  158. ENDIF
  159. C
  160. ELSE IF(W(JC).LT.WREOUV(JC)) THEN
  161. PRINT *,' UO2CR - W < WREOUV SELON ',JC
  162. PRINT *,'W(JC) =',W(JC)
  163. PRINT *,'WREOUV(JC) =',WREOUV(JC)
  164. KERRE=7
  165. RETURN
  166. ENDIF
  167. C
  168. C cas ou le materiau est totalement casse
  169. C ---------------------------------------
  170. C
  171. ELSE IF(WMAX(JC).GE.WRUPT(JC)) THEN
  172. C
  173. FCRIT(JC)=SIGMA(JC)
  174. C
  175. IF(IIMPI.EQ.42) THEN
  176. PRINT *,'W(JC) =',W(JC)
  177. PRINT *,'WREOUV(JC) =',WREOUV(JC)
  178. ENDIF
  179. C
  180. IF(ABS(W(JC)-WREOUV(JC)).LT.PRECIW) THEN
  181. C
  182. IF(IIMPI.EQ.42) THEN
  183. PRINT *,' UO2CR - ON EST A LA LIMITE '
  184. ENDIF
  185. C
  186. IF(FCRIT(JC).GE.-PRECIZ) THEN
  187. PENTE(JC)=0.D0
  188. ENDIF
  189. ELSE IF(W(JC).GT.WREOUV(JC)) THEN
  190. PENTE(JC)=0.D0
  191. ENDIF
  192. C
  193. ENDIF
  194. C
  195. ENDIF
  196. C
  197. ENDDO
  198. C
  199. IF(IIMPI.EQ.42) THEN
  200. WRITE(IOIMP,77000) (FCRIT(IC),IC=1,3)
  201. 77000 FORMAT( 2X, ' UO2CR - FCRIT '/(3(1X,1PE12.5)/)/)
  202. WRITE(IOIMP,77003) (PENTE(IC),IC=1,3)
  203. 77003 FORMAT( 2X, ' UO2CR - PENTE '/(3(1X,1PE12.5)/)/)
  204. ENDIF
  205. C
  206. RETURN
  207. END
  208.  
  209.  
  210.  

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