56 PUBLIC :: peri_rflo_readmean, &
64 CHARACTER(CHRLEN) :: RCSIdentString = &
65 '$RCSfile: PERI_ModHybridDES.F90,v $ $ $'
92 SUBROUTINE peri_rflo_readmean( regions )
100 TYPE(t_region
),
POINTER :: regions(:)
103 INTEGER :: iReg, i, j, k, n
106 CHARACTER(2*CHRLEN+17) :: fname
107 CHARACTER(CHRLEN) :: msg
110 INTEGER :: status(MPI_STATUS_SIZE)
112 INTEGER :: iLev, iRegFile, ipc, jpc, kpc, nDumCells, iOff, ijOff, ijk
113 INTEGER :: idcbeg, jdcbeg, kdcbeg, idcend, jdcend, kdcend
114 INTEGER :: nDimC, nRvar, intvar(8), errorFlag
115 INTEGER,
ALLOCATABLE :: ivar(:,:)
118 REAL(RFREAL),
POINTER :: cvMean(:,:)
119 REAL(RFREAL),
ALLOCATABLE :: rvar(:,:), cvFile(:,:)
126 global => regions(1)%global
129 'PERI_ModHybridDES.F90' )
136 DO ireg=1,global%nRegions
137 IF (regions(ireg)%periInput%flowKind /= peri_flow_none) doread = .true.
138 IF ((doread .EQV. .true.) .AND. &
139 (regions(ireg)%mixtInput%turbModel == turb_model_hdessa))
THEN
146 IF (doread .EQV. .false.) goto 999
151 ALLOCATE( ivar(5,1),stat=errorflag )
152 ALLOCATE( rvar(nrvar,1),stat=errorflag )
153 global%error = errorflag
154 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
158 IF (global%myProcid == masterproc)
THEN
160 IF (global%solutFormat == format_ascii)
THEN
161 WRITE(fname,
'(A,1PE11.5)') trim(global%inDir)//trim(global%casename)//
'.msola'
162 OPEN(if_solut,file=fname,
form=
'formatted',status=
'old',iostat=errorflag)
163 ELSE IF (global%solutFormat == format_binary)
THEN
164 WRITE(fname,
'(A,1PE11.5)') trim(global%inDir)//trim(global%casename)//
'.msolb'
165 OPEN(if_solut,file=fname,
form=
'unformatted',status=
'old',iostat=errorflag)
167 CALL
errorstop( global,err_unknown_format,__line__ )
170 global%error = errorflag
171 IF (global%error /= 0) &
172 CALL
errorstop( global,err_file_open,__line__,
'File: '//trim(fname) )
178 IF (global%myProcid == masterproc)
THEN
184 DO ireg=1,global%nRegions
185 ilev = regions(ireg)%currLevel
189 IF (global%myProcid == masterproc)
THEN
195 ndumcells = ivar(5,1)
200 idcend = ipc+ndumcells
202 jdcend = jpc+ndumcells
204 kdcend = kpc+ndumcells
205 ndimc = (idcend-idcbeg+1)*(jdcend-jdcbeg+1)*(kdcend-kdcbeg+1)
207 IF (iregfile /= ireg) &
208 CALL
errorstop( global,err_region_number,__line__,
'File: '//trim(fname) )
209 IF ((ipc /= regions(ireg)%levels(ilev)%grid%ipc) .OR. &
210 (jpc /= regions(ireg)%levels(ilev)%grid%jpc))
THEN
211 WRITE(msg,1005) ireg,ipc,jpc
212 CALL
errorstop( global,err_grid_dimensions,__line__,msg )
214 IF (ndumcells /= regions(ireg)%nDumCells)
THEN
215 WRITE(msg,1010) ireg,ndumcells,regions(ireg)%nDumCells
216 CALL
errorstop( global,err_grid_dumcells,__line__,msg )
222 IF (global%myProcid == masterproc)
THEN
224 ALLOCATE( cvfile(cv_mixt_neqs,ndimc),stat=errorflag )
225 global%error = errorflag
226 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
229 cv_mixt_neqs,ndimc,cvfile )
232 IF (regions(ireg)%procid /= masterproc)
THEN
240 intvar(8) = ndumcells
241 CALL mpi_send( intvar,8,mpi_integer,regions(ireg)%procid, &
242 global%nRegions+ireg,global%mpiComm,global%mpierr )
243 IF (global%mpierr /=0 ) CALL
errorstop( global,err_mpi_trouble,__line__ )
245 CALL mpi_send( cvfile,cv_mixt_neqs*ndimc,mpi_rfreal, &
246 regions(ireg)%procid,ireg, &
247 global%mpiComm,global%mpierr )
248 IF (global%mpierr /=0 ) CALL
errorstop( global,err_mpi_trouble,__line__ )
254 IF (regions(ireg)%procid == global%myProcid)
THEN
256 CALL mpi_recv( intvar,8,mpi_integer,masterproc,global%nRegions+ireg, &
257 global%mpiComm,status,global%mpierr )
258 IF (global%mpierr /=0 ) CALL
errorstop( global,err_mpi_trouble,__line__ )
266 ndumcells = intvar(8)
268 ALLOCATE( cvfile(cv_mixt_neqs,ndimc),stat=errorflag )
269 global%error = errorflag
270 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
272 CALL mpi_recv( cvfile,cv_mixt_neqs*ndimc,mpi_rfreal,masterproc,ireg, &
273 global%mpiComm,status,global%mpierr )
274 IF (global%mpierr /=0 ) CALL
errorstop( global,err_mpi_trouble,__line__ )
282 IF (regions(ireg)%procid == global%myProcid)
THEN
283 cvmean => regions(ireg)%levels(ilev)%peri%cvMean
285 ioff = idcend-idcbeg+1
286 ijoff = ioff*(jdcend-jdcbeg+1)
288 rnik = 1._rfreal/
REAL((idcend-idcbeg+1-2*ndumCells)* &
289 (kdcend-kdcbeg+1-2*ndumCells))
290 DO k=kdcbeg+ndumcells,kdcend-ndumcells
292 DO i=idcbeg+ndumcells,idcend-ndumcells
294 ijk = indijk(i,j,k,ioff,ijoff)- &
295 indijk(idcbeg,jdcbeg,kdcbeg,ioff,ijoff) + 1
296 cvmean(j,cv_mixt_dens) = cvmean(j,cv_mixt_dens)+cvfile(1,ijk)
297 cvmean(j,cv_mixt_xmom) = cvmean(j,cv_mixt_xmom)+cvfile(2,ijk)
298 cvmean(j,cv_mixt_ymom) = cvmean(j,cv_mixt_ymom)+cvfile(3,ijk)
299 cvmean(j,cv_mixt_zmom) = cvmean(j,cv_mixt_zmom)+cvfile(4,ijk)
300 cvmean(j,cv_mixt_ener) = cvmean(j,cv_mixt_ener)+cvfile(5,ijk)
305 cvmean(j,cv_mixt_dens) = cvmean(j,cv_mixt_dens)*rnik
306 cvmean(j,cv_mixt_xmom) = cvmean(j,cv_mixt_xmom)*rnik
307 cvmean(j,cv_mixt_ymom) = cvmean(j,cv_mixt_ymom)*rnik
308 cvmean(j,cv_mixt_zmom) = cvmean(j,cv_mixt_zmom)*rnik
309 cvmean(j,cv_mixt_ener) = cvmean(j,cv_mixt_ener)*rnik
313 IF (
ALLOCATED(cvfile))
THEN
314 DEALLOCATE( cvfile,stat=errorflag )
315 global%error = errorflag
316 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
322 IF (global%myProcid == masterproc)
THEN
323 CLOSE(if_solut,iostat=errorflag)
324 global%error = errorflag
325 IF (global%error /= 0) &
326 CALL
errorstop( global,err_file_close,__line__,
'File: '//trim(fname) )
332 1005
FORMAT(
'Region ',i5,
', ipc= ',i6,
', jpc= ',i6,
', kpc= ',i6,
'.')
333 1010
FORMAT(
'Region ',i5,
', # dummy cells=',i2,
' but should be= ',i1)
335 END SUBROUTINE peri_rflo_readmean
352 SUBROUTINE peri_comeancorrection( region )
359 #include "Indexing.h"
362 TYPE(t_region
) :: region
368 INTEGER :: iLev, iOff, ijOff, iNOff, ijNOff, ijk, ijkN, ijkNp1
369 INTEGER :: idcbeg, jdcbeg, kdcbeg, idcend, jdcend, kdcend, ibc, iec
370 INTEGER :: ipcbeg, jpcbeg, kpcbeg, ipcend, jpcend, kpcend
371 INTEGER :: indCp, indMol, errorFlag
372 INTEGER,
ALLOCATABLE :: jid(:)
374 REAL(RFREAL) :: mm,rgas,cpgas,g, rrho,rho,ru,rv,rw,pr,re, rAvgTim,beta
375 REAL(RFREAL) :: dy1,vistau1,yn1, muel,muet,uv, upl,umi,dudy,ynd,ombeta
376 REAL(RFREAL) :: restau,modtau,vistau,tottau, u,v,w, ampli, alpha,ralpha
377 REAL(RFREAL) :: tavMassflux, cvmMassflux, rnik, fact
378 REAL(RFREAL) :: sndMassFlux, rcvMassFlux, sndAverSize, rcvAverSize
379 REAL(RFREAL),
POINTER :: xyz(:,:),cv(:,:),dv(:,:),gv(:,:),tv(:,:)
380 REAL(RFREAL),
POINTER :: cvMean(:,:),tav(:,:),ttav(:,:)
381 REAL(RFREAL),
ALLOCATABLE :: rhom(:),um(:),vm(:),wm(:),rem(:),dy(:)
382 REAL(RFREAL),
ALLOCATABLE :: rhoa(:),ua(:),va(:),wa(:),rea(:)
383 REAL(RFREAL),
ALLOCATABLE :: muela(:),mueta(:),uva(:),dstress(:),yc(:),yn(:)
389 global => region%global
392 'PERI_ModHybridDES.F90' )
398 IF (region%periInput%flowKind /= peri_flow_none) docorrect = .true.
399 IF ((docorrect .EQV. .true.) .AND. &
400 (region%mixtInput%turbModel == turb_model_hdessa))
THEN
406 IF ((docorrect .EQV. .true.) .AND. &
407 (global%doStat == active))
THEN
414 IF (docorrect .EQV. .false.) goto 999
418 ilev = region%currLevel
421 jdcbeg,jdcend,kdcbeg,kdcend )
423 jpcbeg,jpcend,kpcbeg,kpcend )
427 xyz => region%levels(ilev)%grid%xyz
428 cv => region%levels(ilev)%mixt%cv
429 dv => region%levels(ilev)%mixt%dv
430 gv => region%levels(ilev)%mixt%gv
431 tv => region%levels(ilev)%mixt%tv
432 cvmean => region%levels(ilev)%peri%cvMean
437 ALLOCATE( rhom(jdcbeg:jdcend),stat=errorflag )
438 global%error = errorflag
439 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
440 ALLOCATE( um(jdcbeg:jdcend),stat=errorflag )
441 global%error = errorflag
442 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
443 ALLOCATE( vm(jdcbeg:jdcend),stat=errorflag )
444 global%error = errorflag
445 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
446 ALLOCATE( wm(jdcbeg:jdcend),stat=errorflag )
447 global%error = errorflag
448 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
449 ALLOCATE( rem(jdcbeg:jdcend),stat=errorflag )
450 global%error = errorflag
451 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
453 ALLOCATE( rhoa(jdcbeg:jdcend),stat=errorflag )
454 global%error = errorflag
455 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
456 ALLOCATE( ua(jdcbeg:jdcend),stat=errorflag )
457 global%error = errorflag
458 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
459 ALLOCATE( va(jdcbeg:jdcend),stat=errorflag )
460 global%error = errorflag
461 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
462 ALLOCATE( wa(jdcbeg:jdcend),stat=errorflag )
463 global%error = errorflag
464 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
465 ALLOCATE( rea(jdcbeg:jdcend),stat=errorflag )
466 global%error = errorflag
467 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
469 ALLOCATE( dy(jdcbeg:jdcend),stat=errorflag )
470 global%error = errorflag
471 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
472 ALLOCATE( yc(jdcbeg:jdcend),stat=errorflag )
473 global%error = errorflag
474 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
475 ALLOCATE( yn(jdcbeg:jdcend+1),stat=errorflag )
476 global%error = errorflag
477 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
478 ALLOCATE( muela(jdcbeg:jdcend),stat=errorflag )
479 global%error = errorflag
480 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
481 ALLOCATE( mueta(jdcbeg:jdcend),stat=errorflag )
482 global%error = errorflag
483 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
484 ALLOCATE( uva(jdcbeg:jdcend),stat=errorflag )
485 global%error = errorflag
486 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
487 ALLOCATE( dstress(jdcbeg:jdcend),stat=errorflag )
488 global%error = errorflag
489 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
491 ALLOCATE( jid(jdcbeg-1:jdcend+1),stat=errorflag )
492 global%error = errorflag
493 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
495 tav => region%levels(ilev)%mixt%tav
496 ttav => region%levels(ilev)%turb%tav
498 indcp = region%levels(ilev)%mixt%indCp
499 indmol = region%levels(ilev)%mixt%indMol
501 ombeta = 1._rfreal-beta
503 ralpha = 1._rfreal/alpha
504 rnik = 1._rfreal/
REAL((ipcend-ipcbeg+1)*(kpcend-kpcbeg+1))
516 ijk = indijk(i,j,k,ioff,ijoff)
517 mm = gv(gv_mixt_mol ,ijk*indmol)
519 cpgas = gv(gv_mixt_cp ,ijk*indcp )
522 rho = cv(cv_mixt_dens,ijk)
523 ru = cv(cv_mixt_xmom,ijk)
524 rv = cv(cv_mixt_ymom,ijk)
525 rw = cv(cv_mixt_zmom,ijk)
526 re = cv(cv_mixt_ener,ijk)
530 rhom(j) = rhom(j) + rho
531 um(j) = um(j) + ru*rrho
532 vm(j) = vm(j) + rv*rrho
533 wm(j) = wm(j) + rw*rrho
540 IF (global%integrTime < 1.e-13_rfreal)
THEN
557 ijk = indijk(i,j,k,ioff,ijoff)
558 mm = gv(gv_mixt_mol ,ijk*indmol)
560 cpgas = gv(gv_mixt_cp ,ijk*indcp )
570 rho = cv(cv_mixt_dens,ijk)
571 ru = cv(cv_mixt_xmom,ijk)
572 rv = cv(cv_mixt_ymom,ijk)
573 rw = cv(cv_mixt_zmom,ijk)
574 re = cv(cv_mixt_ener,ijk)
578 rhoa(j) = rhoa(j) + rho
579 ua(j) = ua(j) + ru*rrho
580 va(j) = va(j) + rv*rrho
581 wa(j) = wa(j) + rw*rrho
589 muel = tv(tv_mixt_muel,ijk)
590 muet = tv(tv_mixt_muet,ijk)
591 uv = cv(cv_mixt_xmom,ijk)*cv(cv_mixt_ymom,ijk)*rrho**2
593 muela(j) = muela(j) + muel
594 mueta(j) = mueta(j) + muet
601 ravgtim = 1._rfreal/global%integrTime
617 ijk = indijk(i,j,k,ioff,ijoff)
618 mm = gv(gv_mixt_mol ,ijk*indmol)
620 cpgas = gv(gv_mixt_cp ,ijk*indcp )
623 rho = tav(1,ijk)*ravgtim
624 ru = rho*tav(2,ijk)*ravgtim
625 rv = rho*tav(3,ijk)*ravgtim
627 pr = rho*rgas*tav(4,ijk)*ravgtim
628 re = pr/(g-1._rfreal)+0.5_rfreal*(ru*ru+rv*rv+rw*rw)/rho
638 rhoa(j) = rhoa(j) + rho
639 ua(j) = ua(j) + ru*rrho
640 va(j) = va(j) + rv*rrho
641 wa(j) = wa(j) + rw*rrho
645 muel = global%refVisc
646 muet = ttav(1,ijk)*ravgtim
647 uv = tav(9,ijk)*ravgtim
653 muela(j) = muela(j) + muel
654 mueta(j) = mueta(j) + muet
665 rhom(j) = rhom(j)*rnik
671 rhoa(j) = rhoa(j)*rnik
677 muela(j) = muela(j)*rnik
678 mueta(j) = mueta(j)*rnik
684 tavmassflux = 0._rfreal
685 cvmmassflux = 0._rfreal
689 ijkn = indijk(i ,j ,k ,inoff,ijnoff)
690 ijknp1= indijk(i ,j+1,k ,inoff,ijnoff)
691 dy(j) = (xyz(ycoord,ijknp1)-xyz(ycoord,ijkn))
692 yc(j) = 0.5_rfreal*(xyz(ycoord,ijknp1)+xyz(ycoord,ijkn))
693 yn(j) = xyz(ycoord,ijkn)
694 yn(j+1) = xyz(ycoord,ijknp1)
698 IF (region%iRegionGlobal == 1)
THEN
700 vistau1 = muela(1)*2._rfreal*ua(1)/dy1
705 CALL mpi_bcast( dy1,1,mpi_rfreal,masterproc,global%mpiComm,global%mpierr )
706 CALL mpi_bcast( vistau1,1,mpi_rfreal,masterproc,global%mpiComm,global%mpierr )
707 CALL mpi_bcast( yn1,1,mpi_rfreal,masterproc,global%mpiComm,global%mpierr )
711 tavmassflux = tavmassflux + dy(j)*rhom(j)*um(j)
712 cvmmassflux = cvmmassflux + dy(j)*cvmean(j,cv_mixt_xmom)
716 sndmassflux = tavmassflux
717 CALL mpi_allreduce( sndmassflux,rcvmassflux,1,mpi_double_precision,mpi_sum, &
718 global%mpiComm, global%mpierr )
719 tavmassflux = rcvmassflux
721 sndmassflux = cvmmassflux
722 CALL mpi_allreduce( sndmassflux,rcvmassflux,1,mpi_double_precision,mpi_sum, &
723 global%mpiComm, global%mpierr )
724 cvmmassflux = rcvmassflux
726 IF (region%periInput%split(jcoord) == off)
THEN
728 CALL mpi_allreduce( sndaversize,rcvaversize,1,mpi_double_precision,mpi_sum, &
729 global%mpiComm, global%mpierr )
736 fact = tavmassflux/cvmmassflux
743 jid(jdcbeg-1) = jdcbeg
744 jid(jdcend+1) = jdcend
749 upl = 0.5_rfreal*(ua(jid(j+1)) + ua(j))
750 umi = 0.5_rfreal*(ua(jid(j-1)) + ua(j))
752 IF (j==jdcbeg .OR. j==jdcend)
THEN
753 dudy = 2._rfreal*(upl-umi)/dy(j)
755 dudy = (upl-umi)/dy(j)
758 restau = -rhoa(j)*uva(j)
759 modtau = mueta(j)*dudy
760 vistau = muela(j)*dudy
762 tottau =
min( restau+modtau+vistau,vistau1 )
764 IF (tottau < 0._rfreal) tottau =
max( restau+modtau+vistau,-vistau1 )
766 ynd = 1._rfreal-(yc(j)-yn1)/global%refLength
770 IF (ynd >= 0._rfreal)
THEN
771 dstress(j) = alpha*( ynd - tottau/vistau1 )/ &
772 max( restau/vistau1,0.05_rfreal )
774 dstress(j) = alpha*( tottau/vistau1 - ynd )/ &
775 max(-restau/vistau1,0.05_rfreal )
780 IF (abs( ynd ) < 0.1_rfreal)
THEN
781 dstress(j) = 0._rfreal
783 write(*,100)region%iRegionGlobal,(region%iRegionGlobal-1)*8+j,dstress(j),ynd,tottau,vistau1,tottau/vistau1
787 100
FORMAT( 2i5,5f20.10 )
794 ijk = indijk(i,j,k,ioff,ijoff)
796 ampli =
max( 1._rfreal+dstress(j), 0._rfreal )
798 u = dv(dv_mixt_uvel,ijk)
799 v = dv(dv_mixt_vvel,ijk)
800 w = dv(dv_mixt_wvel,ijk)
802 cv(cv_mixt_dens,ijk) = (cv(cv_mixt_dens,ijk)-rhom(j))*1._rfreal+ &
803 beta*cvmean(j,cv_mixt_dens)+ ombeta*rhom(j)
805 rho = cv(cv_mixt_dens,ijk)
806 rrho = 1._rfreal/cvmean(j,cv_mixt_dens)
817 cv(cv_mixt_xmom,ijk) = rho*( (u-um(j))*ampli + beta* &
818 cvmean(j,cv_mixt_xmom)*rrho + ombeta*um(j) )
820 cv(cv_mixt_ymom,ijk) = rho*( (v-vm(j))*ampli + beta* &
821 cvmean(j,cv_mixt_ymom)*rrho + ombeta*vm(j) )
823 cv(cv_mixt_zmom,ijk) = rho*( (w-wm(j))*ampli + beta* &
824 cvmean(j,cv_mixt_zmom)*rrho + ombeta*wm(j) )
826 cv(cv_mixt_ener,ijk) = (cv(cv_mixt_ener,ijk)-rem(j))*ampli+ &
827 beta*cvmean(j,cv_mixt_ener)+ ombeta*rem(j)
844 cv(cv_mixt_xmom,ijk) = cv(cv_mixt_xmom,ijk)*fact
851 DEALLOCATE( rhom,stat=errorflag )
852 global%error = errorflag
853 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
854 DEALLOCATE( um,stat=errorflag )
855 global%error = errorflag
856 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
857 DEALLOCATE( vm,stat=errorflag )
858 global%error = errorflag
859 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
860 DEALLOCATE( wm,stat=errorflag )
861 global%error = errorflag
862 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
863 DEALLOCATE( rem,stat=errorflag )
864 global%error = errorflag
865 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
867 DEALLOCATE( rhoa,stat=errorflag )
868 global%error = errorflag
869 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
870 DEALLOCATE( ua,stat=errorflag )
871 global%error = errorflag
872 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
873 DEALLOCATE( va,stat=errorflag )
874 global%error = errorflag
875 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
876 DEALLOCATE( wa,stat=errorflag )
877 global%error = errorflag
878 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
879 DEALLOCATE( rea,stat=errorflag )
880 global%error = errorflag
881 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
883 DEALLOCATE( dy,stat=errorflag )
884 global%error = errorflag
885 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
886 DEALLOCATE( yc,stat=errorflag )
887 global%error = errorflag
888 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
889 DEALLOCATE( yn,stat=errorflag )
890 global%error = errorflag
891 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
892 DEALLOCATE( muela,stat=errorflag )
893 global%error = errorflag
894 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
895 DEALLOCATE( mueta,stat=errorflag )
896 global%error = errorflag
897 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
898 DEALLOCATE( uva,stat=errorflag )
899 global%error = errorflag
900 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
901 DEALLOCATE( dstress,stat=errorflag )
902 global%error = errorflag
903 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
905 DEALLOCATE( jid,stat=errorflag )
906 global%error = errorflag
907 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
911 IF (global%flowType == flow_unsteady)
THEN
913 ibc = indijk(idcbeg,jdcbeg,kdcbeg,ioff,ijoff)
914 iec = indijk(idcend,jdcend,kdcend,ioff,ijoff)
925 END SUBROUTINE peri_comeancorrection
real(rfreal) function mixtperf_r_m(M)
Vector_n max(const Array_n_const &v1, const Array_n_const &v2)
subroutine registerfunction(global, funName, fileName)
subroutine rflo_readdatafileint(global, fileId, form, nDim1, nDim2, ivar)
subroutine rflo_getnodeoffset(region, iLev, iNodeOffset, ijNodeOffset)
subroutine rflo_getdimensdummy(region, iLev, idcbeg, idcend, jdcbeg, jdcend, kdcbeg, kdcend)
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 form
Vector_n min(const Array_n_const &v1, const Array_n_const &v2)
subroutine errorstop(global, errorCode, errorLine, addMessage)
subroutine mixtureproperties(region, inBeg, inEnd, gasUpdate)
subroutine deregisterfunction(global)
real(rfreal) function mixtperf_g_cpr(Cp, R)
subroutine rflo_getdimensphys(region, iLev, ipcbeg, ipcend, jpcbeg, jpcend, kpcbeg, kpcend)
subroutine rflo_readdatafilereal(global, fileId, form, nDim1, nDim2, var)