Télécharger ottove.eso

Retour à la liste

Numérotation des lignes :

ottove
  1. C OTTOVE SOURCE CHAT 05/01/13 02:07:58 5004
  2. SUBROUTINE OTTOVE(NCRIT,JCRIT,SIGMA,W,WMAX,WRUPT,SMAX,
  3. & BTR,XLTR,XINVL,BILIN,SBILI,PRECIE,PRECIZ,DEFPLA,
  4. & NN,NC,NCA,FC,FC2,PENTE,PENTE2,LEBIL,ISING,
  5. & XCOMP,XLAMC,KERRE)
  6. C
  7. IMPLICIT INTEGER(I-N)
  8. IMPLICIT REAL*8(A-H,O-Z)
  9.  
  10. -INC PPARAM
  11. -INC CCOPTIO
  12. C
  13. PARAMETER (XZER=0.D0)
  14. PARAMETER (UNDEMI=.5D0,UN=1.D0,DEUX=2.D0,TROIS=3.D0)
  15. C
  16. DIMENSION SIGMA(*),W(*),WMAX(*),BILIN(*),
  17. & WRUPT(*),XLTR(*),XINVL(*),SBILI(*)
  18. DIMENSION PENTE(*),PENTE2(*),XCOMP(*)
  19. DIMENSION FC(*),FC2(*),NN(*),LEBIL(*),SMAX(*)
  20. DIMENSION DEFPLA(*),ISING(*)
  21. DIMENSION JCRIT(*)
  22. DIMENSION ZOB(3)
  23. *
  24. KERRE=0
  25. *
  26. *
  27. DO I=1,3
  28. IF(ABS(WMAX(I)-WRUPT(I)).LT.WRUPT(I)*PRECIE) THEN
  29. IF(W(I).EQ.WMAX(I)) THEN
  30. W(I)=WRUPT(I)
  31. ENDIF
  32. WMAX(I)=WRUPT(I)
  33. SMAX(I)=0.D0
  34. ENDIF
  35. ENDDO
  36. *
  37. * PURGE
  38. *
  39. DO I=1,6
  40. IF(ABS(DEFPLA(I)).LT.PRECIE*1.D-2) DEFPLA(I)=0.D0
  41. ENDDO
  42. *
  43. *
  44. DO IC=1,NCRIT
  45. JC=JCRIT(IC)
  46. *
  47. * CAS DE REOUVERTURE
  48. *
  49. IF(JC.GE.10.AND.JC.LE.12) THEN
  50. KC=JC-9
  51. SIGMA(KC)=0.D0
  52. W(KC)=BTR*MIN(WMAX(KC),WRUPT(KC))
  53. *
  54. * CAS DE REFERMETURE
  55. *
  56. ELSE IF(JC.GE.13.AND.JC.LE.15) THEN
  57. KC=JC-12
  58. SIGMA(KC)=0.D0
  59. W(KC)=BTR*MIN(WMAX(KC),WRUPT(KC))
  60. *
  61. * CAS DE RUPTURE
  62. *
  63. ELSE IF(JC.GE.7.AND.JC.LE.9) THEN
  64. KC=JC-6
  65. SIGMA(KC)=0.D0
  66. W(KC)=WRUPT(KC)
  67. WMAX(KC)=WRUPT(KC)
  68. SMAX(KC)=0.D0
  69. *
  70. * CAS DE FISSURATION
  71. *
  72. ELSE IF(JC.GE.1.AND.JC.LE.3) THEN
  73. IF(ISING(JC).EQ.2) THEN
  74. SIGMA(JC)=SMAX(JC)
  75. W(JC)=WMAX(JC)
  76. ENDIF
  77. *
  78. * CAS DE POURSUITE DE LA FISSURATION
  79. *
  80. ELSE IF(JC.GE.4.AND.JC.LE.6) THEN
  81. KC=JC-3
  82. SIGMA(KC)=SMAX(KC)
  83. W(KC)=WMAX(KC)
  84. ENDIF
  85. ENDDO
  86. *
  87. *
  88. DO IC=1,NCA
  89. JC=NN(IC)
  90. *
  91. * FISSURATION AVEC ISING=2
  92. *
  93. IF((JC.GE.1.AND.JC.LE.3).AND.ISING(JC).EQ.2) THEN
  94. SIGMA(JC)=SMAX(JC)
  95. W(JC)=WMAX(JC)
  96. ENDIF
  97.  
  98. ENDDO
  99. *
  100. *
  101. DO IC=1,NC
  102. NN(IC)=IC
  103. ENDDO
  104. *
  105. CALL OTTOEC(NC,NN,SIGMA,W,WMAX,SMAX,BILIN,WRUPT,BTR,
  106. & XLTR,XINVL,SBILI,FC,FC2,PENTE,PENTE2,LEBIL,ISING,
  107. & PRECIE,PRECIZ,XCOMP,XLAMC,KERRE)
  108. IF(KERRE.NE.0) THEN
  109. PRINT *, ' OTTOVE - APRES OTTOEC KERRE=',KERRE
  110. RETURN
  111. ENDIF
  112. *
  113. DO IC=1,NC
  114. IF(FC(IC).GT.PRECIZ.OR.FC2(IC).GT.PRECIZ) THEN
  115. PRINT *,'CRITERE DEPASSE NUMERO ',IC
  116. PRINT *,'CRITERE FC = ',FC(IC)
  117. PRINT *,'CRITERE FC2 = ',FC2(IC)
  118. KERRE=2
  119. RETURN
  120. ENDIF
  121. ENDDO
  122. *
  123. IF(IIMPI.EQ.42) THEN
  124. WRITE(IOIMP,78000) (FC(IC),IC=1,NC)
  125. 78000 FORMAT( 2X, ' OTTOVE - FC '/(4(1X,1PE12.5)/)/)
  126. ENDIF
  127. *
  128. RETURN
  129. END
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  

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