Rocstar  1.0
Rocstar multiphysics simulation application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
rocflu/RFLU_AllocateMemoryWrapper.F90
Go to the documentation of this file.
1 ! *********************************************************************
2 ! * Rocstar Simulation Suite *
3 ! * Copyright@2015, Illinois Rocstar LLC. All rights reserved. *
4 ! * *
5 ! * Illinois Rocstar LLC *
6 ! * Champaign, IL *
7 ! * www.illinoisrocstar.com *
8 ! * sales@illinoisrocstar.com *
9 ! * *
10 ! * License: See LICENSE file in top level of distribution package or *
11 ! * http://opensource.org/licenses/NCSA *
12 ! *********************************************************************
13 ! *********************************************************************
14 ! * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, *
15 ! * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES *
16 ! * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND *
17 ! * NONINFRINGEMENT. IN NO EVENT SHALL THE CONTRIBUTORS OR *
18 ! * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER *
19 ! * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, *
20 ! * Arising FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE *
21 ! * USE OR OTHER DEALINGS WITH THE SOFTWARE. *
22 ! *********************************************************************
23 ! ******************************************************************************
24 !
25 ! Purpose: Allocate memory wrapper.
26 !
27 ! Description: None.
28 !
29 ! Input:
30 ! pRegion Region pointer
31 !
32 ! Output: None.
33 !
34 ! Notes: None.
35 !
36 ! ******************************************************************************
37 !
38 ! $Id: RFLU_AllocateMemoryWrapper.F90,v 1.25 2008/12/06 08:44:29 mtcampbe Exp $
39 !
40 ! Copyright: (c) 2002-2005 by the University of Illinois
41 !
42 ! ******************************************************************************
43 
44 SUBROUTINE rflu_allocatememorywrapper(pRegion)
45 
46  USE moddatatypes
47  USE moderror
48  USE modglobal, ONLY: t_global
49  USE moddatastruct, ONLY: t_region
50  USE modparameters
51  USE modmpi
52 
53 #ifdef PLAG
54  USE modpartlag, ONLY: t_plag
55 #endif
56 
57 #ifdef GENX
59 #endif
60 
62 
63 #ifdef PLAG
69 #endif
70 
71 #ifdef PERI
73 #endif
74 
75 #ifdef SPEC
78 #endif
79 
80 #ifdef TURB
82 #endif
83 
84  IMPLICIT NONE
85 
86 ! ******************************************************************************
87 ! Definitions and declarations
88 ! ******************************************************************************
89 
90 ! ==============================================================================
91 ! Arguments
92 ! ==============================================================================
93 
94  TYPE(t_region), POINTER :: pregion
95 
96 ! ==============================================================================
97 ! Locals
98 ! ==============================================================================
99 
100  CHARACTER(CHRLEN) :: rcsidentstring
101  TYPE(t_global), POINTER :: global
102 #ifdef PLAG
103  TYPE(t_plag), POINTER :: pplag
104 #endif
105 
106 ! ******************************************************************************
107 ! Start
108 ! ******************************************************************************
109 
110  rcsidentstring = &
111  '$RCSfile: RFLU_AllocateMemoryWrapper.F90,v $ $Revision: 1.25 $'
112 
113  global => pregion%global
114 
115  CALL registerfunction(global,'RFLU_AllocateMemoryWrapper',&
116  'RFLU_AllocateMemoryWrapper.F90')
117 
118  IF ( global%myProcid == masterproc .AND. &
119  global%verbLevel >= verbose_high ) THEN
120  WRITE(stdout,'(A,1X,A)') solver_name,'Allocating memory...'
121  END IF ! global%verbLevel
122 
123 ! ******************************************************************************
124 ! Allocate memory
125 ! ******************************************************************************
126 
127 ! ==============================================================================
128 ! Mixture
129 ! ==============================================================================
130 
131  CALL rflu_allocatememory(pregion)
132 
133 #ifdef GENX
134  CALL rflu_genx_createdatainterf(pregion)
135 #endif
136 
137 #ifdef PLAG
138 ! ==============================================================================
139 ! Particles
140 ! ==============================================================================
141 
142  IF ( global%plagUsed .EQV. .true. ) THEN
143  pplag => pregion%plag
144  CALL plag_rflu_allocmemsol(pregion,pplag)
145  CALL plag_rflu_allocmemsoltile(pregion)
146  CALL plag_rflu_allocmemtstep(pregion,pplag)
147  CALL plag_rflu_allocmemtsteptile(pregion)
148  CALL plag_inrt_allocmemtstep(pregion,pplag)
149  END IF ! plagUsed
150 #endif
151 
152 #ifdef RADI
153 ! ==============================================================================
154 ! Radiation
155 ! ==============================================================================
156 
157  IF ( pregion%mixtInput%radiUsed .EQV. .true. ) THEN
158  CALL radi_allocatememory(pregion)
159  END IF ! pRegion%mixtInput%radiUsed
160 #endif
161 
162 #ifdef SPEC
163 ! ==============================================================================
164 ! Species
165 ! ==============================================================================
166 
167  IF ( global%specUsed .EQV. .true. ) THEN
168  CALL spec_rflu_allocatememory(pregion)
169  CALL spec_rflu_allocatememoryeev(pregion)
170  END IF ! pRegion%mixtInput%specUsed
171 #endif
172 
173 #ifdef TURB
174 ! ==============================================================================
175 ! Turbulence
176 ! ==============================================================================
177 
178  IF ( (pregion%mixtInput%flowModel == flow_navst) .AND. &
179  (pregion%mixtInput%turbModel /= turb_model_none) ) THEN
180  CALL turb_allocatememory(pregion)
181  END IF ! pRegion%mixtInput%flowModel
182 #endif
183 
184 #ifdef PERI
185  IF ( pregion%periInput%flowKind /= off ) THEN
186  CALL peri_allocatememory(pregion)
187  END IF ! pRegion%periInput%flowKind
188 #endif
189 
190 ! ******************************************************************************
191 ! End
192 ! ******************************************************************************
193 
194  IF ( global%myProcid == masterproc .AND. &
195  global%verbLevel >= verbose_high ) THEN
196  WRITE(stdout,'(A,1X,A)') solver_name,'Allocating memory done.'
197  END IF ! global%verbLevel
198 
199  CALL deregisterfunction(global)
200 
201 END SUBROUTINE rflu_allocatememorywrapper
202 
203 ! ******************************************************************************
204 !
205 ! RCS Revision history:
206 !
207 ! $Log: RFLU_AllocateMemoryWrapper.F90,v $
208 ! Revision 1.25 2008/12/06 08:44:29 mtcampbe
209 ! Updated license.
210 !
211 ! Revision 1.24 2008/11/19 22:17:40 mtcampbe
212 ! Added Illinois Open Source License/Copyright
213 !
214 ! Revision 1.23 2005/11/27 01:52:08 haselbac
215 ! Added allocate call for EEv
216 !
217 ! Revision 1.22 2004/10/20 12:52:02 haselbac
218 ! Bug fix: Erroneous reintroduction of INRT routine
219 !
220 ! Revision 1.21 2004/10/19 19:29:05 haselbac
221 ! Adapted to GENX changes, no longer create grid
222 !
223 ! Revision 1.20 2004/07/28 15:29:20 jferry
224 ! created global variable for spec use
225 !
226 ! Revision 1.19 2004/07/27 21:27:15 jferry
227 ! removed rocinteract allocation routines (moved to rocpart)
228 !
229 ! Revision 1.18 2004/07/26 17:05:51 fnajjar
230 ! moved allocation of inrtSources into Rocpart
231 !
232 ! Revision 1.17 2004/07/23 22:43:16 jferry
233 ! Integrated rocspecies into rocinteract
234 !
235 ! Revision 1.16 2004/06/17 23:05:58 wasistho
236 ! added memory allocation for rocperi
237 !
238 ! Revision 1.15 2004/06/14 23:20:24 jferry
239 ! Added checks for inrtUsed, plagUsed, and/or peulUsed
240 !
241 ! Revision 1.14 2004/03/19 21:21:30 haselbac
242 ! Cosmetics only
243 !
244 ! Revision 1.13 2004/03/05 22:09:03 jferry
245 ! created global variables for peul, plag, and inrt use
246 !
247 ! Revision 1.12 2004/02/26 21:02:06 haselbac
248 ! Added PLAG support, changed logic
249 !
250 ! Revision 1.11 2004/02/02 22:51:15 haselbac
251 ! Commented out PLAG_AllocateMemory - temporary measure
252 !
253 ! Revision 1.10 2003/11/25 21:04:35 haselbac
254 ! Added call to SPEC_RFLU_AllocateMemory
255 !
256 ! Revision 1.9 2003/03/18 21:33:25 haselbac
257 ! Added allocMode argument
258 !
259 ! Revision 1.8 2003/03/15 18:24:59 haselbac
260 ! Some changes for parallel computations
261 !
262 ! Revision 1.7 2003/01/28 14:21:17 haselbac
263 ! Cosmetic changes only
264 !
265 ! Revision 1.6 2002/09/17 22:51:23 jferry
266 ! Removed Fast Eulerian particle type
267 !
268 ! Revision 1.5 2002/09/09 15:27:01 haselbac
269 ! global and mixtInput now under regions
270 !
271 ! Revision 1.4 2002/08/24 03:19:56 wasistho
272 ! put safety within #ifdef TURB
273 !
274 ! Revision 1.3 2002/07/25 14:27:13 haselbac
275 ! Added MASTERPROC distinction for output
276 !
277 ! Revision 1.2 2002/06/17 13:34:12 haselbac
278 ! Prefixed SOLVER_NAME to all screen output
279 !
280 ! Revision 1.1 2002/05/04 17:01:59 haselbac
281 ! Initial revision
282 !
283 ! ******************************************************************************
284 
285 
286 
287 
288 
289 
290 
subroutine turb_allocatememory(region)
subroutine rflu_allocatememory(pRegion)
subroutine plag_rflu_allocmemtsteptile(pRegion)
subroutine plag_rflu_allocmemsol(pRegion, pPlag)
subroutine rflu_allocatememorywrapper(pRegion)
subroutine registerfunction(global, funName, fileName)
Definition: ModError.F90:449
subroutine spec_rflu_allocatememoryeev(pRegion)
subroutine peri_allocatememory(region)
subroutine, public rflu_genx_createdatainterf(pRegion)
subroutine spec_rflu_allocatememory(pRegion)
subroutine plag_inrt_allocmemtstep(pRegion, pPlag)
subroutine plag_rflu_allocmemsoltile(pRegion)
subroutine radi_allocatememory(region)
subroutine deregisterfunction(global)
Definition: ModError.F90:469
subroutine plag_rflu_allocmemtstep(pRegion, pPlag)