70   CHARACTER(CHRLEN) :: RCSIdentString = & 
 
   71     '$RCSfile: ModStatsRoutines.F90,v $ $Revision: 1.11 $'         
  101   CHARACTER(*) :: versionstring
 
  104   CHARACTER(LEN=2)  :: major, minor, 
patch 
  105   CHARACTER(CHRLEN) :: date
 
  118   WRITE(versionstring,
'(A)') trim(major)//
'.'//trim(minor)//
'.'//trim(
patch)
 
  119   WRITE(versionstring,
'(A)') 
'Version: '//trim(versionstring)
 
  120   WRITE(versionstring,
'(A)') trim(versionstring)//
', Date: '//trim(date)
 
  145   TYPE(t_region
), 
POINTER :: regions(:)
 
  154     TYPE(t_region
), 
POINTER :: pregion
 
  159   global => regions(1)%global
 
  162   'ModStatsRoutines.F90' )
 
  166   IF (global%doStat == active) 
THEN 
  168     DO ireg=1,global%nRegions
 
  169       IF (regions(ireg)%procid==global%myProcid .AND. &   
 
  170           regions(ireg)%active==active) 
THEN               
  173     DO ireg=1,global%nRegionsLocal
 
  177         IF (global%turbNStat>0) 
THEN 
  178           IF ((regions(ireg)%mixtInput%flowModel == flow_navst) .AND. &
 
  179               (regions(ireg)%mixtInput%turbModel /= turb_model_none)) 
THEN 
  185         IF ( global%plagUsed .EQV. .true. ) 
THEN 
  186           pregion => regions(ireg)
 
  189           IF ( global%plagNStat>0 ) & 
 
  242   TYPE(t_region
), 
POINTER :: regions(:)
 
  252   TYPE(t_region
), 
POINTER :: pregion
 
  257   global => regions(1)%global
 
  260   'ModStatsRoutines.F90' )
 
  264   IF (global%flowType == flow_steady)  
THEN 
  272   IF (global%doStat == active) 
THEN 
  276     IF (global%reStat == active) 
THEN 
  278       IF (global%myProcid==masterproc .AND. global%verbLevel/=verbose_none)  &
 
  279         WRITE(stdout,
'(A)') solver_name//
' Restart statistics ...' 
  284       IF ( global%plagUsed .EQV. .true. ) &
 
  289       DO ireg=1,global%nRegionsLocal
 
  297       DO ireg=1,global%nRegionsLocal
 
  298         pregion => regions(ireg)
 
  308       IF (global%myProcid==masterproc .AND. global%verbLevel/=verbose_none)  &
 
  309         WRITE(stdout,
'(A)') solver_name//
' Start new statistics ...' 
  310       global%integrTime = 0._rfreal      
 
  312       DO ireg=1,global%nRegions
 
  313         IF (regions(ireg)%procid==global%myProcid .AND. &   
 
  314             regions(ireg)%active==active) 
THEN               
  315           ilev =  regions(ireg)%currLevel
 
  316           IF (global%mixtNStat > 0) 
THEN 
  317             regions(ireg)%levels(ilev)%mixt%tav = 0._rfreal
 
  320           IF ((regions(ireg)%mixtInput%flowModel == flow_navst) .AND. &
 
  321               (regions(ireg)%mixtInput%turbModel /= turb_model_none) .AND. &
 
  322               (global%turbNStat > 0)) 
THEN 
  323             regions(ireg)%levels(ilev)%turb%tav = 0._rfreal
 
  327           IF ((global%plagUsed .EQV. .true.) .AND. &
 
  328               (global%plagNStat > 0)) 
THEN 
  329             regions(ireg)%levels(ilev)%plag%tav = 0._rfreal
 
  336       DO ireg=1,global%nRegionsLocal
 
  337         IF (global%mixtNStat > 0) 
THEN 
  338           regions(ireg)%mixt%tav =  0._rfreal
 
  341         IF ((regions(ireg)%mixtInput%flowModel == flow_navst) .AND. &
 
  342             (regions(ireg)%mixtInput%turbModel /= turb_model_none) .AND. &
 
  343             (global%turbNStat > 0)) 
THEN 
  344           regions(ireg)%turb%tav =  0._rfreal
 
  348         IF ((global%plagUsed .EQV. .true.) .AND. &
 
  349             (global%plagNStat > 0)) 
THEN 
  350           regions(ireg)%plag%tav = 0._rfreal
 
  398   INTEGER               :: ijkbeg, ijkend, 
id, idtav
 
  399   REAL(RFREAL)          :: dtime
 
  400   REAL(RFREAL), 
POINTER :: var(:,:), qavg(:,:)
 
  408     qavg(idtav,ijk) = qavg(idtav,ijk) + dtime*var(
id,ijk)
 
  416                                   dtime,var1,var2,qavg )
 
  421   INTEGER               :: ijkbeg, ijkend, id1, id2, idtav
 
  422   REAL(RFREAL)          :: dtime
 
  423   REAL(RFREAL), 
POINTER :: var1(:,:), var2(:,:), qavg(:,:)
 
  431     qavg(idtav,ijk) = qavg(idtav,ijk) + dtime*var1(id1,ijk)*var2(id2,ijk)
 
  459 #include "Indexing.h" 
  464   TYPE(t_region
) :: region
 
  471   INTEGER :: ilev, ioff, ijoff
 
  473   INTEGER :: nstat, id1, id2
 
  474   INTEGER, 
POINTER      :: statcode(:,:,:)
 
  476   REAL(RFREAL), 
POINTER :: cv(:,:),dv(:,:),tv(:,:),gv(:,:),ev(:,:),tav(:,:)
 
  477   REAL(RFREAL), 
POINTER :: sv(:,:),st(:,:)
 
  478   REAL(RFREAL), 
POINTER :: var1(:,:),var2(:,:) 
 
  483   'ModStatsRoutines.F90' )
 
  488   ilev = region%currLevel
 
  491   IF (fluidtype == ftype_mixt) 
THEN 
  492     nstat = region%global%mixtNStat
 
  493     statcode => region%global%mixtStatCode
 
  495     cv    => region%levels(ilev)%mixt%cv
 
  496     dv    => region%levels(ilev)%mixt%dv
 
  497     tv    => region%levels(ilev)%mixt%tv
 
  498     gv    => region%levels(ilev)%mixt%gv
 
  499     tav   => region%levels(ilev)%mixt%tav
 
  506     tav   => region%mixt%tav
 
  508   ELSEIF (fluidtype == ftype_turb) 
THEN 
  510     nstat = region%global%turbNStat
 
  511     statcode => region%global%turbStatCode
 
  513     tv    => region%levels(ilev)%mixt%tv
 
  514     dv    => region%levels(ilev)%turb%dv
 
  515     sv    => region%levels(ilev)%turb%sv
 
  516     st    => region%levels(ilev)%turb%st
 
  517     tav   => region%levels(ilev)%turb%tav
 
  524     tav   => region%turb%tav
 
  527   ELSEIF (fluidtype == ftype_plag) 
THEN 
  529     nstat = region%global%plagNStat
 
  530     statcode => region%global%plagStatCode
 
  532     ev    => region%levels(ilev)%plag%ev
 
  533     tav   => region%levels(ilev)%plag%tav
 
  537     tav   => region%plag%tav
 
  540   ELSEIF (fluidtype == ftype_peul) 
THEN 
  542     nstat = region%global%peulNStat
 
  543     statcode => region%global%peulStatCode
 
  566   ijkend = region%grid%nCells
 
  574     IF ((statcode(1,1,l)==stat_none).AND.(statcode(2,1,l)==stat_none)) &
 
  577     IF (statcode(1,1,l)==stat_cv) 
THEN 
  579     ELSEIF (statcode(1,1,l)==stat_dv) 
THEN 
  581     ELSEIF (statcode(1,1,l)==stat_tv) 
THEN 
  583     ELSEIF (statcode(1,1,l)==stat_gv) 
THEN 
  585     ELSEIF (statcode(1,1,l)==stat_sv) 
THEN 
  587     ELSEIF (statcode(1,1,l)==stat_st) 
THEN 
  589     ELSEIF (statcode(1,1,l)==stat_plagev) 
THEN 
  593     IF (statcode(2,1,l)==stat_cv) 
THEN 
  595     ELSEIF (statcode(2,1,l)==stat_dv) 
THEN 
  597     ELSEIF (statcode(2,1,l)==stat_tv) 
THEN 
  599     ELSEIF (statcode(2,1,l)==stat_gv) 
THEN 
  601     ELSEIF (statcode(2,1,l)==stat_sv) 
THEN 
  603     ELSEIF (statcode(2,1,l)==stat_st) 
THEN 
  605     ELSEIF (statcode(2,1,l)==stat_plagev) 
THEN 
  609     id1 = statcode(1,2,l)
 
  610     id2 = statcode(2,2,l)
 
  612     IF (statcode(1,1,l)==stat_none) 
THEN 
  614                                   region%global%dtMin,var2,tav )
 
  615     ELSEIF (statcode(2,1,l)==stat_none) 
THEN 
  617                                   region%global%dtMin,var1,tav )
 
  620                                   region%global%dtMin,var1,var2,tav )
 
  674   CHARACTER(CHRLEN), 
POINTER :: statname(:,:,:)
 
  677   INTEGER, 
POINTER  :: statid(:,:), statcode(:,:,:)
 
  682   'ModStatsRoutines.F90' )
 
  686   IF (global%mixtNStat <= 0) goto 111
 
  688   ALLOCATE( global%mixtStatCode(2,2,global%mixtNStat),stat=errorflag )
 
  689   global%error = errorflag
 
  690   IF (global%error /= 0) CALL 
errorstop( global,err_allocate,__line__ )
 
  692   statid   => global%mixtStatId
 
  693   statcode => global%mixtStatCode
 
  696   ALLOCATE( global%mixtStatNm(2,2,global%mixtNStat),stat=errorflag )
 
  697   global%error = errorflag
 
  698   IF (global%error /= 0) CALL 
errorstop( global,err_allocate,__line__ )
 
  700   statname => global%mixtStatNm
 
  705   DO l=1,global%mixtNStat
 
  707       IF (statid(
n,l)==0) 
THEN  
  708         statcode(
n,:,l) = stat_none
 
  709       ELSE IF (statid(
n,l)==1) 
THEN  
  710         statcode(
n,1,l) = stat_cv
 
  711         statcode(
n,2,l) = cv_mixt_dens
 
  713         statname(
n,1,l) = 
'rho' 
  714         statname(
n,2,l) = 
'kg/m^3' 
  716       ELSE IF (statid(
n,l)==2) 
THEN  
  718         statcode(
n,1,l) = stat_dv
 
  719         statcode(
n,2,l) = dv_mixt_uvel
 
  722         statcode(
n,1,l) = stat_cv
 
  723         statcode(
n,2,l) = cv_mixt_xvel
 
  726         statname(
n,1,l) = 
'u' 
  727         statname(
n,2,l) = 
'm/s' 
  729       ELSE IF (statid(
n,l)==3) 
THEN  
  731         statcode(
n,1,l) = stat_dv
 
  732         statcode(
n,2,l) = dv_mixt_vvel
 
  735         statcode(
n,1,l) = stat_cv 
 
  736         statcode(
n,2,l) = cv_mixt_yvel 
 
  739         statname(
n,1,l) = 
'v' 
  740         statname(
n,2,l) = 
'm/s' 
  742       ELSE IF (statid(
n,l)==4) 
THEN  
  744         statcode(
n,1,l) = stat_dv
 
  745         statcode(
n,2,l) = dv_mixt_wvel
 
  748         statcode(
n,1,l) = stat_cv 
 
  749         statcode(
n,2,l) = cv_mixt_zvel 
 
  752         statname(
n,1,l) = 
'w' 
  753         statname(
n,2,l) = 
'm/s' 
  755       ELSE IF (statid(
n,l)==5) 
THEN  
  756         statcode(
n,1,l) = stat_dv
 
  757         statcode(
n,2,l) = dv_mixt_temp
 
  759         statname(
n,1,l) = 
'T' 
  760         statname(
n,2,l) = 
'K' 
  762       ELSE IF (statid(
n,l)==6) 
THEN  
  763         statcode(
n,1,l) = stat_dv
 
  764         statcode(
n,2,l) = dv_mixt_pres
 
  766         statname(
n,1,l) = 
'p' 
  767         statname(
n,2,l) = 
'N/m^2' 
  769       ELSE IF (statid(
n,l)==7) 
THEN  
  770         statcode(
n,1,l) = stat_dv
 
  771         statcode(
n,2,l) = dv_mixt_soun
 
  773         statname(
n,1,l) = 
'c' 
  774         statname(
n,2,l) = 
'm/s' 
  776       ELSE IF (statid(
n,l)==8) 
THEN  
  777         statcode(
n,1,l) = stat_tv
 
  778         statcode(
n,2,l) = tv_mixt_muel
 
  780         statname(
n,1,l) = 
'mul' 
  781         statname(
n,2,l) = 
'kg/ms' 
  783       ELSE IF (statid(
n,l)==9) 
THEN  
  784         statcode(
n,1,l) = stat_tv
 
  785         statcode(
n,2,l) = tv_mixt_tcol
 
  787         statname(
n,1,l) = 
'tcol' 
  788         statname(
n,2,l) = 
'kg m/Ks^3' 
  791         CALL 
errorstop( global,err_stats_indexing,__line__, &
 
  792                         'mixture index out of range.' ) 
 
  808   IF (global%turbNStat <= 0) goto 222
 
  820   IF (global%plagNStat <= 0) goto 333
 
  832   IF (global%peulNStat <= 0) goto 444
 
  845   IF (global%infloNijk < nijk_inflow_init) 
THEN 
  846     DO l=1,global%mixtNStat
 
  847       IF (statid(1,l)==0) 
THEN  
  848         IF (statid(2,l) /= l) 
THEN 
  849           CALL 
errorstop( global,err_stats_indexing,__line__, &
 
  850               'For recycturb inflow, set stats Id 01-06 in the given order.' ) 
 
  891   'ModStatsRoutines.F90' )
 
  895   global%integrTime = global%integrTime + global%dtMin
 
  942 #include "Indexing.h" 
  946   TYPE(t_region
), 
POINTER :: regions(:)
 
  956   global => regions(1)%global
 
  959   'ModStatsRoutines.F90' )
 
**********************************************************************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
 
subroutine, public statbuildversionstring(versionString)
 
subroutine, public plag_rflo_commstatbuffwrapper(regions)
 
subroutine, public stattimeaccumulation(global)
 
subroutine, public plag_calceulerianfield(pRegion)
 
subroutine, public initstatistics(regions)
 
subroutine genxstatnaming(global, fluidType)
 
subroutine registerfunction(global, funName, fileName)
 
subroutine, public statdataaccumulation1(ijkbeg, ijkend, id, idtav, dTime, var, qavg)
 
subroutine rflo_writestat(regions)
 
subroutine, public statdatasampling(region, fluidType)
 
subroutine plag_statmapping(global)
 
subroutine, public rflo_statboundaryconditionsset(regions)
 
subroutine, public stat_rflu_genxgetdata(pRegion)
 
subroutine rflo_readstat(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 kdcbeg
 
subroutine, public getstatistics(regions)
 
subroutine, public statmapping(global)
 
subroutine rflo_getcelloffset(region, iLev, iCellOffset, ijCellOffset)
 
subroutine, public statwritemp(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 idcbeg
 
subroutine rflu_readstat(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 jdcend
 
unsigned long id(const Leda_like_handle &x)
 
**********************************************************************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 errorstop(global, errorCode, errorLine, addMessage)
 
subroutine, public plag_rflo_readstat(regions)
 
subroutine, public statdataaccumulation2(ijkbeg, ijkend, id1, id2, idtav, dTime, var1, var2, qavg)
 
subroutine, public plag_rflo_writestat(regions)
 
subroutine deregisterfunction(global)
 
subroutine turb_statmapping(global)