Télécharger lbdaliq.eso

Retour à la liste

Numérotation des lignes :

  1. C LBDALIQ SOURCE SERRE 16/07/20 21:15:04 9017
  2. SUBROUTINE LBDALIQ
  3. C
  4. C--------------------------------------------------------------------
  5. C Conductivité thermique de l'eau en fonction de P et de T
  6. C--------------------------------------------------------------------
  7. C Les données d'entrée sont des CHPOINT, des FLOTTANT ou des LISTREEL
  8. C Le résultat est du meme type que les input.
  9. C--------------------------------------------------------------------
  10. C
  11. C---------------------------
  12. C Phrase d'appel (GIBIANE) :
  13. C---------------------------
  14. C
  15. C OBJ3 = LBDAW OBJ1 OBJ2 ;
  16. C
  17. C------------------------
  18. C Opérandes et résultat :
  19. C------------------------
  20. C
  21. C OBJ1 : Pression partielle de vapeur (en Pa)
  22. C OBJ2 : Température (en K)
  23. C OBJ3 : Conductivité thermique de l'eau (en W/m/K)
  24. C
  25. C-----------------------------------------------------------------------
  26. C
  27. C Langage : ESOPE + FORTRAN77
  28. C Auteurs : F.DABBENE 2016/05
  29. C
  30. C-----------------------------------------------------------------------
  31. IMPLICIT INTEGER(I-N)
  32. IMPLICIT REAL*8 (A-H,O-Z)
  33. REAL*8 LBDALIQ0
  34. CHARACTER*8 TYPE
  35. CHARACTER*4 NOMTOT(1)
  36. C
  37. -INC SMCHPOI
  38. -INC SMLREEL
  39. C
  40. IFLAG = 0
  41. C
  42. C- Lecture et controles des données d'entrée,
  43. C- Création de la structure chapeau pour la donnée de sortie
  44. C
  45. C- Gestion des ERREURS
  46. C 21 -> Données incompatibles
  47. C 19 -> Option indisponible
  48. C
  49. C CHPOINT
  50. C
  51. TYPE = 'CHPOINT '
  52. CALL LIROBJ(TYPE,MCHPO1,0,IRETOU)
  53. IF (IRETOU.EQ.0) GOTO 10
  54. CALL LIROBJ(TYPE,MCHPO2,1,IRETOU)
  55. IF (IRETOU.EQ.0) RETURN
  56. C
  57. SEGACT MCHPO1,MCHPO2
  58. NSOUP1 = MCHPO1.IPCHP(/1)
  59. NSOUP2 = MCHPO2.IPCHP(/1)
  60. MSOUP1 = MCHPO1.IPCHP(1)
  61. MSOUP2 = MCHPO2.IPCHP(1)
  62. SEGACT MSOUP1,MSOUP2
  63. NC1 = MSOUP1.NOHARM(/1)
  64. NC2 = MSOUP2.NOHARM(/1)
  65. IGEO1 = MSOUP1.IGEOC
  66. IGEO2 = MSOUP2.IGEOC
  67. INDIC = 1
  68. NBCOMP = -1
  69. CALL QUEPOI(MCHPO2,IGEO1,INDIC,NBCOMP,NOMTOT)
  70. SEGACT MCHPO2,MSOUP2
  71. MPOVA1 = MSOUP1.IPOVAL
  72. MPOVA2 = MSOUP2.IPOVAL
  73. SEGACT MPOVA1,MPOVA2
  74. N1 = MPOVA1.VPOCHA(/1)
  75. N2 = MPOVA2.VPOCHA(/1)
  76. C
  77. IF (NSOUP1.NE.NSOUP2) IFLAG=1
  78. IF (NSOUP1.NE.1) IFLAG=2
  79. IF (NC1.NE.NC2) IFLAG=3
  80. IF (NC1.NE.1) IFLAG=4
  81. IF (INDIC.LT.0) IFLAG=5
  82. C IF (IGEO1.NE.IGEO2) IFLAG=5
  83. C IF (N1.NE.N2) IFLAG=6
  84. IF (IFLAG.NE.0) THEN
  85. CALL ERREUR(21)
  86. RETURN
  87. ENDIF
  88. C
  89. SEGINI, MCHPO3=MCHPO1
  90. SEGINI, MSOUP3=MSOUP1
  91. SEGINI, MPOVA3=MPOVA1
  92. MCHPO3.IPCHP(1) = MSOUP3
  93. MSOUP3.IPOVAL = MPOVA3
  94. SEGDES MCHPO1,MCHPO2,MCHPO3,MSOUP1,MSOUP2,MSOUP3
  95. CALL LBDALIQ1(MPOVA1,MPOVA2,MPOVA3)
  96. SEGDES MPOVA1,MPOVA2,MPOVA3
  97. CALL ECROBJ(TYPE,MCHPO3)
  98. RETURN
  99. C
  100. C FLOTTANT
  101. C
  102. 10 CONTINUE
  103. CALL LIRREE(X1,0,IRETOU)
  104. IF (IRETOU.EQ.0) GOTO 20
  105. CALL LIRREE(X2,1,IRETOU)
  106. IF (IRETOU.EQ.0) RETURN
  107. X3 = LBDALIQ0(X1,X2)
  108. CALL ECRREE(X3)
  109. RETURN
  110. C
  111. C LISTREEL
  112. C
  113. 20 CONTINUE
  114. TYPE = 'LISTREEL'
  115. CALL LIROBJ(TYPE,MLREE1,0,IRETOU)
  116. IF (IRETOU.EQ.0) GOTO 30
  117. CALL LIROBJ(TYPE,MLREE2,1,IRETOU)
  118. IF (IRETOU.EQ.0) RETURN
  119. MLREE3 = 0
  120. IFLAG = 0
  121. SEGACT MLREE1,MLREE2
  122. JG1 = MLREE1.PROG(/1)
  123. JG2 = MLREE2.PROG(/1)
  124. IF (JG1.NE.JG2) IFLAG=1
  125. IF (IFLAG.NE.0) THEN
  126. CALL ERREUR(21)
  127. RETURN
  128. ENDIF
  129. SEGINI, MLREE3=MLREE1
  130. CALL LBDALIQ3(MLREE1,MLREE2,MLREE3)
  131. SEGDES MLREE1,MLREE2,MLREE3
  132. CALL ECROBJ(TYPE,MLREE3)
  133. RETURN
  134. C
  135. C Autres
  136. C
  137. 30 CONTINUE
  138. CALL ERREUR(19)
  139. RETURN
  140. END
  141.  
  142.  
  143.  
  144.  

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