File: RELATIVE:/../../../mfix.git/model/adjust_a_u_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_U_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 usr
39 USE compar
40 USE sendrecv
41 USE fun_avg
42 USE functions
43 IMPLICIT NONE
44
45
46
47
48
49
50
51
52 INTEGER I, IP, IJK, IJKE, IMJK
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_X_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 IJKE = EAST_OF(IJK)
79 IP = IP1(I_OF(IJK))
80 IF (ROP_G(IJKE)*AYZ_U(IJK) > SMALL_NUMBER) THEN
81 B_M(IJK,M) = SQRT((-B_M(IJK,M)/(ROP_G(IJKE)*AVG_X_E(ONE,ZERO,&
82 IP)*AYZ_U(IJK))))
83 ELSE
84 B_M(IJK,M) = ZERO
85 ENDIF
86 ELSE IF (B_M(IJK,M) > ZERO) THEN
87 I = I_OF(IJK)
88 IMJK = IM_OF(IJK)
89 IF (ROP_G(IJK)*AYZ_U(IMJK) > SMALL_NUMBER) THEN
90 B_M(IJK,M) = SQRT(B_M(IJK,M)/(ROP_G(IJK)*AVG_X_E(ZERO,ONE,I)*&
91 AYZ_U(IMJK)))
92 ELSE
93 B_M(IJK,M) = ZERO
94 ENDIF
95 ENDIF
96 ENDIF
97 END DO
98
99 RETURN
100 END SUBROUTINE ADJUST_A_U_G
101
102
103
104
105