79 CHARACTER(CHRLEN) :: casename, verbosity,
msg, versionstring, headerstring
81 INTEGER :: ipc, jpc, kpc, ibc, iec, ibn, ien, mixtnstattec, turbnstattec
85 INTEGER :: icoff, ijcoff, inoff, ijnoff
86 INTEGER :: margin, versionwidth, errorflag
87 INTEGER,
PARAMETER :: headerwidth = 53
90 TYPE(t_region
),
POINTER :: regions(:)
92 TYPE(t_mixt) ,
POINTER :: mixt
94 TYPE(t_turb) ,
POINTER :: turb
97 LOGICAL :: statsactive
110 global%verbLevel = verbose_none
112 global%flowType = flow_steady
113 global%currentTime = -1._rfreal
114 global%currentIter = -1
119 global%nProcAlloc = 1
120 global%myProcid = masterproc
121 global%mpierr = err_none
122 global%error = err_none
124 global%pi = 4._rfreal*atan(1._rfreal)
125 global%rad = global%pi/180._rfreal
130 CALL mpi_init( global%mpierr )
131 IF (global%mpierr /=0 ) CALL
errorstop( global,err_mpi_trouble,__line__ )
137 versionwidth = len_trim(versionstring)
138 margin = (headerwidth-versionwidth)/2
139 headerstring(margin+1:margin+versionwidth) = versionstring(1:versionwidth)
140 headerstring(1:1) =
'*'
141 headerstring(headerwidth:headerwidth) =
'*'
143 WRITE(stdout,
'(/,A)') solver_name//
' *****************************************************'
144 WRITE(stdout,
'(A)') solver_name//
' * *'
145 WRITE(stdout,
'(A)') solver_name//
' * ROCFLO-MP: Solution Postprocessing *'
146 WRITE(stdout,
'(A)') solver_name//
' * ================================== *'
147 WRITE(stdout,
'(A)') solver_name//
' * *'
148 WRITE(stdout,
'(A)') solver_name//
' '//trim(headerstring)
149 WRITE(stdout,
'(A)') solver_name//
' * Copyright (c) by the University of Illinois *'
150 WRITE(stdout,
'(A)') solver_name//
' * *'
151 WRITE(stdout,
'(A,/)') solver_name//
' *****************************************************'
155 WRITE(stdout,
'(/,A,/,A,/,18(A,/))') &
156 solver_name//
' Required Rocflo-Post input:', &
158 solver_name//
' <casename> => command line input', &
159 solver_name//
' <verbosity> => command line input', &
160 solver_name//
' grid level => .inp file: # MULTIGRID: START', &
161 solver_name//
' unsteadiness => .inp file: # TIMESTEP: FLOWTYPE', &
162 solver_name//
' turbulence => .inp file: # TURBULENCE: TURBMODEL', &
163 solver_name//
' => .inp file: # TURBULENCE: OUTPUTNUMBER', &
164 solver_name//
' gas properties => .inp file: # REFERENCE', &
165 solver_name//
' => .inp file: # VISCMODEL', &
166 solver_name//
' => .inp file: # MATERIAL (if MP is active)', &
167 solver_name//
' plot type => .inp file: # POST: PLTTYPE', &
168 solver_name//
' time (unsteady) => .inp file: # POST: TIME', &
169 solver_name//
' iteration (steady) => .inp file: # POST: ITER', &
170 solver_name//
' output plot format => .inp file: # POST: OUTFORMAT', &
171 solver_name//
' include statistics => .inp file: # POST: STATSFLAG', &
172 solver_name//
' include turbulence => .inp file: # POST: TURBFLAG', &
173 solver_name//
' include particles => .inp file: # POST: PLAGFLAG', &
174 solver_name//
' include radiation => .inp file: # POST: RADIFLAG', &
175 solver_name//
' include species => .inp file: # POST: SPECFLAG'
177 CALL getarg(1,casename)
178 CALL getarg(2,verbosity)
180 IF (len_trim(casename)==0 .OR. &
181 len_trim(verbosity)==0)
THEN
182 WRITE(stdout,
'(/,A,/)') &
183 solver_name//
' Usage: rflopost <casename> <verbosity>'
185 CALL mpi_finalize( global%mpierr )
190 READ(casename ,*) global%casename
191 READ(verbosity,*) global%verbLevel
195 WRITE(stdout,
'(/,A)') solver_name//
' Reading region topology ...'
201 WRITE(stdout,
'(/,A)') solver_name//
' Reading user input ...'
208 global%currentTime = global%postTime
209 global%timeStamp = global%postTime
210 global%currentIter = global%postIter
214 DO ireg=1,global%nRegions
215 regions(ireg)%startLevel = global%startLevel
216 regions(ireg)%currLevel = global%startLevel
217 IF (regions(ireg)%nGridLevels < regions(ireg)%currLevel)
THEN
218 WRITE(
msg,1000) solver_name,ireg,global%startLevel
221 DO ilev=2,regions(ireg)%nGridLevels
222 ipc = regions(ireg)%levels(ilev-1)%grid%ipc
223 jpc = regions(ireg)%levels(ilev-1)%grid%jpc
224 kpc = regions(ireg)%levels(ilev-1)%grid%kpc
225 regions(ireg)%levels(ilev)%grid%ipc = ipc/2
226 regions(ireg)%levels(ilev)%grid%jpc = jpc/2
227 regions(ireg)%levels(ilev)%grid%kpc = kpc/2
240 statsactive = (global%postStatsFlag .AND. &
241 (global%flowType == flow_unsteady) .AND. &
242 (global%doStat == active))
248 IF (global%postOutFmt == plot_fmt_tecplot)
THEN
249 WRITE(stdout,
'(/,A,/)') solver_name// &
250 ' Sorry, not linked to TECPLOT library.'
252 CALL mpi_finalize( global%mpierr )
260 IF (global%postPlotType == plot_grid_only)
THEN
261 WRITE(stdout,
'(A)') solver_name// &
262 ' Reading grid and writing plot file ...'
264 WRITE(stdout,
'(A)') solver_name// &
265 ' Reading grid+solution and writing plot file ...'
268 DO ireg=1,global%nRegions
272 DO ilev=1,regions(ireg)%nGridLevels
278 grid => regions(ireg)%levels(ilev)%grid
279 ALLOCATE(
grid%xyz(3,ibn:ien),stat=errorflag )
280 global%error = errorflag
281 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
286 ilev = regions(ireg)%currLevel
287 grid => regions(ireg)%levels(ilev)%grid
288 mixt => regions(ireg)%levels(ilev)%mixt
302 IF (regions(ireg)%mixtInput%moveGrid)
THEN
303 ALLOCATE(
grid%siVel(ibn:ien),stat=errorflag )
304 ALLOCATE(
grid%sjVel(ibn:ien),stat=errorflag )
305 ALLOCATE(
grid%skVel(ibn:ien),stat=errorflag )
307 global%error = errorflag
308 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
310 IF (global%postPlotType == plot_grid_flow)
THEN
311 ALLOCATE( mixt%cv(5,ibc:iec) ,stat=errorflag )
312 ALLOCATE( mixt%dv(mixt%nDv,ibc:iec),stat=errorflag )
313 IF (regions(ireg)%mixtInput%computeTv)
THEN
314 ALLOCATE( mixt%tv(mixt%nTv,ibc:iec),stat=errorflag )
316 IF (regions(ireg)%mixtInput%gasModel == gas_model_tcperf)
THEN
317 ALLOCATE( mixt%gv(mixt%nGv,0:1),stat=errorflag )
319 ALLOCATE( mixt%gv(mixt%nGv,ibc:iec),stat=errorflag )
322 IF (global%postTurbFlag .AND. &
323 regions(ireg)%mixtInput%turbModel /= turb_model_none)
THEN
324 turb => regions(ireg)%levels(ilev)%turb
325 IF (regions(ireg)%turbInput%nOutField > 1)
THEN
326 ALLOCATE( turb%vort(xcoord:zcoord,ibc:iec),stat=errorflag )
328 IF (regions(ireg)%turbInput%modelClass == model_rans)
THEN
329 ALLOCATE( turb%cv(regions(ireg)%turbInput%nCv,ibc:iec),stat=errorflag )
330 ALLOCATE( turb%lens(ibc:iec),stat=errorflag )
335 IF (statsactive)
THEN
336 IF (global%mixtNStat > 0)
THEN
337 IF (global%mixtNStat < nstats_tec_mixt) &
338 CALL
errorstop( global,err_stats_tecplot,__line__, &
339 'mixtNStat < NSTATS_TEC_MIXT' )
340 ALLOCATE( mixt%tav(global%mixtNStat,ibc:iec),stat=errorflag )
343 IF (global%turbNStat > 0)
THEN
344 IF (global%turbNStat < nstats_tec_turb) &
345 CALL
errorstop( global,err_stats_tecplot,__line__, &
346 'turbNStat < NSTATS_TEC_TURB' )
347 IF (global%mixtNStat <=0) &
348 CALL
errorstop( global,err_stats_tecplot,__line__, &
349 'Tecplot expect mixtNStat>0 if turbNStat>0' )
350 ALLOCATE( turb%tav(global%turbNStat,ibc:iec),stat=errorflag )
355 global%error = errorflag
356 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
367 IF (global%postPlotType == plot_grid_flow)
THEN
371 IF (global%postTurbFlag .AND. &
372 regions(ireg)%mixtInput%turbModel /= turb_model_none)
THEN
373 IF (regions(ireg)%turbInput%modelClass == model_les)
THEN
375 ELSEIF ((regions(ireg)%mixtInput%turbModel == turb_model_sa) .OR. &
376 (regions(ireg)%mixtInput%turbModel == turb_model_dessa))
THEN
384 IF (statsactive)
THEN
385 IF (global%mixtNStat > 0 .OR. global%turbNStat > 0) &
393 IF (global%verbLevel >= verbose_low) CALL
printpostinput( regions(ireg) )
394 IF (global%verbLevel == verbose_low)
WRITE(stdout,
'(A,I5.5)') &
395 solver_name//
' - region ',ireg
399 IF (global%postOutFmt == plot_fmt_generic)
THEN
405 ELSE IF (global%postOutFmt == plot_fmt_tecplot)
THEN
413 ELSE IF (global%postOutFmt == plot_fmt_tecascii)
THEN
423 DO ilev=1,regions(ireg)%nGridLevels
424 grid => regions(ireg)%levels(ilev)%grid
425 DEALLOCATE(
grid%xyz,stat=errorflag )
426 global%error = errorflag
427 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
430 ilev = regions(ireg)%currLevel
431 IF (regions(ireg)%mixtInput%moveGrid)
THEN
432 grid => regions(ireg)%levels(ilev)%grid
433 DEALLOCATE(
grid%siVel,stat=errorflag )
434 DEALLOCATE(
grid%sjVel,stat=errorflag )
435 DEALLOCATE(
grid%skVel,stat=errorflag )
437 IF (global%postPlotType == plot_grid_flow)
THEN
438 DEALLOCATE( mixt%cv ,stat=errorflag )
439 DEALLOCATE( mixt%dv ,stat=errorflag )
440 DEALLOCATE( mixt%tv ,stat=errorflag )
441 DEALLOCATE( mixt%gv ,stat=errorflag )
443 global%error = errorflag
444 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
447 IF (global%postTurbFlag .AND. &
448 regions(ireg)%mixtInput%turbModel /= turb_model_none)
THEN
450 IF (
ASSOCIATED(turb%vort))
DEALLOCATE( turb%vort,stat=errorflag )
451 IF (
ASSOCIATED(turb%cv))
DEALLOCATE( turb%cv ,stat=errorflag )
452 IF (
ASSOCIATED(turb%lens))
DEALLOCATE( turb%lens,stat=errorflag )
457 IF (statsactive)
THEN
458 IF (
ASSOCIATED( mixt%tav ))
DEALLOCATE( mixt%tav,stat=errorflag )
460 IF (
ASSOCIATED( turb%tav ))
DEALLOCATE( turb%tav,stat=errorflag )
471 WRITE(stdout,
'(/,A)') solver_name//
' Finished.'
474 CALL mpi_finalize( global%mpierr )
477 1000
FORMAT(
a,
' Region ',i5,
', grid level= ',i2,
'.')
subroutine rflo_copygeometrydummy(region)
subroutine writetecplotbinary(iReg, region)
**********************************************************************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 idcend
**********************************************************************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 jpnbeg
subroutine turb_rflo_readsolutionregion(iReg, regions)
**********************************************************************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 kpnbeg
subroutine registerfunction(global, funName, fileName)
subroutine rflo_readsolutionregion(iReg, regions)
**********************************************************************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
subroutine writegeneric(iReg, region)
**********************************************************************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 jpnend
**********************************************************************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
subroutine rflo_getnodeoffset(region, iLev, iNodeOffset, ijNodeOffset)
**********************************************************************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_readgridregion(iReg, regions)
subroutine rflo_getdimensdummy(region, iLev, idcbeg, idcend, jdcbeg, jdcend, kdcbeg, kdcend)
**********************************************************************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 buildversionstring(versionString)
**********************************************************************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 kdcbeg
subroutine writetecplotascii(iReg, region)
subroutine turb_ranssageteddyvis(region)
subroutine rflo_generatecoarsegrids(region)
**********************************************************************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 ipnbeg
subroutine rflo_getcelloffset(region, iLev, iCellOffset, ijCellOffset)
**********************************************************************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 idcbeg
**********************************************************************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 jdcend
subroutine rflo_getdimensphysnodes(region, iLev, ipnbeg, ipnend, jpnbeg, jpnend, kpnbeg, kpnend)
**********************************************************************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 jdcbeg
subroutine rflo_getdimensdummynodes(region, iLev, idnbeg, idnend, jdnbeg, jdnend, kdnbeg, kdnend)
subroutine rflo_readregiontopology(global, regions)
subroutine errorstop(global, errorCode, errorLine, addMessage)
subroutine printpostinput(region)
subroutine mixtureproperties(region, inBeg, inEnd, gasUpdate)
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 ipnend
**********************************************************************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
subroutine rflo_readstatregion(iReg, regions)