57 TYPE(t_region
),
POINTER :: regions(:)
60 INTEGER :: ireg, ilev, iedge,
icorner,
i,
j,
k, ijk, nt
70 TYPE(t_level
),
POINTER :: level
74 global => regions(1)%global
77 'RFLO_FindSourceRegions.F90' )
81 global%degenrtEc = .false.
83 DO ireg=1,global%nRegions
84 DO ilev=1,regions(ireg)%nGridLevels
86 level => regions(ireg)%levels(ilev)
100 ALLOCATE( level%edgeCells(iedge)%cells(ijk),stat=errorflag )
101 global%error = errorflag
102 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
104 level%edgeCells(iedge)%interact = .false.
105 level%edgeCells(iedge)%degenrt = degenerat_none
106 level%edgeCells(iedge)%interType= edge_interact_full
126 level%edgeCells(iedge)%interact = .true.
127 level%edgeCells(iedge)%cells(ijk)%srcCell =
icell
128 level%edgeCells(iedge)%cells(ijk)%srcRegion = iregsrc
129 level%edgeCells(iedge)%cells(ijk)%rotate =
rotate
131 level%edgeCells(iedge)%interType = edge_interact_part
132 level%edgeCells(iedge)%cells(ijk)%srcCell = -999999
133 level%edgeCells(iedge)%cells(ijk)%srcRegion = -999999
134 level%edgeCells(iedge)%cells(ijk)%rotate = .false.
140 level%edgeCells(iedge)%degenrt == degenerat_none)
THEN
144 IF (level%edgeCells(iedge)%degenrt == degenerat_none)
THEN
155 IF (found .AND. (iregsrc/= &
156 level%edgeCells(iedge)%cells(ijk)%srcRegion .OR. &
158 level%edgeCells(iedge)%cells(ijk)%srcCell))
THEN
159 level%edgeCells(iedge)%degenrt = degenerat_detach
170 IF (.NOT. level%edgeCells(iedge)%interact)
THEN
171 DEALLOCATE( level%edgeCells(iedge)%cells )
184 ALLOCATE( level%cornerCells(
icorner)%cells(ijk),stat=errorflag )
185 global%error = errorflag
186 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
188 level%cornerCells(
icorner)%interact = .false.
189 level%cornerCells(
icorner)%degenrt = degenerat_none
209 level%cornerCells(
icorner)%interact = .true.
211 level%cornerCells(
icorner)%cells(ijk)%srcRegion = iregsrc
214 level%cornerCells(
icorner)%cells(ijk)%srcCell = -999999
215 level%cornerCells(
icorner)%cells(ijk)%srcRegion = -999999
216 level%cornerCells(
icorner)%cells(ijk)%rotate = .false.
222 level%cornerCells(
icorner)%degenrt == degenerat_none)
THEN
226 IF (level%cornerCells(
icorner)%degenrt == degenerat_none)
THEN
237 IF (found .AND. (iregsrc/= &
238 level%cornerCells(
icorner)%cells(ijk)%srcRegion .OR. &
240 level%cornerCells(
icorner)%cells(ijk)%srcCell))
THEN
241 level%cornerCells(
icorner)%degenrt = degenerat_detach
252 IF (.NOT. level%cornerCells(
icorner)%interact)
THEN
253 DEALLOCATE( level%cornerCells(
icorner)%cells )
262 IF (global%nProcAlloc > 1)
THEN
264 DO ireg=1,global%nRegions
265 IF (regions(ireg)%procid == global%myProcid)
THEN
266 DO ilev=1,regions(ireg)%nGridLevels
268 level => regions(ireg)%levels(ilev)
270 ALLOCATE( level%sendEcCells(global%nRegions),stat=errorflag )
271 ALLOCATE( level%recvEcCells(global%nRegions),stat=errorflag )
272 global%error = errorflag
273 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
275 level%sendEcCells(:)%nCells = 0
276 level%recvEcCells(:)%nCells = 0
279 IF (level%edgeCells(iedge)%interact)
THEN
280 DO ijk=1,ubound(level%edgeCells(iedge)%cells,1)
281 iregsrc = level%edgeCells(iedge)%cells(ijk)%srcRegion
282 IF (iregsrc > 0)
THEN
283 IF (regions(iregsrc)%procid /= global%myProcid) &
284 level%recvEcCells(iregsrc)%nCells = &
285 level%recvEcCells(iregsrc)%nCells + 1
291 IF (level%cornerCells(
icorner)%interact)
THEN
292 DO ijk=1,ubound(level%cornerCells(
icorner)%cells,1)
293 iregsrc = level%cornerCells(
icorner)%cells(ijk)%srcRegion
294 IF (iregsrc > 0)
THEN
295 IF (regions(iregsrc)%procid /= global%myProcid) &
296 level%recvEcCells(iregsrc)%nCells = &
297 level%recvEcCells(iregsrc)%nCells + 1
309 DO ireg=1,global%nRegions
310 IF (regions(ireg)%procid /= global%myProcid)
THEN
311 DO ilev=1,regions(ireg)%nGridLevels
313 level => regions(ireg)%levels(ilev)
316 IF (level%edgeCells(iedge)%interact)
THEN
317 DO ijk=1,ubound(level%edgeCells(iedge)%cells,1)
318 iregsrc = level%edgeCells(iedge)%cells(ijk)%srcRegion
319 IF (iregsrc > 0)
THEN
320 IF (regions(iregsrc)%procid == global%myProcid) &
321 regions(iregsrc)%levels(ilev)%sendEcCells(ireg)%nCells = &
322 regions(iregsrc)%levels(ilev)%sendEcCells(ireg)%nCells + 1
328 IF (level%cornerCells(
icorner)%interact)
THEN
329 DO ijk=1,ubound(level%cornerCells(
icorner)%cells,1)
330 iregsrc = level%cornerCells(
icorner)%cells(ijk)%srcRegion
331 IF (iregsrc > 0)
THEN
332 IF (regions(iregsrc)%procid == global%myProcid) &
333 regions(iregsrc)%levels(ilev)%sendEcCells(ireg)%nCells = &
334 regions(iregsrc)%levels(ilev)%sendEcCells(ireg)%nCells + 1
subroutine rflo_getedgecellsindices(region, iLev, iedge, iebeg, ieend, jebeg, jeend, kebeg, keend)
**********************************************************************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
**********************************************************************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 kc
**********************************************************************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 kpcbeg
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 ic
**********************************************************************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 jpcbeg
**********************************************************************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 ipcend
subroutine rflo_findsourcecellinvert(regions, iReg, iLev, ic, jc, kc, icell, found, rotate, iRegSrc)
**********************************************************************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
**********************************************************************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 ipcbeg
subroutine, public rflo_finddegeneratcell(regions, handleCorn, icount, iReg, iLev, iRegTest, icellTest, iTest, jTest, kTest)
**********************************************************************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 icorner
subroutine rflo_findsourceregions(regions)
subroutine rflo_getcornercellsindices(region, iLev, icorner, icbeg, icend, jcbeg, jcend, kcbeg, kcend)
**********************************************************************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 icell
**********************************************************************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 jpcend
**********************************************************************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
subroutine rflo_findsourcecell(regions, iReg, iLev, ic, jc, kc, icell, found, rotate, iRegSrc)
subroutine errorstop(global, errorCode, errorLine, addMessage)
**********************************************************************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
**********************************************************************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)
subroutine rflo_getdimensphys(region, iLev, ipcbeg, ipcend, jpcbeg, jpcend, kpcbeg, kpcend)
CImg< T > & rotate(const float angle, const unsigned int border_conditions=3, const unsigned int interpolation=1)
Rotate an image.
**********************************************************************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 jc