Télécharger trite2.eso

Retour à la liste

Numérotation des lignes :

trite2
  1. C TRITE2 SOURCE CHAT 05/01/13 03:47:54 5004
  2. C
  3. C=======================================================================
  4. C
  5. SUBROUTINE TRITE2(ilent1,NTEMP,T0,ITINF,ITSUP)
  6. C
  7. C=======================================================================
  8. C
  9. C Calcul de transformations de phases
  10. C appelee par CRPHA4 / cas du CHAUFFAGE
  11. C
  12. C recherche dans un tableau l'indice des donnees materiau correspondant
  13. C a la temperature T0
  14. C
  15. C ntemp indice max
  16. C itinf indice correspondant ou precedant T0
  17. C itsup indice suivant T0
  18. C
  19. C utilisation d'une solution initiale
  20. C et recherche finale par bissection
  21. C (Numerical Recipes in Fortran p 110)
  22. C MARTINEZ 07/07/1998
  23. C=======================================================================
  24. C
  25. IMPLICIT INTEGER(I-N)
  26. IMPLICIT REAL*8(A-H,O-Z)
  27. C
  28. -INC SMLENTI
  29. -INC SMLREEL
  30. C
  31. C
  32. C
  33. mlent1 = ilent1
  34. segact mlent1
  35. mlenti = mlent1.lect(1)
  36. segact mlenti
  37.  
  38. INC=1
  39. IF (ITINF.LT.1.OR.ITINF.GT.NTEMP) THEN
  40. ITINF=0
  41. ITSUP=NTEMP+1
  42. GOTO 3
  43. ENDIF
  44. C
  45. mlreel = lect(itinf)
  46. segact mlreel
  47. IF (prog(1).EQ.T0) THEN
  48. ITSUP=ITINF+1
  49. segdes mlent1,mlenti
  50. RETURN
  51. ENDIF
  52. C
  53. mlreel = lect(itinf)
  54. segact mlreel
  55. IF (prog(1).GT.T0) THEN
  56. 1 ITSUP=ITINF+INC
  57. mlreel = lect(itsup)
  58. segact mlreel
  59. IF (ITSUP.GE.NTEMP) THEN
  60. ITSUP=NTEMP
  61. ELSE IF (prog(1).GT.T0) THEN
  62. ITINF=ITSUP
  63. INC=INC+INC
  64. GOTO 1
  65. ENDIF
  66. C
  67. ELSE
  68. ITSUP=ITINF
  69. 2 ITINF=ITSUP-INC
  70. mlreel = lect(itinf)
  71. segact mlreel
  72. IF (ITINF.LE.1) THEN
  73. ITINF=1
  74. ELSE IF (prog(1).LT.T0) THEN
  75. ITSUP=ITINF
  76. INC=INC+INC
  77. GOTO 2
  78. ENDIF
  79. ENDIF
  80. C
  81. 3 NDIT=ITSUP-ITINF
  82. IF (NDIT.LE.1) THEN
  83. segdes mlent1,mlenti
  84. RETURN
  85. ENDIF
  86. ITM=(ITINF+ITSUP)/2
  87. mlreel = lect(itm)
  88. segact mlreel
  89. IF (prog(1).GE.T0) THEN
  90. ITINF=ITM
  91. ELSE
  92. ITSUP=ITM
  93. ENDIF
  94. GOTO 3
  95. END
  96.  
  97.  
  98.  

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