Télécharger copain.eso

Retour à la liste

Numérotation des lignes :

copain
  1. C COPAIN SOURCE FD144363 26/03/18 21:15:03 12501
  2. SUBROUTINE COPAIN(IPT1,IPT2,IPT3,IPT4,
  3. & MPOVA1,MPOVA2,MPOVA3,MPOVA4,MPOVA5,MPOVA6,
  4. & MPOVA7,MPOVA8,MPOVA9,
  5. & MPOVAB,MPOVAC,MPOVAD,MPOVAE,
  6. & GRAV,HMAX,TTAINF,TTASUP,MPOVACP,MPOVAF,MPOVAI,MPOVAJ,
  7. & MPOUT1,MPOUT2,MPOUT3,MPOUT4)
  8. C--------------------------------------------------------------------
  9. C Evaluation du coef. d'echange thermique en paroi et du debit de
  10. C condensation lorsque la correlation retenue est celle de COPAIN
  11. C--------------------------------------------------------------------
  12. C
  13. C E/ IPT1 : Maillage des points CELL
  14. C E/ IPT2 : Maillage des points LAYERW
  15. C E/ IPT3 : Maillage des points WALL
  16. C E/ IPT4 : Maillage de SEG2 CELL/LAYERW
  17. C E/ MPOVA1 : Pression totale
  18. C E/ MPOVA2 : Temperature du melange gazeux
  19. C E/ MPOVA3 : Densitee du melange
  20. C E/ MPOVA4 : Densitee partielle de vapeur
  21. C E/ MPOVA5 : Pression partielle de vapeur
  22. C E/ MPOVA6 : Temperature de saturation Tsat(Pv)
  23. C E/ MPOVA7 : Coefficient d'echange par conduction
  24. C E/ MPOVA8 : Temperature des murs
  25. C E/ MPOVA9 : Surface des parois
  26. C E/ MPOVAB : Lambda du melange
  27. C E/ MPOVAC : Nu du melange
  28. C E/ MPOVAD : Constante des gaz parfait des incondensables
  29. C E/ MPOVAE : Coeff de diffusion de la vapeur
  30. C E/ MPOVAF : Constante des gaz parfait du melange
  31. C E/ MPOVAI : Masse molaire des incondensables
  32. C E/ MPOVAJ : Masse molaire de la vapeur d'eau
  33. C E/ GRAV : Gravite (acceleration de la pesanteur)
  34. C E/ HMAX : Borne sup pour le coefficient de transfert thermique
  35. C E/ TTAINF : Borne inf pour le coefficient theta
  36. C E/ TTASUP : Borne sup pour le coefficient theta
  37. C E/ MPOVACP: Coefficient calorifique de l'eau
  38. C /S MPOUT1 : Coefficient d'echange global en paroi
  39. C /S MPOUT2 : Debit de condensation / flux thermique
  40. C /S MPOUT3 : Enthalpie liquide
  41. C /S MPOUT4 : Coefficient d'échange convectif en paroi
  42. C
  43. C--------------------------------------------------------------------
  44. C Les segments MPOUT... ne sont pas desactives
  45. C--------------------------------------------------------------------
  46. C
  47. C 13/12/16 : Création
  48. C 2026/03 : FD : On borne THETA (+ nettoyage)
  49. C
  50. C--------------------------------------------------------------------
  51. C
  52. C Langage : ESOPE + FORTRAN77
  53. C Auteurs :
  54. C
  55. C-----------------------------------------------------------------------
  56. IMPLICIT INTEGER(I-N)
  57. IMPLICIT REAL*8 (A-H,O-Z)
  58. POINTEUR MPOVA7.MPOVAL,MPOVA8.MPOVAL,MPOVA9.MPOVAL
  59. POINTEUR MPOVAB.MPOVAL,MPOVAC.MPOVAL,MPOVAD.MPOVAL,MPOVAE.MPOVAL
  60. POINTEUR MPOVAF.MPOVAL,MPOVAI.MPOVAL,MPOVAJ.MPOVAL,MPOVACP.MPOVAL
  61. POINTEUR MPOUT1.MPOVAL,MPOUT2.MPOVAL,MPOUT3.MPOVAL,MPOUT4.MPOVAL
  62. C
  63.  
  64. -INC PPARAM
  65. -INC CCOPTIO
  66. -INC SMCHPOI
  67. -INC SMCOORD
  68. -INC SMELEME
  69. -INC SMTABLE
  70. SEGMENT REDIR
  71. INTEGER IND1(NNGOT),IND2(NNGOT),IND3(NNGOT)
  72. ENDSEGMENT
  73. C
  74. C- Tableau d'adressage indirect
  75. C
  76. SEGACT IPT1,IPT2,IPT3,IPT4
  77. SEGACT MPOVA1,MPOVA2,MPOVA3,MPOVA4,MPOVA5,MPOVA6,MPOVA7,MPOVA8,
  78. & MPOVA9,MPOVAB,MPOVAC,MPOVAD,MPOVAE,MPOVACP,MPOVAF,
  79. & MPOVAI,MPOVAJ
  80. NNGOT = nbpts
  81. SEGINI REDIR
  82. NBLAY = IPT2.NUM(/2)
  83. DO 10 I=1,NBLAY
  84. K = IPT2.NUM(1,I)
  85. IND2(K) = I
  86. 10 CONTINUE
  87. NBWAL = IPT3.NUM(/2)
  88. DO 20 I=1,NBWAL
  89. K = IPT3.NUM(1,I)
  90. IND3(K) = I
  91. 20 CONTINUE
  92. NBCEL = IPT1.NUM(/2)
  93. DO 30 I=1,NBCEL
  94. K = IPT1.NUM(1,I)
  95. IND1(K) = I
  96. 30 CONTINUE
  97. UST = 1.D0 / 3.D0
  98. DST = 2.D0 / 3.D0
  99. C
  100. C- Pour chaque couple CELL/LAYERW on calcule les grandeurs liees a la
  101. C condensation
  102. C
  103. SEGINI, MPOUT1=MPOVA7
  104. N = MPOVA7.VPOCHA(/1)
  105. NC = 1
  106. SEGINI MPOUT2,MPOUT3,MPOUT4
  107. N1 = IPT4.NUM(/2)
  108. DO 70 I=1,N1
  109. IPOS = IND2(IPT4.NUM(2,I))
  110. IF (IPOS.NE.0) THEN
  111. II1 = IND1(IPT4.NUM(1,I))
  112. JPOS = IND3(IPT4.NUM(2,I))
  113. C
  114. T_G = MPOVA2.VPOCHA(II1,1)
  115. Tsat_G = MPOVA6.VPOCHA(II1,1)
  116. P_G = MPOVA1.VPOCHA(II1,1)
  117. Pv_G = MPOVA5.VPOCHA(II1,1)
  118. RHO_G = MPOVA3.VPOCHA(II1,1)
  119. RHOv_G = MPOVA4.VPOCHA(II1,1)
  120. C
  121. Rnc = MPOVAD.VPOCHA(II1,1)
  122. T_W = MPOVA8.VPOCHA(JPOS,1)
  123. Pv_W = PSATT0(T_W)
  124. Pnc_W = P_G - Pv_W
  125. RHOnc_W = Pnc_W / (Rnc * T_W)
  126. RHOv_W = ROVAP0(Pv_W,T_W)
  127. RHO_W = RHOv_W + RHOnc_W
  128. C
  129. HL_W = HLS0(P_G,T_W)
  130. XLAMBDA = MPOVAB.VPOCHA(II1,1)
  131. XNU = MPOVAC.VPOCHA(II1,1)
  132. CPmel = MPOVACP.VPOCHA(II1,1)
  133. ALFA = XLAMBDA / (RHO_G * CPmel)
  134. WNC = MPOVAI.VPOCHA(II1,1)
  135. WVAP = MPOVAJ.VPOCHA(II1,1)
  136. C
  137. Ync_G = (RHO_G - RHOv_G) / RHO_G
  138. Ync_W = RHOnc_W / RHO_W
  139. X1 = (Ync_W - Ync_G) / 0.01D0
  140. X1 = MAX(X1,0.D0)
  141. X1 = MIN(X1,1.D0)
  142. FX1 = (X1**2.D0) * (3.D0 - 2.D0*X1)
  143. FACT1 = (T_G - T_W) / T_G
  144. FACT2 = FX1 * (Ync_W - Ync_G) / ((WNC/(WNC-WVAP)) - Ync_G)
  145. GBDRSR = ABS(FACT1 + FACT2) * GRAV
  146. C
  147. C En absence de condensation HT n'est pas multiplié par theta
  148. HT = 0.13D0 * XLAMBDA * ((GBDRSR/(XNU*ALFA)) ** UST)
  149. IF ((T_G - T_W) .GE. 0.02D0) THEN
  150. S_W = MPOVA9.VPOCHA(IPOS,1)
  151. Dvmel = MPOVAE.VPOCHA(II1,1)
  152. HV_G = HVS0(Pv_G,T_G)
  153. C
  154. IF (Ync_w .LT. 0.01D0) THEN
  155. DYSY = -1.D0
  156. ELSE
  157. DYSY = (Ync_W - Ync_G) / Ync_W
  158. ENDIF
  159. IF (DYSY .LT. 0.D0) THEN
  160. DC = 0.D0
  161. HDC = 0.D0
  162. ELSE
  163. THETA = 0.8254D0 + 0.616D0 * (Pv_G-Pv_W) / (P_G-Pv_W)
  164. THETA = MAX(THETA,TTAINF)
  165. THETA = MIN(THETA,TTASUP)
  166. HT = MIN(THETA*HT,HMAX)
  167. XKC = (Dvmel ** DST) * (ALFA ** UST) * HT / XLAMBDA
  168. C
  169. C Lissage de Dc en deça d'un écart de 0.2°C entre Tsat_G et Tsat_W
  170. X2 = (Tsat_G - T_W) / 0.2D0
  171. X2 = MAX(X2,0.D0)
  172. X2 = MIN(X2,1.D0)
  173. FX2 = (X2**2.D0) * (3.D0 - 2.D0*X2)
  174. DC = RHO_G * XKC * S_W * DYSY * FX2
  175. DC = MAX(DC,0.D0)
  176. HDC = (DC / S_W) * (HV_G - HL_W) / (T_G - T_W)
  177. HDC = MAX(HDC,0.D0)
  178. ENDIF
  179. IF ((HT + HDC) . LT . MPOVA7.VPOCHA(IPOS,1)) THEN
  180. HT = MPOVA7.VPOCHA(IPOS,1) - HDC
  181. ENDIF
  182. QW2 = (HT + HDC) * (T_G - T_W)
  183. DCSPHI = (DC / QW2) * (-1.D0)
  184. ELSE
  185. HT = MIN(HT,HMAX)
  186. DC = 0.D0
  187. HDC = 0.D0
  188. IF ((HT + HDC) . LT . MPOVA7.VPOCHA(IPOS,1)) THEN
  189. HT = MPOVA7.VPOCHA(IPOS,1) - HDC
  190. ENDIF
  191. DCSPHI = 0.D0
  192. ENDIF
  193. HT = MAX(HT,0.D0)
  194. MPOUT1 . VPOCHA(IPOS,1) = HT + HDC
  195. MPOUT2 . VPOCHA(IPOS,1) = DCSPHI
  196. MPOUT3 . VPOCHA(IPOS,1) = HL_W
  197. MPOUT4 . VPOCHA(IPOS,1) = HT
  198. ENDIF
  199. 70 CONTINUE
  200. C
  201. C- Menage
  202. C
  203. SEGSUP REDIR
  204. SEGDES IPT1,IPT2,IPT3,IPT4,MPOVA1,MPOVA2,MPOVA3,MPOVA4,MPOVA5,
  205. & MPOVA6,MPOVA7,MPOVA8,MPOVA9,MPOVAB,MPOVAC,MPOVAD,
  206. & MPOVAE,MPOVAF,MPOVAI,MPOVAJ,MPOVACP
  207. C
  208. RETURN
  209. END
  210.  
  211.  
  212.  
  213.  
  214.  

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