File: N:\mfix\model\des\calc_gamma_des.f
1 #include "version.inc"
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 SUBROUTINE CALC_GAMMA_DES(NP, pGAMMA)
18
19 USE compar
20 USE constant
21 USE des_thermo
22 USE discretelement
23 USE exit, only: mfix_exit
24 USE fldvar
25 USE geometry
26 USE indices
27 USE param1
28 USE physprop
29 USE fun_avg
30 USE functions
31
32 IMPLICIT NONE
33
34
35
36
37 INTEGER, INTENT(IN) :: NP
38
39 DOUBLE PRECISION, INTENT(OUT) :: pGAMMA
40
41
42
43
44 INTEGER IMJK, IJMK, IJKM
45
46 DOUBLE PRECISION, PARAMETER :: THIRD = (1.0d0/3.0d0)
47
48 DOUBLE PRECISION N_Pr
49 DOUBLE PRECISION N_Re
50 DOUBLE PRECISION N_Nu
51
52
53 DOUBLE PRECISION SLIP
54
55 DOUBLE PRECISION cUg, cVg, cWg
56 DOUBLE PRECISION Us, Vs, Ws
57
58 INTEGER :: IJK
59
60
61 = PIJK(NP,4)
62
63 = IM_OF(IJK)
64 IJMK = JM_OF(IJK)
65 IJKM = KM_OF(IJK)
66
67 SELECT CASE(DES_CONV_CORR_ENUM)
68
69 CASE (RANZ_1952)
70
71 = ZERO
72 N_Re = ZERO
73 N_Nu = ZERO
74
75 = AVG_X_E(U_g(IMJK), U_g(IJK), 1)
76 cVg = AVG_Y_N(V_g(IJMK), V_g(IJK))
77
78 = DES_VEL_NEW(NP,1)
79 Vs = DES_VEL_NEW(NP,2)
80
81
82 IF(NO_K) THEN
83 SLIP = SQRT((cUg-Us)**2 + (cVg-Vs)**2)
84 ELSE
85 cWg = AVG_Z_T(W_g(IJKM), W_g(IJK))
86 Ws = DES_VEL_NEW(NP,3)
87 SLIP = SQRT((cUg-Us)**2 + (cVg-Vs)**2 + (cWg-Ws)**2)
88 ENDIF
89
90
91 IF(K_G(IJK) > ZERO) THEN
92 N_Pr = (C_PG(IJK)*MU_G(IJK))/K_G(IJK)
93 ELSE
94 N_Pr = LARGE_NUMBER
95 ENDIF
96
97
98 IF(MU_G(IJK) > ZERO) THEN
99 N_Re = (2.0d0*DES_RADIUS(NP)*SLIP*RO_g(IJK)) / MU_g(IJK)
100 ELSE
101 N_Re = LARGE_NUMBER
102 ENDIF
103
104
105 = 2.0d0 + 0.6d0 *((N_Re)**HALF * (N_Pr)**THIRD)
106
107
108 = (N_Nu * K_G(IJK))/(2.0d0 * DES_RADIUS(NP))
109
110 CASE DEFAULT
111 WRITE(*,*)'INVALID DES CONVECTION MODEL'
112 ERROR_STOP 'INVALID DES CONVECTION MODEL'
113 CALL MFIX_EXIT(myPE)
114 END SELECT
115
116 RETURN
117 END SUBROUTINE CALC_GAMMA_DES
118