modglobal Module


Used by


Contents

poisrcheck imax jtot jmax jsen kmax isen ib ie jb je jgb jge offset kb ke nsv nvar fieldvars ih jh kh ihc jhc khc nblocks block nfcts iplane nstore fname_options longint lwarmstart lstratstart lfielddump lreadscal BCxm BCxT BCxq BCxs BCym BCyT BCyq BCys BCtopm BCtopT BCtopq BCtops BCbotm BCbotT BCbotq BCbots iinletgen idriver linoutflow lzerogradtop lzerogradtopscal lbuoyancy ltempeq lscalrec lSIRANEinout ltempinout lmoistinout lper2inout libm lwalldist lles linletRA lfixinlet lfixutauin lscasrc lscasrcl lydump lytdump lxydump lxytdump lscasrcr ltkedump lslicedump ltdump lreadminl lwallfunc luoutflowr lvoutflowr luvolflowr lvvolflowr lstoreplane lstorexy lreadmean lstat lEB lwriteEBfiles lconstW ifixuinf lvinf freestreamav freestrtmpav ifinput ifoutput ifnamopt pi grav rd rv cp rlv rlvi ep ep2 rcp cpr rlvocp mair rhoa wfc wwilt wgrmax rsmin rsmax GRLAI wsoil bldT skyLW gres grqs grdqdt numol numoli prandtlmol prandtlmoli iwallmom iwalltemp iwallmoist iwallscal rhow pref0 tmelt es0 at bt ekmin e12min fkar eps1 epscloud boltz lprofforc lcoriol igrw_damp geodamptime uflowrate vflowrate Uinf Vinf inletav totinletav om22 om23 om22_gs om23_gs xlat xlon xSa ySa zSa xS yS zS SS sigS lnudge tnudge nnudge lchem k1 JNO2 POISS_FFT POISS_CYC ipoiss iadv_upw iadv_cd2 iadv_kappa iadv_mom iadv_tke iadv_thl iadv_qt iadv_sv lmoist xday xtime runtime dtmax trestart tfielddump tsample tstatsdump tnextrestart tscale tnextfielddump startfile totavtime dtEB tEB tnextEB thres dqt dtheta dsv dt timee btime runavtime ntimee ntrun timeleft ladaptive tdriverstart tdriverdump dtdriver driverstore driverjobnr lsdriver courant diffnr dt_lim rk3step iexpnr cexpnr thlsrc dy dy2 dz dyi dyiq dyi5 dy2i nwalllayers AM BM CM DM EM FM GM HM inAM IDM bb w dumv Tdash rslabs dzf dzfc dzfci dzf2 dzh zh zf dzfi dzfiq dzfi5 dzhi dzhci dzhiq dzh2i zhi zfi dxf dxfc dxfci dxf2 dxfi dxfiq dxfi5 dxh dxhi dxhci dxhiq dxh2i xh xf xsize ysize delta lmomsubs author version

Variables

Type Visibility Attributes Name Initial
integer, public :: poisrcheck = 0
integer, public :: imax = 64
integer, public :: jtot = 64
integer, public :: jmax
integer, public :: jsen
integer, public :: kmax = 96
integer, public :: isen
integer, public :: ib
integer, public :: ie
integer, public :: jb
integer, public :: je
integer, public :: jgb
integer, public :: jge
integer, public :: offset
integer, public :: kb
integer, public :: ke
integer, public :: nsv = 0
integer, public :: nvar = 0
character(len=50), public :: fieldvars = ''
integer, public :: ih = 3
integer, public :: jh = 3
integer, public :: kh = 1
integer, public :: ihc = 2
integer, public :: jhc = 2
integer, public :: khc = 2
integer, public :: nblocks = 0
integer, public, allocatable :: block(:,:)
integer, public :: nfcts = -1
integer, public :: iplane
integer, public :: nstore = 1002
character(len=90), public :: fname_options = 'namoptions'
integer, public, parameter :: longint = 8
logical, public :: lwarmstart = .false.
logical, public :: lstratstart = .false.
logical, public :: lfielddump = .false.
logical, public :: lreadscal = .false.
integer, public :: BCxm = 1
integer, public :: BCxT = 1
integer, public :: BCxq = 1
integer, public :: BCxs = 1
integer, public :: BCym = 1
integer, public :: BCyT = 1
integer, public :: BCyq = 1
integer, public :: BCys = 1
integer, public :: BCtopm = 1
integer, public :: BCtopT = 1
integer, public :: BCtopq = 1
integer, public :: BCtops = 1
integer, public :: BCbotm = 2
integer, public :: BCbotT = 1
integer, public :: BCbotq = 1
integer, public :: BCbots = 1
integer, public :: iinletgen = 0
integer, public :: idriver = 0
logical, public :: linoutflow = .false.
logical, public :: lzerogradtop = .false.
logical, public :: lzerogradtopscal = .false.
logical, public :: lbuoyancy = .false.
logical, public :: ltempeq = .false.
logical, public :: lscalrec = .false.
logical, public :: lSIRANEinout = .false.
logical, public :: ltempinout = .false.
logical, public :: lmoistinout = .false.
logical, public :: lper2inout = .false.
logical, public :: libm = .true.
logical, public :: lwalldist = .false.
logical, public :: lles = .true.
logical, public :: linletRA = .false.
logical, public :: lfixinlet = .false.
logical, public :: lfixutauin = .false.
logical, public :: lscasrc = .false.
logical, public :: lscasrcl = .false.
logical, public :: lydump = .false.
logical, public :: lytdump = .false.
logical, public :: lxydump = .false.
logical, public :: lxytdump = .false.
logical, public :: lscasrcr = .false.
logical, public :: ltkedump = .false.
logical, public :: lslicedump = .false.
logical, public :: ltdump = .false.
logical, public :: lreadminl = .false.
logical, public :: lwallfunc = .true.
logical, public :: luoutflowr = .false.
logical, public :: lvoutflowr = .false.
logical, public :: luvolflowr = .false.
logical, public :: lvvolflowr = .false.
logical, public :: lstoreplane = .false.
logical, public :: lstorexy = .false.
logical, public :: lreadmean = .false.
logical, public :: lstat = .false.
logical, public :: lEB = .false.
logical, public :: lwriteEBfiles = .false.
logical, public :: lconstW = .false.
integer, public :: ifixuinf = 0
logical, public :: lvinf = .false.
real, public :: freestreamav = 0.
real, public :: freestrtmpav = 0.
integer, public, parameter :: ifinput = 1
integer, public, parameter :: ifoutput = 2
integer, public, parameter :: ifnamopt = 3
real, public, parameter :: pi = 3.141592653589793116
real, public, parameter :: grav = 9.81
real, public, parameter :: rd = 287.04
real, public, parameter :: rv = 461.5
real, public, parameter :: cp = 1004.
real, public, parameter :: rlv = 2.26e6
real, public, parameter :: rlvi = 1/rlv
real, public, parameter :: ep = rd/rv
real, public, parameter :: ep2 = rv/rd-1.
real, public, parameter :: rcp = rd/cp
real, public, parameter :: cpr = cp/rd
real, public, parameter :: rlvocp = rlv/cp
real, public, parameter :: mair = 28.967
real, public, parameter :: rhoa = 1.2
real, public :: wfc = 313.
real, public :: wwilt = 171.
real, public :: wgrmax = 450.
real, public :: rsmin = 110.
real, public :: rsmax = 5000.
real, public :: GRLAI = 2.
real, public :: wsoil = 0.
real, public :: bldT = 0.
real, public :: skyLW = 0.
real, public :: gres = 0.
real, public :: grqs = 0.
real, public :: grdqdt = 0.
real, public, parameter :: numol = 1.5e-5
real, public, parameter :: numoli = 1./numol
real, public, parameter :: prandtlmol = 0.71
real, public, parameter :: prandtlmoli = 1./prandtlmol
integer, public :: iwallmom = 2
integer, public :: iwalltemp = 1
integer, public :: iwallmoist = 1
integer, public :: iwallscal = 1
real, public, parameter :: rhow = 0.998e3
real, public, parameter :: pref0 = 1.e5
real, public, parameter :: tmelt = 273.16
real, public, parameter :: es0 = 610.78
real, public, parameter :: at = 17.27
real, public, parameter :: bt = 35.86
real, public, parameter :: ekmin = 1.e-12
real, public, parameter :: e12min = 5.e-5
real, public, parameter :: fkar = 0.41
real, public, parameter :: eps1 = 1.e-10
real, public, parameter :: epscloud = 1.e-5
real, public, parameter :: boltz = 5.67e-8
logical, public :: lprofforc = .false.
logical, public :: lcoriol = .false.
integer, public :: igrw_damp = 2
real, public :: geodamptime = 7200.
real, public :: uflowrate = 1.
real, public :: vflowrate = 1.
real, public :: Uinf = 0.
real, public :: Vinf = 0.
real, public :: inletav = 0.
real, public :: totinletav = 0.
real, public :: om22
real, public :: om23
real, public :: om22_gs
real, public :: om23_gs
real, public :: xlat = 52.
real, public :: xlon = 0.
real, public, allocatable :: xSa(:)
real, public, allocatable :: ySa(:)
real, public, allocatable :: zSa(:)
real, public :: xS = 0.
real, public :: yS = 0.
real, public :: zS = 0.
real, public :: SS = 0.
real, public :: sigS = 0.
logical, public :: lnudge = .false.
real, public :: tnudge = 50.
integer, public :: nnudge = 10
logical, public :: lchem = .false.
real, public :: k1 = 0.
real, public :: JNO2 = 0.
integer, public, parameter :: POISS_FFT = 0
integer, public, parameter :: POISS_CYC = 1
integer, public :: ipoiss = POISS_CYC
integer, public, parameter :: iadv_upw = 1
integer, public, parameter :: iadv_cd2 = 2
integer, public, parameter :: iadv_kappa = 7
integer, public :: iadv_mom = 2
integer, public :: iadv_tke = -1
integer, public :: iadv_thl = -1
integer, public :: iadv_qt = -1
integer, public :: iadv_sv(100) = -1
logical, public :: lmoist = .false.
real, public :: xday = 1.
real, public :: xtime = 0.
real, public :: runtime = 300.
real, public :: dtmax = 20.
real, public :: trestart = 10000.
real, public :: tfielddump = 10000.
real, public :: tsample = 5.
real, public :: tstatsdump = 10000.
real, public :: tnextrestart
real, public :: tscale
real, public :: tnextfielddump
character(len=90), public :: startfile = ''
real, public :: totavtime = 0.
real, public :: dtEB = 10.
real, public :: tEB = 0.
real, public :: tnextEB = 0.
real, public :: thres = 5.e-3
real, public :: dqt
real, public :: dtheta
real, public, allocatable :: dsv(:)
real, public :: dt
real, public :: timee
real, public :: btime
real, public :: runavtime
integer, public :: ntimee
integer, public :: ntrun
real, public :: timeleft
logical, public :: ladaptive = .false.
real, public :: tdriverstart = 0.
real, public :: tdriverdump
real, public :: dtdriver = 0.1
integer, public :: driverstore
integer, public :: driverjobnr
logical, public :: lsdriver = .false.
real, public :: courant = -1.
real, public :: diffnr = 0.25
real, public :: dt_lim
integer, public :: rk3step = 0
integer, public :: iexpnr = 0
character(len=3), public :: cexpnr
real, public :: thlsrc = 0.
real, public :: dy
real, public :: dy2
real, public :: dz
real, public :: dyi
real, public :: dyiq
real, public :: dyi5
real, public :: dy2i
integer, public :: nwalllayers = 3
real, public, allocatable :: AM(:,:)
real, public, allocatable :: BM(:,:)
real, public, allocatable :: CM(:,:)
real, public, allocatable :: DM(:,:)
real, public, allocatable :: EM(:,:)
real, public, allocatable :: FM(:,:)
real, public, allocatable :: GM(:,:)
real, public, allocatable :: HM(:,:)
real, public, allocatable :: inAM(:,:)
real, public, allocatable :: IDM(:,:)
real, public, allocatable :: bb(:)
real, public, allocatable :: w(:)
real, public, allocatable :: dumv(:)
real, public, allocatable :: Tdash(:)
real, public :: rslabs
real, public, allocatable :: dzf(:)
real, public, allocatable :: dzfc(:)
real, public, allocatable :: dzfci(:)
real, public, allocatable :: dzf2(:)
real, public, allocatable :: dzh(:)
real, public, allocatable :: zh(:)
real, public, allocatable :: zf(:)
real, public, allocatable :: dzfi(:)
real, public, allocatable :: dzfiq(:)
real, public, allocatable :: dzfi5(:)
real, public, allocatable :: dzhi(:)
real, public, allocatable :: dzhci(:)
real, public, allocatable :: dzhiq(:)
real, public, allocatable :: dzh2i(:)
real, public, allocatable :: zhi(:)
real, public, allocatable :: zfi(:)
real, public, allocatable :: dxf(:)
real, public, allocatable :: dxfc(:)
real, public, allocatable :: dxfci(:)
real, public, allocatable :: dxf2(:)
real, public, allocatable :: dxfi(:)
real, public, allocatable :: dxfiq(:)
real, public, allocatable :: dxfi5(:)
real, public, allocatable :: dxh(:)
real, public, allocatable :: dxhi(:)
real, public, allocatable :: dxhci(:)
real, public, allocatable :: dxhiq(:)
real, public, allocatable :: dxh2i(:)
real, public, allocatable :: xh(:)
real, public, allocatable :: xf(:)
real, public :: xsize = -1.
real, public :: ysize = -1.
real, public, allocatable :: delta(:,:)
logical, public :: lmomsubs = .false.
character(len=80), public :: author = ''
character(len=80), public :: version = 'DALES U'

Subroutines

public subroutine initglobal()

Arguments

None

public subroutine exitglobal()

Arguments

None