source: trunk/LMDZ.GENERIC/libf/phystd/callkeys_mod.F90 @ 2987

Last change on this file since 2987 was 2958, checked in by emillour, 19 months ago

Generic PCM:
Upgrade wstats following the Mars PCM one. It is now a module and there no
longer needs to have if (callstats) around a call to wstats as it managed
internally in the wstats routine.
In addition: wstats now looks for an (optional) stats.def file in the
directory where the GCM is run to know which variable should be included
in the stats.nc file. The stats.def ASCII file should simply contain
one variable name per line, in the same way as the diagfi.def file for
diagfi outputs. If there is no stats.def file then all variables sent to
wstats will be in the stats.nc file (which matches the behaviour prior to
this improvement).
EM

File size: 6.8 KB
Line 
1MODULE callkeys_mod
2IMPLICIT NONE 
3
4      logical,save :: callrad,corrk,calldifv,UseTurbDiff
5!$OMP THREADPRIVATE(callrad,corrk,calldifv,UseTurbDiff)
6      logical,save :: calladj,calltherm,co2cond,callsoil
7!$OMP THREADPRIVATE(calladj,calltherm,co2cond,callsoil)
8      logical,save :: season,diurnal,tlocked,rings_shadow,lwrite
9!$OMP THREADPRIVATE(season,diurnal,tlocked,rings_shadow,lwrite)
10      logical,save :: callgasvis,continuum,graybody
11!$OMP THREADPRIVATE(callgasvis,continuum,graybody)
12      logical,save :: strictboundcorrk                                     
13!$OMP THREADPRIVATE(strictboundcorrk)
14      logical,save :: strictboundcia                                     
15!$OMP THREADPRIVATE(strictboundcia)
16
17      logical,save :: enertest
18      logical,save :: nonideal
19      logical,save :: meanOLR
20      logical,save :: specOLR
21      logical,save :: kastprof
22      logical,save :: diagdtau
23!$OMP THREADPRIVATE(enertest,nonideal,meanOLR,kastprof,diagdtau)
24      logical,save :: newtonian
25      logical,save :: force_cpp
26      integer,save :: cpp_mugaz_mode
27      logical,save :: testradtimes
28      logical,save :: rayleigh
29!$OMP THREADPRIVATE(newtonian,force_cpp,cpp_mugaz_mode,testradtimes,rayleigh)
30      logical,save :: stelbbody
31      logical,save :: nearco2cond
32      logical,save :: tracer
33      logical,save :: mass_redistrib
34!$OMP THREADPRIVATE(stelbbody,nearco2cond,tracer,mass_redistrib)
35      logical,save :: varactive
36      logical,save :: varfixed
37      logical,save :: sedimentation
38      logical,save :: generic_condensation
39      logical,save :: generic_rain
40!$OMP THREADPRIVATE(varactive,varfixed,sedimentation,generic_condensation,generic_rain)
41      logical,save :: water ,watercond, waterrain, moistadjustment
42!$OMP THREADPRIVATE(water, watercond, waterrain, moistadjustment)
43      logical,save :: aeroco2, aeroh2o, aeroh2so4, aeroback2lay
44!$OMP THREADPRIVATE(aeroco2, aeroh2o, aeroh2so4, aeroback2lay)
45      logical,save :: aeronh3, aeronlay, aeroaurora
46!$OMP THREADPRIVATE(aeronh3,aeronlay,aeroaurora)
47
48      logical,save :: aerovenus ! master flag for "Venus-like" aerosol additions
49!$OMP THREADPRIVATE(aerovenus)
50      ! detailed sub-options when with "Venus-like" aerosol additions
51      logical,save :: aerovenus1, aerovenus2, aerovenus2p, aerovenus3, aerovenusUV
52!$OMP THREADPRIVATE(aerovenus1, aerovenus2, aerovenus2p, aerovenus3, aerovenusUV)
53
54      logical,save :: aerofixco2, aerofixh2o
55!$OMP THREADPRIVATE(aerofixco2, aerofixh2o)
56      integer,save :: aerogeneric ! number of aerosols of "generic" kind
57!$OMP THREADPRIVATE(aerogeneric)
58      logical,save :: hydrology
59      logical,save :: sourceevol
60      logical,save :: CLFvarying
61      logical,save :: nosurf
62      logical,save :: oblate
63!$OMP THREADPRIVATE(hydrology,sourceevol,CLFvarying,nosurf,oblate)
64      logical,save :: ok_slab_ocean
65      logical,save :: ok_slab_sic
66      logical,save :: ok_slab_heat_transp
67      logical,save :: albedo_spectral_mode
68!$OMP THREADPRIVATE(ok_slab_ocean,ok_slab_sic,ok_slab_heat_transp,albedo_spectral_mode)
69      logical,save :: photochem
70      logical,save :: photoheat
71      logical,save :: jonline
72      logical,save :: depos
73      logical,save :: haze
74!$OMP THREADPRIVATE(photochem,photoheat,jonline,depos)
75      logical,save :: calllott_nonoro
76!$OMP THREADPRIVATE(calllott_nonoro)
77      logical,save :: global1d
78      real,save    :: szangle
79!$OMP THREADPRIVATE(global1d,szangle)
80
81      integer,save :: iddist
82      integer,save :: iaervar
83      integer,save :: iradia
84      integer,save :: startype
85      integer,save :: versH2H2cia
86      character(64),save :: H2orthopara_mixture
87      integer,save :: nlayaero
88!$OMP THREADPRIVATE(iddist,iaervar,iradia,startype,versH2H2cia,H2orthopara_mixture,nlayaero)
89      integer,dimension(:),allocatable,save :: aeronlay_choice
90!$OMP THREADPRIVATE(aeronlay_choice)
91
92      character(64),save :: optprop_back2lay_vis
93      character(64),save :: optprop_back2lay_ir
94      character(64),dimension(:),allocatable,save :: optprop_aeronlay_vis
95      character(64),dimension(:),allocatable,save :: optprop_aeronlay_ir
96!$OMP THREADPRIVATE(optprop_back2lay_vis,optprop_back2lay_ir,optprop_aeronlay_vis,optprop_aeronlay_ir)
97
98      real,save :: tplanckmin
99      real,save :: tplanckmax
100      real,save :: dtplanck
101!$OMP THREADPRIVATE(tplanckmin,tplanckmax,dtplanck)
102      real,save :: topdustref
103      real,save :: dusttau
104      real,save :: Fat1AU
105      real,save :: stelTbb
106!$OMP THREADPRIVATE(topdustref,dusttau,Fat1AU,stelTbb)
107      real,save :: Tstrat
108      real,save :: tplanet
109      real,save :: obs_tau_col_tropo
110      real,save :: obs_tau_col_strato
111!$OMP THREADPRIVATE(Tstrat,tplanet,obs_tau_col_tropo,obs_tau_col_strato)
112      real,save :: pres_bottom_tropo
113      real,save :: pres_top_tropo
114      real,save :: pres_bottom_strato
115      real,save :: pres_top_strato
116!$OMP THREADPRIVATE(pres_bottom_tropo,pres_top_tropo,pres_bottom_strato,pres_top_strato)
117      real,save :: size_tropo
118      real,save :: size_strato
119      real,save :: satval
120      real,save :: CLFfixval
121      real,save :: n2mixratio
122!$OMP THREADPRIVATE(size_tropo,size_strato,satval,CLFfixval,n2mixratio)
123      real,save :: size_nh3_cloud
124      real,save :: pres_nh3_cloud
125      real,save :: tau_nh3_cloud
126!$OMP THREADPRIVATE(size_nh3_cloud, pres_nh3_cloud, tau_nh3_cloud)
127      real,dimension(:),allocatable,save :: aeronlay_tauref
128      real,dimension(:),allocatable,save :: aeronlay_lamref
129      real,dimension(:),allocatable,save :: aeronlay_ptop
130      real,dimension(:),allocatable,save :: aeronlay_pbot
131      real,dimension(:),allocatable,save :: aeronlay_sclhght
132      real,dimension(:),allocatable,save :: aeronlay_size
133      real,dimension(:),allocatable,save :: aeronlay_nueff
134!$OMP THREADPRIVATE(aeronlay_tauref,aeronlay_lamref,aeronlay_ptop,aeronlay_pbot,aeronlay_sclhght,aeronlay_size,aeronlay_nueff)
135      real,save :: co2supsat
136      real,save :: pceil
137      real,save :: albedosnow
138      real,save :: alb_ocean
139      real,save :: albedoco2ice
140      real,save :: maxicethick
141!$OMP THREADPRIVATE(co2supsat,pceil,albedosnow,alb_ocean,albedoco2ice,maxicethick)
142      real,save :: Tsaldiff
143      real,save :: tau_relax
144      real,save :: cloudlvl
145      real,save :: icetstep
146      real,save :: intheat
147!$OMP THREADPRIVATE(Tsaldiff,tau_relax,cloudlvl,icetstep,intheat)
148      real,save :: flatten
149      real,save :: Rmean
150      real,save :: J2
151      real,save :: MassPlanet
152!$OMP THREADPRIVATE(flatten,Rmean,J2,MassPlanet)
153      real,save :: surfalbedo
154      real,save :: surfemis
155!$OMP THREADPRIVATE(surfalbedo,surfemis)
156      real,save :: noseason_day
157!$OMP THREADPRIVATE(noseason_day)
158      real,save :: kmixmin
159!$OMP THREADPRIVATE(kmixmin)
160     
161      logical,save :: iscallphys=.false.!existence of callphys.def
162!$OMP THREADPRIVATE(iscallphys)
163
164      ! do we read a startphy.nc file (default=.true.)
165      logical,save :: startphy_file=.true.
166!$OMP THREADPRIVATE(startphy_file)
167
168END MODULE callkeys_mod
Note: See TracBrowser for help on using the repository browser.