65 TYPE(t_region
) :: region
66 CHARACTER(CHRLEN) :: wins, winv
72 INTEGER :: ilev, bctype, pid, icount, errorflag, ilb
74 INTEGER,
POINTER :: dims(:), iconstrtype
80 global => region%global
83 'PREP_InitGenxInterface.F90' )
89 CALL com_new_attribute( trim(wins)//
'.bcflag' ,
'p',com_integer,1,
'' )
90 CALL com_new_attribute( trim(wins)//
'.cnstr_type',
'p',com_integer,1,
'' )
94 CALL com_new_attribute( trim(winv)//
'.rhof' ,
'e',com_double,1,&
96 CALL com_new_attribute( trim(winv)//
'.rhovf',
'e',com_double,3,&
98 CALL com_new_attribute( trim(winv)//
'.rhoEf',
'e',com_double,1,&
103 ALLOCATE( dims(3),stat=errorflag )
104 global%error = errorflag
105 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
107 ilev = region%currLevel
112 DO ipatch=1,region%nPatches
113 patch => region%levels(ilev)%patches(ipatch)
114 bctype =
patch%bcType
117 IF (
patch%bcCoupled == bc_external)
THEN
119 pid = ireg*regoff + icount
123 CALL com_set_size(trim(wins)//
'.bcflag',pid,1)
124 CALL com_set_array( trim(wins)//
'.bcflag',pid,
patch%bcFlag )
126 IF (bctype>=bc_injection .AND. bctype<=bc_injection+bc_range)
THEN
137 CALL com_set_array_const( trim(wins)//
'.:st2:',pid,dims )
138 CALL com_set_array( trim(wins)//
'.nc',pid,
patch%surfCoord )
142 CALL com_set_size(trim(wins)//
'.cnstr_type',pid,1)
143 CALL com_allocate_array( trim(wins)//
'.cnstr_type',pid,iconstrtype )
146 IF (bctype==bc_symmetry_free)
THEN
148 ELSEIF (bctype==bc_symmetry_fixed)
THEN
150 ELSEIF (bctype==bc_symmetry_xslide)
THEN
152 ELSEIF (bctype==bc_symmetry_yslide)
THEN
154 ELSEIF (bctype==bc_symmetry_zslide)
THEN
156 ELSEIF (bctype==bc_symmetry_xyslide)
THEN
158 ELSEIF (bctype==bc_symmetry_xzslide)
THEN
160 ELSEIF (bctype==bc_symmetry_yzslide)
THEN
163 IF (bctype==bc_slipwall_free)
THEN
165 ELSEIF (bctype==bc_slipwall_fixed)
THEN
167 ELSEIF (bctype==bc_slipwall_xslide)
THEN
169 ELSEIF (bctype==bc_slipwall_yslide)
THEN
171 ELSEIF (bctype==bc_slipwall_zslide)
THEN
173 ELSEIF (bctype==bc_slipwall_xyslide)
THEN
175 ELSEIF (bctype==bc_slipwall_xzslide)
THEN
177 ELSEIF (bctype==bc_slipwall_yzslide)
THEN
180 IF (bctype==bc_noslipwall_free)
THEN
182 ELSEIF (bctype==bc_noslipwall_fixed)
THEN
184 ELSEIF (bctype==bc_noslipwall_xslide)
THEN
186 ELSEIF (bctype==bc_noslipwall_yslide)
THEN
188 ELSEIF (bctype==bc_noslipwall_zslide)
THEN
190 ELSEIF (bctype==bc_noslipwall_xyslide)
THEN
192 ELSEIF (bctype==bc_noslipwall_xzslide)
THEN
194 ELSEIF (bctype==bc_noslipwall_yzslide)
THEN
197 IF (bctype==bc_outflow_free)
THEN
199 ELSEIF (bctype==bc_outflow_fixed)
THEN
201 ELSEIF (bctype==bc_outflow_xslide)
THEN
203 ELSEIF (bctype==bc_outflow_yslide)
THEN
205 ELSEIF (bctype==bc_outflow_zslide)
THEN
207 ELSEIF (bctype==bc_outflow_xyslide)
THEN
209 ELSEIF (bctype==bc_outflow_xzslide)
THEN
211 ELSEIF (bctype==bc_outflow_yzslide)
THEN
216 IF ((bctype>=bc_regionconf .AND. bctype<=bc_regionconf+bc_range) .OR. &
217 (bctype>=bc_regionint .AND. bctype<=bc_regionint+bc_range) .OR. &
218 (bctype>=bc_regnonconf .AND. bctype<=bc_regnonconf+bc_range) .OR. &
219 (bctype>=bc_tra_peri .AND. bctype<=bc_tra_peri+bc_range) .OR. &
220 (bctype>=bc_rot_peri .AND. bctype<=bc_rot_peri+bc_range))
THEN
224 pid = ireg*regoff + icount
226 CALL com_set_size(trim(wins)//
'.bcflag',pid,1)
227 CALL com_set_array( trim(wins)//
'.bcflag',pid,
patch%bcFlag )
236 CALL com_set_array_const( trim(wins)//
'.:st2:',pid,dims )
237 CALL com_set_array( trim(wins)//
'.nc',pid,
patch%surfCoord )
241 CALL com_set_size(trim(wins)//
'.cnstr_type',pid,1)
242 CALL com_allocate_array( trim(wins)//
'.cnstr_type',pid,iconstrtype )
245 IF (bctype==bc_symmetry_free)
THEN
247 ELSEIF (bctype==bc_symmetry_fixed)
THEN
249 ELSEIF (bctype==bc_symmetry_xslide)
THEN
251 ELSEIF (bctype==bc_symmetry_yslide)
THEN
253 ELSEIF (bctype==bc_symmetry_zslide)
THEN
255 ELSEIF (bctype==bc_symmetry_xyslide)
THEN
257 ELSEIF (bctype==bc_symmetry_xzslide)
THEN
259 ELSEIF (bctype==bc_symmetry_yzslide)
THEN
262 IF (bctype==bc_slipwall_free)
THEN
264 ELSEIF (bctype==bc_slipwall_fixed)
THEN
266 ELSEIF (bctype==bc_slipwall_xslide)
THEN
268 ELSEIF (bctype==bc_slipwall_yslide)
THEN
270 ELSEIF (bctype==bc_slipwall_zslide)
THEN
272 ELSEIF (bctype==bc_slipwall_xyslide)
THEN
274 ELSEIF (bctype==bc_slipwall_xzslide)
THEN
276 ELSEIF (bctype==bc_slipwall_yzslide)
THEN
279 IF (bctype==bc_noslipwall_free)
THEN
281 ELSEIF (bctype==bc_noslipwall_fixed)
THEN
283 ELSEIF (bctype==bc_noslipwall_xslide)
THEN
285 ELSEIF (bctype==bc_noslipwall_yslide)
THEN
287 ELSEIF (bctype==bc_noslipwall_zslide)
THEN
289 ELSEIF (bctype==bc_noslipwall_xyslide)
THEN
291 ELSEIF (bctype==bc_noslipwall_xzslide)
THEN
293 ELSEIF (bctype==bc_noslipwall_yzslide)
THEN
296 IF (bctype==bc_outflow_free)
THEN
298 ELSEIF (bctype==bc_outflow_fixed)
THEN
300 ELSEIF (bctype==bc_outflow_xslide)
THEN
302 ELSEIF (bctype==bc_outflow_yslide)
THEN
304 ELSEIF (bctype==bc_outflow_zslide)
THEN
306 ELSEIF (bctype==bc_outflow_xyslide)
THEN
308 ELSEIF (bctype==bc_outflow_xzslide)
THEN
310 ELSEIF (bctype==bc_outflow_yzslide)
THEN
328 dims(3) = kdnend -
kdnbeg + 1
330 CALL com_set_size( trim(winv)//
".:st3:",pid,3, region%nDumCells)
331 CALL com_set_array_const( trim(winv)//
".:st3:",pid,dims )
332 CALL com_set_array( trim(winv)//
'.nc',pid, &
333 region%levels(ilev)%grid%xyz )
337 ilb = lbound(region%levels(ilev)%mixt%cv,2)
339 CALL com_set_array( trim(winv)//
'.rhof',pid, &
340 region%levels(ilev)%mixt%cv(1,ilb),5)
341 CALL com_set_array( trim(winv)//
'.1-rhovf',pid, &
342 region%levels(ilev)%mixt%cv(2,ilb),5)
343 CALL com_set_array( trim(winv)//
'.2-rhovf',pid, &
344 region%levels(ilev)%mixt%cv(3,ilb),5)
345 CALL com_set_array( trim(winv)//
'.3-rhovf',pid, &
346 region%levels(ilev)%mixt%cv(4,ilb),5)
347 CALL com_set_array( trim(winv)//
'.rhoEf',pid, &
348 region%levels(ilev)%mixt%cv(5,ilb),5)
353 global%error = errorflag
354 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
367 CALL com_window_init_done( trim(wins))
368 CALL com_window_init_done( trim(winv))
subroutine registerfunction(global, funName, fileName)
**********************************************************************Rocstar Simulation Suite Illinois Rocstar LLC All rights reserved ****Illinois Rocstar LLC IL **www illinoisrocstar com **sales illinoisrocstar com WITHOUT WARRANTY OF ANY **EXPRESS OR INCLUDING BUT NOT LIMITED TO THE WARRANTIES **OF FITNESS FOR A PARTICULAR PURPOSE AND **NONINFRINGEMENT IN NO EVENT SHALL THE CONTRIBUTORS OR **COPYRIGHT HOLDERS BE LIABLE FOR ANY DAMAGES OR OTHER WHETHER IN AN ACTION OF TORT OR **Arising OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE **USE OR OTHER DEALINGS WITH THE SOFTWARE **********************************************************************INTERFACE SUBROUTINE jdnbeg
**********************************************************************Rocstar Simulation Suite Illinois Rocstar LLC All rights reserved ****Illinois Rocstar LLC IL **www illinoisrocstar com **sales illinoisrocstar com WITHOUT WARRANTY OF ANY **EXPRESS OR INCLUDING BUT NOT LIMITED TO THE WARRANTIES **OF FITNESS FOR A PARTICULAR PURPOSE AND **NONINFRINGEMENT IN NO EVENT SHALL THE CONTRIBUTORS OR **COPYRIGHT HOLDERS BE LIABLE FOR ANY DAMAGES OR OTHER WHETHER IN AN ACTION OF TORT OR **Arising OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE **USE OR OTHER DEALINGS WITH THE SOFTWARE **********************************************************************INTERFACE SUBROUTINE idnend
**********************************************************************Rocstar Simulation Suite Illinois Rocstar LLC All rights reserved ****Illinois Rocstar LLC IL **www illinoisrocstar com **sales illinoisrocstar com WITHOUT WARRANTY OF ANY **EXPRESS OR INCLUDING BUT NOT LIMITED TO THE WARRANTIES **OF FITNESS FOR A PARTICULAR PURPOSE AND **NONINFRINGEMENT IN NO EVENT SHALL THE CONTRIBUTORS OR **COPYRIGHT HOLDERS BE LIABLE FOR ANY DAMAGES OR OTHER WHETHER IN AN ACTION OF TORT OR **Arising OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE **USE OR OTHER DEALINGS WITH THE SOFTWARE **********************************************************************INTERFACE SUBROUTINE jdnend
subroutine rflo_initgenxinterfaceprep(iReg, region, wins, winv)
**********************************************************************Rocstar Simulation Suite Illinois Rocstar LLC All rights reserved ****Illinois Rocstar LLC IL **www illinoisrocstar com **sales illinoisrocstar com WITHOUT WARRANTY OF ANY **EXPRESS OR INCLUDING BUT NOT LIMITED TO THE WARRANTIES **OF FITNESS FOR A PARTICULAR PURPOSE AND **NONINFRINGEMENT IN NO EVENT SHALL THE CONTRIBUTORS OR **COPYRIGHT HOLDERS BE LIABLE FOR ANY DAMAGES OR OTHER WHETHER IN AN ACTION OF TORT OR **Arising OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE **USE OR OTHER DEALINGS WITH THE SOFTWARE **********************************************************************INTERFACE SUBROUTINE idnbeg
subroutine rflo_getdimensdummynodes(region, iLev, idnbeg, idnend, jdnbeg, jdnend, kdnbeg, kdnend)
subroutine errorstop(global, errorCode, errorLine, addMessage)
subroutine deregisterfunction(global)
**********************************************************************Rocstar Simulation Suite Illinois Rocstar LLC All rights reserved ****Illinois Rocstar LLC IL **www illinoisrocstar com **sales illinoisrocstar com WITHOUT WARRANTY OF ANY **EXPRESS OR INCLUDING BUT NOT LIMITED TO THE WARRANTIES **OF FITNESS FOR A PARTICULAR PURPOSE AND **NONINFRINGEMENT IN NO EVENT SHALL THE CONTRIBUTORS OR **COPYRIGHT HOLDERS BE LIABLE FOR ANY DAMAGES OR OTHER WHETHER IN AN ACTION OF TORT OR **Arising OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE **USE OR OTHER DEALINGS WITH THE SOFTWARE **********************************************************************INTERFACE SUBROUTINE kdnbeg