MFIX  2016-1
set_max2.f
Go to the documentation of this file.
1 !vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvC
2 ! C
3 ! Module name: SET_MAX2 C
4 ! Purpose: calculate IMAX1,IMAX2,JMAX1,JMAX2,KMAX1,KMAX2,IJMAX2 C
5 ! IJKMAX2 C
6 ! C
7 ! Author: P. Nicoletti Date: 04-DEC-91 C
8 ! Reviewer: M.SYAMLAL, W.ROGERS, P.NICOLETTI Date: 24-JAN-92 C
9 ! C
10 ! Literature/Document References: C
11 ! C
12 ! Variables referenced: IMAX, JMAX, KMAX, NO_I, NO_J, NO_K C
13 ! Variables modified: IMAX1, IMAX2, JMAX1, JMAX2, KMAX1, KMAX2 C
14 ! IJMAX2, IJKMAX2, IMIN1, JMIN1, KMIN1 C
15 ! C
16 ! Local variables: C
17 ! C
18 !^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^C
19  SUBROUTINE set_max2
20 
21 ! X-Axix partition specifications.
22  USE compar, only: nodesi
23  USE geometry, only: imax, no_i, do_i
24  USE geometry, only: imin1, imin2, imin3, imin4
25  USE geometry, only: imax1, imax2, imax3, imax4
26 
27 ! Y-Axix partition specifications.
28  USE compar, only: nodesj
29  USE geometry, only: jmax, no_j, do_j
30  USE geometry, only: jmin1, jmin2, jmin3, jmin4
31  USE geometry, only: jmax1, jmax2, jmax3, jmax4
32 
33 ! Z-Axix partition specifications.
34  USE compar, only: nodesk
35  USE geometry, only: kmax, no_k, do_k
36  USE geometry, only: kmin1, kmin2, kmin3, kmin4
37  USE geometry, only: kmax1, kmax2, kmax3, kmax4
38 
39 ! Calculated array sizes.
40  USE geometry, only: ijmax2
41  USE geometry, only: ijkmax1, ijkmin1
42  USE geometry, only: ijkmax2, ijkmax3, ijkmax4
43 
44  IMPLICIT NONE
45 
46 
47 ! Initialize I's
48  imin1=1; imin2=1; imin3=1; imin4=1
49  imax1=1; imax2=1; imax3=1; imax4=1
50 
51  do_i=.NOT.no_i
52 
53 ! Set the domain specific values.
54  IF(do_i) THEN
55  imin1 = 2
56  imax1 = imax + 1
57  imax2 = imax + 2
58  imin2 = 1
59  IF(nodesi.NE.1) THEN
60  imin3 = 0
61  imax3 = imax + 3
62  imin4 = -1
63  imax4 = imax + 4
64  ELSE
65  imin3 = imin2
66  imax3 = imax2
67  imin4 = imin3
68  imax4 = imax3
69  ENDIF
70  ENDIF
71 
72 
73 ! Initialize J's
74  jmin1=1; jmin2=1; jmin3=1; jmin4=1
75  jmax1=1; jmax2=1; jmax3=1; jmax4=1
76 
77  do_j=.NOT.no_j
78 
79 ! Set the domain specific values.
80  IF(do_j) THEN
81  jmin1 = 2
82  jmax1 = jmax + 1
83  jmax2 = jmax + 2
84  jmin2 = 1
85  IF(nodesj.NE.1) THEN
86  jmin3 = 0
87  jmax3 = jmax + 3
88  jmin4 = -1
89  jmax4 = jmax + 4
90  ELSE
91  jmin3 = jmin2
92  jmax3 = jmax2
93  jmin4 = jmin3
94  jmax4 = jmax3
95  ENDIF
96  ENDIF
97 
98 
99 ! Initialize J's
100  kmin1=1; kmin2=1; kmin3=1; kmin4=1
101  kmax1=1; kmax2=1; kmax3=1; kmax4=1
102 
103  do_k=.NOT.no_k
104 
105 ! Set the domain specific values.
106  IF (do_k) THEN
107  kmin1 = 2
108  kmax1 = kmax + 1
109  kmax2 = kmax + 2
110  kmin2 = 1
111  IF(nodesk.NE.1) THEN
112  kmin3 = 0
113  kmax3 = kmax + 3
114  kmin4 = -1
115  kmax4 = kmax + 4
116  ELSE
117  kmin3 = kmin2
118  kmax3 = kmax2
119  kmin4 = kmin3
120  kmax4 = kmax3
121  ENDIF
122  ENDIF
123 
124 ! Number of cells in I/J plane.
125  ijmax2 = imax2*jmax2
126 ! Totoal number of possible fluid cells.
127  ijkmax2 = imax2*jmax2*kmax2
128 
129  IF (do_k) THEN
130  ijkmin1 = ijmax2 + 1
131  ijkmax1 = ijkmax2 - ijmax2
132  ELSE
133  ijkmin1 = imax2 + 1
134  ijkmax1 = ijkmax2 - imax2
135  ENDIF
136 
137 ! Max cell count with one layer of ghost cells.
138  ijkmax3 = (imax3-imin3+1)*(jmax3-jmin3+1)*(kmax3-kmin3+1)
139 ! Max cell count with two layers of ghost cells.
140  ijkmax4 = (imax4-imin4+1)*(jmax4-jmin4+1)*(kmax4-kmin4+1)
141 
142  RETURN
143  END SUBROUTINE set_max2
integer imax2
Definition: geometry_mod.f:61
logical no_i
Definition: geometry_mod.f:20
integer imax3
Definition: geometry_mod.f:91
integer ijkmax2
Definition: geometry_mod.f:80
integer kmin4
Definition: geometry_mod.f:94
integer ijkmax1
Definition: geometry_mod.f:86
integer imax4
Definition: geometry_mod.f:95
integer jmin2
Definition: geometry_mod.f:89
integer imin3
Definition: geometry_mod.f:90
integer ijkmin1
Definition: geometry_mod.f:84
integer imax
Definition: geometry_mod.f:47
integer ijkmax3
Definition: geometry_mod.f:82
integer kmax4
Definition: geometry_mod.f:95
integer kmax1
Definition: geometry_mod.f:58
integer imin4
Definition: geometry_mod.f:94
integer ijkmax4
Definition: geometry_mod.f:96
integer imax1
Definition: geometry_mod.f:54
integer jmax2
Definition: geometry_mod.f:63
integer jmax3
Definition: geometry_mod.f:91
logical do_j
Definition: geometry_mod.f:26
integer kmax2
Definition: geometry_mod.f:65
integer jmax1
Definition: geometry_mod.f:56
integer jmin3
Definition: geometry_mod.f:90
integer kmax
Definition: geometry_mod.f:51
logical no_k
Definition: geometry_mod.f:28
integer jmin4
Definition: geometry_mod.f:94
integer ijmax2
Definition: geometry_mod.f:78
integer jmin1
Definition: geometry_mod.f:42
integer kmax3
Definition: geometry_mod.f:91
logical do_k
Definition: geometry_mod.f:30
logical no_j
Definition: geometry_mod.f:24
integer nodesj
Definition: compar_mod.f:37
integer kmin3
Definition: geometry_mod.f:90
subroutine set_max2
Definition: set_max2.f:20
integer nodesk
Definition: compar_mod.f:37
integer jmax
Definition: geometry_mod.f:49
integer imin2
Definition: geometry_mod.f:89
integer nodesi
Definition: compar_mod.f:37
logical do_i
Definition: geometry_mod.f:22
integer imin1
Definition: geometry_mod.f:40
integer kmin1
Definition: geometry_mod.f:44
integer jmax4
Definition: geometry_mod.f:95
integer kmin2
Definition: geometry_mod.f:89