6 use size_m
, only : nx1, ny1, nz1
7 use eigen, only : eigaa, eigas
8 use input, only : iftran, ifnav
9 use soln, only : vdiff, vtrans
10 use tstep, only : ifield, nelfld, istep, tolabs, dt, vnrml8, vnrmsm
11 use tstep, only : tolps, tolrel, tolhv, tolhr, tolhs, tolpdf
14 REAL(DP) :: avvisc, avdens, vnorm, factor
16 real(DP),
external :: glmin, glmax
18 ntot = nx1*ny1*nz1*nelfld(ifield)
19 avvisc = glmin(vdiff(1,1,1,1,ifield),ntot)
20 avdens = glmax(vtrans(1,1,1,1,ifield),ntot)
24 IF (istep == 1) vnorm = vnrml8
25 IF (istep > 1) vnorm = vnrmsm
26 IF (vnorm == 0.) vnorm = tolabs
27 factor = 1.+(avdens/(eigaa*avvisc*dt))
30 IF (vnorm == 0.) vnorm = tolabs
34 tolps = tolrel*vnorm * sqrt(eigas)/(4.*factor)
35 tolhv = tolrel*vnorm * sqrt(eigaa)*avvisc/2.
37 IF ( .NOT. iftran .AND. .NOT. ifnav) tolhv = tolhv/10.
45 IF (tolpdf /= 0.) tolps = tolpdf
55 use size_m
, only : nx1, ny1, nz1
56 use eigen, only : eigaa
57 use input, only : iftran
58 use soln, only : vdiff
59 use tstep, only : ifield, nelfld, istep, tnrml8, tnrmsm, tolabs, tolht, tolrel
62 REAL(DP) :: avcond, tnorm
64 real(DP),
external :: glmin
66 ntot = nx1*ny1*nz1*nelfld(ifield)
67 avcond = glmin(vdiff(1,1,1,1,ifield),ntot)
71 IF (istep == 1) tnorm = tnrml8(ifield-1)
72 IF (istep > 1) tnorm = tnrmsm(ifield-1)
73 IF (tnorm == 0.) tnorm = tolabs
75 tnorm = tnrml8(ifield-1)
76 IF (tnorm == 0.) tnorm = tolabs
79 tolht(ifield) = tolrel*tnorm * sqrt(eigaa)*avcond
92 use size_m
, only : nid
93 use input, only : ifchar
94 use tstep, only : ctarg, ntaubd
104 IF (dct == 0.) ntaubd = ict
105 IF (dct > 0.) ntaubd = ict+1
113 IF (ctarg > 0.5)
THEN
115 WRITE (6,*)
'Reset the target Courant number to .5'
subroutine setchar
If characteristics, need number of sub-timesteps (DT/DS). Current sub-timeintegration scheme: RK4...
subroutine settolt
Set tolerances for temerature/passive scalar solver.
subroutine settolv
Set tolerances for velocity solver.