File: /nfs/home/0/users/jenkins/mfix.git/model/adjust_a_w_g.f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 SUBROUTINE ADJUST_A_W_G(A_M, B_M)
22
23
24
25
26
27
28
29
30 USE param
31 USE param1
32 USE parallel
33 USE matrix
34 USE fldvar
35 USE geometry
36 USE run
37 USE indices
38 USE compar
39 USE sendrecv
40 USE fun_avg
41 USE functions
42
43 IMPLICIT NONE
44
45
46
47
48
49
50
51
52 INTEGER IJK, IJKT, IJKM
53
54
55 INTEGER M
56
57
58 DOUBLE PRECISION A_m(DIMENSION_3, -3:3, 0:DIMENSION_M)
59
60
61 DOUBLE PRECISION B_m(DIMENSION_3, 0:DIMENSION_M)
62
63
64 = 0
65 IF (.NOT.MOMENTUM_Z_EQ(0)) RETURN
66
67
68 DO IJK = ijkstart3, ijkend3
69 IF (ABS(A_M(IJK,0,M)) < SMALL_NUMBER) THEN
70 A_M(IJK,E,M) = ZERO
71 A_M(IJK,W,M) = ZERO
72 A_M(IJK,N,M) = ZERO
73 A_M(IJK,S,M) = ZERO
74 A_M(IJK,T,M) = ZERO
75 A_M(IJK,B,M) = ZERO
76 A_M(IJK,0,M) = -ONE
77 IF (B_M(IJK,M) < ZERO) THEN
78 IJKT = TOP_OF(IJK)
79 IF (ROP_G(IJKT)*AXY_W(IJK) > SMALL_NUMBER) THEN
80 B_M(IJK,M) = SQRT((-B_M(IJK,M)/(ROP_G(IJKT)*AVG_Z_T(ONE,ZERO)&
81 *AXY_W(IJK))))
82 ELSE
83 B_M(IJK,M) = ZERO
84 ENDIF
85 ELSE IF (B_M(IJK,M) > ZERO) THEN
86 IJKM = KM_OF(IJK)
87 IF (ROP_G(IJK)*AXY_W(IJKM) > SMALL_NUMBER) THEN
88 B_M(IJK,M) = SQRT(B_M(IJK,M)/(ROP_G(IJK)*AVG_Z_T(ZERO,ONE)*&
89 AXY_W(IJKM)))
90 ELSE
91 B_M(IJK,M) = ZERO
92 ENDIF
93 ENDIF
94 ENDIF
95 END DO
96 RETURN
97 END SUBROUTINE ADJUST_A_W_G
98
99
100
101
102