File: /nfs/home/0/users/jenkins/mfix.git/model/calc_k_s.f

1     !vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvC
2     !                                                                           C
3     !  Module name: CALC_K_s(M, IER)                                            C
4     !  Purpose: Calculate the effective conductivity of solids phases           C
5     !                                                                           C
6     !  Author:M. Syamlal                                  Date: 24-APR-96       C
7     !  Reviewer:                                          Date: dd-mmm-yy       C
8     !                                                                           C
9     !  Revision Number: 01                                                      C
10     !  Purpose: (1) allow to use Bauer & Schlunder's (1978) model in CGS or SI  C
11     !           (2) If fluid_at(IJK) condition for the Bauer & Schlunder's modelC
12     !  Author:  S. Dartevelle                             Date: 10-July-02      C
13     !  Reviewer:                                          Date: dd-mmm-yy       C
14     !                                                                           C
15     !  Literature/Document References:                                          C
16     !                                                                           C
17     !  Variables referenced:                                                    C
18     !  Variables modified:                                                      C
19     !                                                                           C
20     !  Local variables:                                                         C
21     !                                                                           C
22     !^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^C
23     
24           SUBROUTINE CALC_K_S(M)
25     !...Translated by Pacific-Sierra Research VAST-90 2.06G5  12:17:31  12/09/98
26     !...Switches: -xf
27     !-----------------------------------------------
28     !   M o d u l e s
29     !-----------------------------------------------
30           USE param
31           USE param1
32           USE parallel
33           USE physprop
34           USE fldvar
35           USE geometry
36           USE indices
37           USE constant
38           USE toleranc
39           USE compar
40           USE sendrecv
41           USE run
42           USE functions
43           IMPLICIT NONE
44     !-----------------------------------------------
45     !   G l o b a l   P a r a m e t e r s
46     !-----------------------------------------------
47     !-----------------------------------------------
48     !   D u m m y   A r g u m e n t s
49     !-----------------------------------------------
50     !-----------------------------------------------
51     !   L o c a l   P a r a m e t e r s
52     !-----------------------------------------------
53     
54     ! define two
55           DOUBLE PRECISION, PARAMETER          :: TWO = 2.0d0
56     
57     ! microscopic conductivity of ash in cal/s.cm.K
58     ! (not modified by the gas phase)
59           DOUBLE PRECISION Ks_micro
60           PARAMETER (Ks_micro = 0.5258D-2)    !(2.2 J/s.m.K)
61     
62     ! constant in conductivity equation
63           DOUBLE PRECISION PHI_k
64           PARAMETER (PHI_k = 7.26D-3)
65     !-----------------------------------------------
66     !   L o c a l   V a r i a b l e s
67     !-----------------------------------------------
68     !                      Indices
69           INTEGER          IJK
70     
71     !                      Solids phase
72           INTEGER          M
73     
74     !                      Quantities in solids conductivity formula
75           DOUBLE PRECISION B, R_km, BoR, L_rm
76     
77     !                      Transform K_g(IJK) into the CGS if we work with SI
78           DOUBLE PRECISION Kg_micro
79     !-----------------------------------------------
80     
81           IF (K_S0(M) /= UNDEFINED) RETURN
82     
83     !!!!$omp parallel do private(IJK,B,R_km,BoR,L_rm,Kg_micro) &
84     !!!!$omp& schedule(dynamic,chunk_size)
85           DO IJK = ijkstart3, ijkend3
86     
87     ! All calculations are in CGS (1 cal = 4.183925J)
88              IF (FLUID_AT(IJK)) THEN
89                 IF (UNITS == 'SI') THEN
90                    Kg_micro = K_g(IJK)/418.3925D0  !convert K_g to CGS units (cal/s.cm.K)
91                 ELSE
92                    Kg_micro = K_g(IJK)     ! K_g already in CGS units (cal/s.cm.K)
93                 ENDIF
94     
95     ! Bauer & Schlunder's (1978) theory:
96                 IF( EP_s(IJK,M) >  DIL_EP_s) THEN
97                    B = 1.25D0 * ((ONE - EP_g(IJK))/EP_g(IJK))**(10.D0/9.D0)
98                    R_km = Ks_micro/Kg_micro
99                    BoR  = B/R_km
100                    L_rm = -(TWO/(ONE-BoR)) * &
101                       ( ((R_km-ONE)/(ONE-BoR)**2)*BoR*LOG(BoR) + &
102                         (B-ONE)/(ONE-BoR) + (B+ONE)/TWO )
103     ! K_s is the macroscopic conductivity that has been modified by the presence of
104     ! the gas phase (cal/s.cm.K)
105                    K_S(IJK,M) = (Phi_k*R_km + (ONE-Phi_k)*L_rm)*&
106                       Kg_micro/SQRT(ONE - EP_g(IJK))
107                 ELSE
108                    K_S(IJK, M) = ZERO
109                 ENDIF
110     
111     ! An approximate average value for the solids conductivity is 2.5*K_g
112     !         K_S(IJK,M) = 2.5*Kg_micro            !in CGS system
113     
114              ELSE   ! else branch if(fluid_at(ijk))
115                 K_S(IJK,M) = ZERO
116              ENDIF   ! end if/else (fluid_at(ijk))
117     
118              IF (UNITS == 'SI') K_s(IJK, M) = 418.3925D0*K_s(IJK, M)   !J/s.m.K
119     
120           ENDDO   ! end do (ijk=ijkstart3,ijkend3)
121     
122           CALL send_recv(K_S, 2)
123     
124           RETURN
125           END SUBROUTINE CALC_K_S
126     
127     
128