Rocstar  1.0
Rocstar multiphysics simulation application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TFLU_GetBndVertType.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: get type of boundary vertices, needed to correct global%tofluNedges
26 !
27 ! Description: the 'type' has 6 components which have initial value of zero.
28 ! Component 2, 4, or 6 switches to 1 if the lbound value of the
29 ! patch where the boundary vertex resides matches the component
30 ! number. This way, the points to be corrected for nEdges can
31 ! be distinguished. Only non-connecting patches are processed,
32 ! as the procedure concerns only the global boundary vertices.
33 ! The correction of nEdges itself is performed in subroutine
34 ! CorrectNedges.
35 !
36 ! Input: iReg = region number
37 ! regions = data for all regions
38 !
39 ! Output: global%tofluBType
40 !
41 ! Notes: none.
42 !
43 !******************************************************************************
44 !
45 ! $Id: TFLU_GetBndVertType.F90,v 1.4 2008/12/06 08:44:53 mtcampbe Exp $
46 !
47 ! Copyright: (c) 2001 by the University of Illinois
48 !
49 !******************************************************************************
50 
51 SUBROUTINE getbndverttype( iReg,Regions )
52 
53  USE moddatatypes
54  USE moderror
55  USE moddatastruct, ONLY : t_region
56  USE modglobal, ONLY : t_global
57  USE modgrid, ONLY : t_grid
58  USE modbndpatch, ONLY : t_patch
60  USE modparameters
61  IMPLICIT NONE
62 
63 #include "Indexing.h"
64 
65 ! ... parameters
66  INTEGER :: ireg
67  TYPE(t_region), POINTER :: regions(:)
68 
69 ! ... loop variables
70  INTEGER :: ipatch, i, j, k
71 
72 ! ... local variables
73  TYPE(t_global), POINTER :: global
74  TYPE(t_grid) , POINTER :: grid
75  TYPE(t_patch) , POINTER :: patch
76 
77  INTEGER :: ilev, lbound, bctype
78  INTEGER :: ibeg, iend, jbeg, jend, kbeg, kend
79 
80 !******************************************************************************
81 
82  global => regions(1)%global
83  CALL registerfunction( global,'GetBndVertType',&
84  'TFLU_GetBndVertType.F90' )
85 
86 ! obtain parameters and pointers, and loop over region patches ----------------
87 
88  ilev = regions(ireg)%currLevel
89  grid => regions(ireg)%levels(ilev)%grid
90 
91  DO ipatch=1,regions(ireg)%nPatches
92 
93  patch => regions(ireg)%levels(ilev)%patches(ipatch)
94  lbound = patch%lbound
95  bctype = patch%bcType
96 
97 ! - only at non-connecting patches --------------------------------------------
98 
99  IF (bctype<bc_regionconf .OR. bctype>bc_regionconf+bc_range) THEN
100 
101  CALL rflo_getpatchindicesnodes( regions(ireg),patch,ilev, &
102  ibeg,iend,jbeg,jend,kbeg,kend )
103 
104 ! --- identify the vertices where nEdges needs to be corrected
105 
106  DO k=kbeg,kend
107  DO j=jbeg,jend
108  DO i=ibeg,iend
109 
110  IF (lbound==2) THEN
111  global%tofluBType(2,grid%tofluLoc2g(i,j,k)) = 1
112  ELSEIF (lbound==4) THEN
113  global%tofluBType(4,grid%tofluLoc2g(i,j,k)) = 1
114  ELSEIF (lbound==6) THEN
115  global%tofluBType(6,grid%tofluLoc2g(i,j,k)) = 1
116  ENDIF
117 
118  ENDDO ! i
119  ENDDO ! j
120  ENDDO ! k
121 
122  ENDIF ! bcType
123  ENDDO ! iPatch
124 
125 ! finalize --------------------------------------------------------------------
126 
127  CALL deregisterfunction( global )
128 
129 END SUBROUTINE getbndverttype
130 
131 !******************************************************************************
132 !
133 ! RCS Revision history:
134 !
135 ! $Log: TFLU_GetBndVertType.F90,v $
136 ! Revision 1.4 2008/12/06 08:44:53 mtcampbe
137 ! Updated license.
138 !
139 ! Revision 1.3 2008/11/19 22:18:03 mtcampbe
140 ! Added Illinois Open Source License/Copyright
141 !
142 ! Revision 1.2 2004/12/03 03:43:58 wasistho
143 ! rflo_modinterfacestoflu to tflu_modinterfaces
144 !
145 ! Revision 1.1 2004/12/03 02:59:30 wasistho
146 ! added prefix
147 !
148 ! Revision 1.1 2004/12/03 00:58:20 wasistho
149 ! lower to upper case
150 !
151 ! Revision 1.1 2004/08/18 02:15:12 wasistho
152 ! added new routines to create dimension file
153 !
154 !
155 !******************************************************************************
156 
157 
158 
159 
160 
161 
162 
**********************************************************************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 ibeg
j indices k indices k
Definition: Indexing.h:6
subroutine registerfunction(global, funName, fileName)
Definition: ModError.F90:449
Definition: patch.h:74
**********************************************************************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 knode iend
subroutine rflo_getpatchindicesnodes(region, patch, iLev, ibeg, iend, jbeg, jend, kbeg, kend)
blockLoc i
Definition: read.cpp:79
j indices j
Definition: Indexing.h:6
**********************************************************************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 knode jend
**********************************************************************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 knode jbeg
subroutine grid(bp)
Definition: setup_py.f90:257
**********************************************************************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 knode kbeg
subroutine deregisterfunction(global)
Definition: ModError.F90:469
subroutine getbndverttype(iReg, Regions)