| 1 | MODULE callkeys_mod |
|---|
| 2 | IMPLICIT NONE |
|---|
| 3 | |
|---|
| 4 | logical,save :: callrad,corrk,calldifv,UseTurbDiff |
|---|
| 5 | !$OMP THREADPRIVATE(callrad,corrk,calldifv,UseTurbDiff) |
|---|
| 6 | logical,save :: calladj,calltherm,n2cond,callsoil,calllott |
|---|
| 7 | !$OMP THREADPRIVATE(calladj,calltherm,n2cond,callsoil,calllott) |
|---|
| 8 | logical,save :: calllott_nonoro |
|---|
| 9 | !$OMP THREADPRIVATE(calllott_nonoro) |
|---|
| 10 | logical,save :: callconduct,callmolvis,callmoldiff |
|---|
| 11 | !$OMP THREADPRIVATE(callconduct,callmolvis,callmoldiff) |
|---|
| 12 | logical,save :: season,diurnal,lwrite,evol1d |
|---|
| 13 | !$OMP THREADPRIVATE(season,diurnal,lwrite,evol1d) |
|---|
| 14 | logical,save :: callgasvis,continuum,graybody |
|---|
| 15 | !$OMP THREADPRIVATE(callgasvis,continuum,graybody) |
|---|
| 16 | logical,save :: strictboundcorrk |
|---|
| 17 | !$OMP THREADPRIVATE(strictboundcorrk) |
|---|
| 18 | logical,save :: strictboundcia |
|---|
| 19 | !$OMP THREADPRIVATE(strictboundcia) |
|---|
| 20 | |
|---|
| 21 | logical,save :: enertest |
|---|
| 22 | logical,save :: nonideal |
|---|
| 23 | logical,save :: meanOLR |
|---|
| 24 | logical,save :: specOLR |
|---|
| 25 | logical,save :: kastprof |
|---|
| 26 | !$OMP THREADPRIVATE(enertest,nonideal,meanOLR,kastprof) |
|---|
| 27 | logical,save :: newtonian |
|---|
| 28 | logical,save :: force_cpp |
|---|
| 29 | integer,save :: cpp_mugaz_mode |
|---|
| 30 | logical,save :: testradtimes |
|---|
| 31 | logical,save :: rayleigh |
|---|
| 32 | !$OMP THREADPRIVATE(newtonian,force_cpp,cpp_mugaz_mode,testradtimes,rayleigh) |
|---|
| 33 | logical,save :: stelbbody |
|---|
| 34 | logical,save :: tracer |
|---|
| 35 | logical,save :: mass_redistrib |
|---|
| 36 | !$OMP THREADPRIVATE(stelbbody,tracer,mass_redistrib) |
|---|
| 37 | logical,save :: varactive |
|---|
| 38 | logical,save :: varfixed |
|---|
| 39 | logical,save :: sedimentation |
|---|
| 40 | !$OMP THREADPRIVATE(varactive,varfixed,sedimentation) |
|---|
| 41 | |
|---|
| 42 | logical,save :: nosurf |
|---|
| 43 | !$OMP THREADPRIVATE(nosurf) |
|---|
| 44 | logical,save :: albedo_spectral_mode |
|---|
| 45 | !$OMP THREADPRIVATE(albedo_spectral_mode) |
|---|
| 46 | logical,save :: photoheat |
|---|
| 47 | logical,save :: jonline |
|---|
| 48 | logical,save :: depos |
|---|
| 49 | !$OMP THREADPRIVATE(photoheat,jonline,depos) |
|---|
| 50 | |
|---|
| 51 | !! Pluto-specific variables |
|---|
| 52 | logical,save :: methane,carbox |
|---|
| 53 | !$OMP THREADPRIVATE(methane,carbox) |
|---|
| 54 | logical,save :: haze,haze_proffix,haze_radproffix |
|---|
| 55 | !$OMP THREADPRIVATE(haze,haze_proffix,haze_radproffix) |
|---|
| 56 | logical,save :: fasthaze,changeti,changetid,optichaze,fractal |
|---|
| 57 | !$OMP THREADPRIVATE(fasthaze,changeti,changetid,optichaze,fractal) |
|---|
| 58 | logical,save :: fast,metcloud,monoxcloud,glaflow,triton,paleo |
|---|
| 59 | !$OMP THREADPRIVATE(fast,metcloud,monoxcloud,glaflow,triton,paleo) |
|---|
| 60 | logical,save :: nlte,strobel |
|---|
| 61 | !$OMP THREADPRIVATE(nlte,strobel) |
|---|
| 62 | logical,save :: kbo |
|---|
| 63 | !$OMP THREADPRIVATE(kbo) |
|---|
| 64 | logical,save :: cooling |
|---|
| 65 | !$OMP THREADPRIVATE(cooling) |
|---|
| 66 | logical,save :: source_haze,hazeconservch4,haze_ch4proffix |
|---|
| 67 | !$OMP THREADPRIVATE(source_haze,hazeconservch4,haze_ch4proffix) |
|---|
| 68 | logical,save :: ch4lag,tsurfmax |
|---|
| 69 | !$OMP THREADPRIVATE(ch4lag,tsurfmax) |
|---|
| 70 | logical,save :: specalb |
|---|
| 71 | !$OMP THREADPRIVATE(specalb) |
|---|
| 72 | logical,save :: assymflux |
|---|
| 73 | !$OMP THREADPRIVATE(assymflux) |
|---|
| 74 | logical,save :: condmetsurf,condcosurf,vertdiff |
|---|
| 75 | !$OMP THREADPRIVATE(condmetsurf,condcosurf,vertdiff) |
|---|
| 76 | logical,save :: convergeps,conservn2,condensn2,no_n2frost,no_ch4frost |
|---|
| 77 | !$OMP THREADPRIVATE(convergeps,conservn2,condensn2,no_n2frost,no_ch4frost) |
|---|
| 78 | logical,save :: conservch4 |
|---|
| 79 | !$OMP THREADPRIVATE(conservch4) |
|---|
| 80 | logical,save :: kmix_proffix |
|---|
| 81 | !$OMP THREADPRIVATE(kmix_proffix) |
|---|
| 82 | logical,save :: ch4fix,vmrch4_proffix |
|---|
| 83 | !$OMP THREADPRIVATE(ch4fix,vmrch4_proffix) |
|---|
| 84 | integer,save :: nbsub |
|---|
| 85 | !$OMP THREADPRIVATE(nbsub) |
|---|
| 86 | integer,save :: mode_n2 |
|---|
| 87 | !$OMP THREADPRIVATE(mode_n2) |
|---|
| 88 | integer,save :: mode_ch4 |
|---|
| 89 | !$OMP THREADPRIVATE(mode_ch4) |
|---|
| 90 | integer,save :: mode_tholins |
|---|
| 91 | !$OMP THREADPRIVATE(mode_tholins) |
|---|
| 92 | integer,save :: kfix |
|---|
| 93 | !$OMP THREADPRIVATE(kfix) |
|---|
| 94 | integer,save :: mode_hs |
|---|
| 95 | !$OMP THREADPRIVATE(mode_hs) |
|---|
| 96 | integer,save :: feedback_met |
|---|
| 97 | !$OMP THREADPRIVATE(feedback_met) |
|---|
| 98 | integer,save :: patchflux |
|---|
| 99 | !$OMP THREADPRIVATE(patchflux) |
|---|
| 100 | integer,save :: nb_monomer |
|---|
| 101 | !$OMP THREADPRIVATE(nb_monomer) |
|---|
| 102 | real,save :: Nmix_co |
|---|
| 103 | !$OMP THREADPRIVATE(Nmix_co) |
|---|
| 104 | real,save :: Nmix_ch4 |
|---|
| 105 | !$OMP THREADPRIVATE(Nmix_ch4) |
|---|
| 106 | real,save :: tau_n2 |
|---|
| 107 | !$OMP THREADPRIVATE(tau_n2) |
|---|
| 108 | real,save :: tau_ch4 |
|---|
| 109 | !$OMP THREADPRIVATE(tau_ch4) |
|---|
| 110 | real,save :: tau_co |
|---|
| 111 | !$OMP THREADPRIVATE(tau_co) |
|---|
| 112 | real,save :: tau_prechaze |
|---|
| 113 | !$OMP THREADPRIVATE(tau_prechaze) |
|---|
| 114 | real,save :: paleoyears |
|---|
| 115 | !$OMP THREADPRIVATE(paleoyears) |
|---|
| 116 | real,save :: dayfrac |
|---|
| 117 | !$OMP THREADPRIVATE(dayfrac) |
|---|
| 118 | real,save :: thresh_non2 |
|---|
| 119 | !$OMP THREADPRIVATE(thresh_non2) |
|---|
| 120 | real,save :: vmrch4fix |
|---|
| 121 | !$OMP THREADPRIVATE(vmrch4fix) |
|---|
| 122 | real,save :: fluxgeo |
|---|
| 123 | !$OMP THREADPRIVATE(fluxgeo) |
|---|
| 124 | real,save :: fluxgeo2 |
|---|
| 125 | !$OMP THREADPRIVATE(fluxgeo2) |
|---|
| 126 | real,save :: deltab |
|---|
| 127 | !$OMP THREADPRIVATE(deltab) |
|---|
| 128 | real,save :: metlateq |
|---|
| 129 | !$OMP THREADPRIVATE(metlateq) |
|---|
| 130 | real,save :: metls1 |
|---|
| 131 | !$OMP THREADPRIVATE(metls1) |
|---|
| 132 | real,save :: metls2 |
|---|
| 133 | !$OMP THREADPRIVATE(metls2) |
|---|
| 134 | real,save :: tholateq |
|---|
| 135 | !$OMP THREADPRIVATE(tholateq) |
|---|
| 136 | real,save :: tholatn |
|---|
| 137 | !$OMP THREADPRIVATE(tholatn) |
|---|
| 138 | real,save :: tholats |
|---|
| 139 | !$OMP THREADPRIVATE(tholats) |
|---|
| 140 | real,save :: tholone |
|---|
| 141 | !$OMP THREADPRIVATE(tholone) |
|---|
| 142 | real,save :: tholonw |
|---|
| 143 | !$OMP THREADPRIVATE(tholonw) |
|---|
| 144 | real,save :: spelon1 |
|---|
| 145 | !$OMP THREADPRIVATE(spelon1) |
|---|
| 146 | real,save :: spelat2 |
|---|
| 147 | !$OMP THREADPRIVATE(spelat2) |
|---|
| 148 | real,save :: spelat1 |
|---|
| 149 | !$OMP THREADPRIVATE(spelat1) |
|---|
| 150 | real,save :: spelon2 |
|---|
| 151 | !$OMP THREADPRIVATE(spelon2) |
|---|
| 152 | real,save :: latlag |
|---|
| 153 | !$OMP THREADPRIVATE(latlag) |
|---|
| 154 | real,save :: vmrlag |
|---|
| 155 | !$OMP THREADPRIVATE(vmrlag) |
|---|
| 156 | real,save :: albmin_ch4 |
|---|
| 157 | !$OMP THREADPRIVATE(albmin_ch4) |
|---|
| 158 | real,save :: fracsource |
|---|
| 159 | !$OMP THREADPRIVATE(fracsource) |
|---|
| 160 | real,save :: latsource |
|---|
| 161 | !$OMP THREADPRIVATE(latsource) |
|---|
| 162 | real,save :: lonsource |
|---|
| 163 | !$OMP THREADPRIVATE(lonsource) |
|---|
| 164 | real,save :: thres_ch4ice |
|---|
| 165 | !$OMP THREADPRIVATE(thres_ch4ice) |
|---|
| 166 | real,save :: thres_n2ice |
|---|
| 167 | !$OMP THREADPRIVATE(thres_n2ice) |
|---|
| 168 | real,save :: thres_coice |
|---|
| 169 | !$OMP THREADPRIVATE(thres_coice) |
|---|
| 170 | real,save :: fdch4_latn |
|---|
| 171 | !$OMP THREADPRIVATE(fdch4_latn) |
|---|
| 172 | real,save :: fdch4_lats |
|---|
| 173 | !$OMP THREADPRIVATE(fdch4_lats) |
|---|
| 174 | real,save :: fdch4_lone |
|---|
| 175 | !$OMP THREADPRIVATE(fdch4_lone) |
|---|
| 176 | real,save :: fdch4_lonw |
|---|
| 177 | !$OMP THREADPRIVATE(fdch4_lonw) |
|---|
| 178 | real,save :: fdch4_maxice |
|---|
| 179 | !$OMP THREADPRIVATE(fdch4_maxice) |
|---|
| 180 | real,save :: fdch4_maxalb |
|---|
| 181 | !$OMP THREADPRIVATE(fdch4_maxalb) |
|---|
| 182 | real,save :: fdch4_ampl |
|---|
| 183 | !$OMP THREADPRIVATE(fdch4_ampl) |
|---|
| 184 | real,save :: fdch4_depalb |
|---|
| 185 | !$OMP THREADPRIVATE(fdch4_depalb) |
|---|
| 186 | real,save :: fdch4_finalb |
|---|
| 187 | !$OMP THREADPRIVATE(fdch4_finalb) |
|---|
| 188 | real,save :: rad_haze |
|---|
| 189 | !$OMP THREADPRIVATE(rad_haze) |
|---|
| 190 | logical,save :: oldplutovdifc |
|---|
| 191 | !$OMP THREADPRIVATE(oldplutovdifc) |
|---|
| 192 | logical,save :: oldplutocorrk |
|---|
| 193 | !$OMP THREADPRIVATE(oldplutocorrk) |
|---|
| 194 | logical,save :: oldplutosedim |
|---|
| 195 | !$OMP THREADPRIVATE(oldplutosedim) |
|---|
| 196 | logical,save :: global1d |
|---|
| 197 | real,save :: szangle |
|---|
| 198 | !$OMP THREADPRIVATE(global1d,szangle) |
|---|
| 199 | real,save :: alpha_top ! cooling constant at top of atmosphere |
|---|
| 200 | real,save :: pref ! pressure at mid transition fo alpha_top (Pa) |
|---|
| 201 | real,save :: deltap ! width of transition to alpha_top (Pa) |
|---|
| 202 | !$OMP THREADPRIVATE(alpha_top,pref,deltap) |
|---|
| 203 | |
|---|
| 204 | !! Microphysics-specific variables |
|---|
| 205 | logical,save :: callmufi, call_haze_prod_pCH4 |
|---|
| 206 | !$OMP THREADPRIVATE(callmufi,call_haze_prod_pCH4) |
|---|
| 207 | real,save :: haze_p_prod, haze_tx_prod, haze_rc_prod |
|---|
| 208 | real,save :: haze_rm, haze_df, haze_rho |
|---|
| 209 | real,save :: air_rad |
|---|
| 210 | !$OMP THREADPRIVATE(haze_p_prod,haze_tx_prod,haze_rc_prod,haze_rm,haze_df,haze_rho,air_rad) |
|---|
| 211 | |
|---|
| 212 | !! Parameter of conversion precursors to haze (hazecloud.F90) |
|---|
| 213 | real,save :: tcon_ch4, k_ch4, ncratio_ch4 |
|---|
| 214 | !$OMP THREADPRIVATE(tcon_ch4, k_ch4, ncratio_ch4) |
|---|
| 215 | |
|---|
| 216 | !! Variables for aerosol absorption |
|---|
| 217 | real,save :: Fabs_aers_VI, Fabs_aerf_VI, Fabs_aers_IR, Fabs_aerf_IR |
|---|
| 218 | !$OMP THREADPRIVATE(Fabs_aers_VI, Fabs_aerf_VI, Fabs_aers_IR, Fabs_aerf_IR) |
|---|
| 219 | |
|---|
| 220 | integer,save :: iddist |
|---|
| 221 | integer,save :: iaervar |
|---|
| 222 | integer,save :: iradia |
|---|
| 223 | integer,save :: startype |
|---|
| 224 | integer,save :: versH2H2cia |
|---|
| 225 | character(64),save :: H2orthopara_mixture |
|---|
| 226 | !$OMP THREADPRIVATE(iddist,iaervar,iradia,startype,versH2H2cia,H2orthopara_mixture) |
|---|
| 227 | |
|---|
| 228 | real,save :: tplanckmin |
|---|
| 229 | real,save :: tplanckmax |
|---|
| 230 | real,save :: dtplanck |
|---|
| 231 | !$OMP THREADPRIVATE(tplanckmin,tplanckmax,dtplanck) |
|---|
| 232 | real,save :: topdustref |
|---|
| 233 | real,save :: dusttau |
|---|
| 234 | real,save :: Fat1AU |
|---|
| 235 | real,save :: stelTbb |
|---|
| 236 | !$OMP THREADPRIVATE(topdustref,dusttau,Fat1AU,stelTbb) |
|---|
| 237 | real,save :: Tstrat |
|---|
| 238 | real,save :: tplanet |
|---|
| 239 | !$OMP THREADPRIVATE(Tstrat,tplanet) |
|---|
| 240 | real,save :: satval |
|---|
| 241 | real,save :: n2mixratio |
|---|
| 242 | !$OMP THREADPRIVATE(satval,n2mixratio) |
|---|
| 243 | real,save :: n2supsat |
|---|
| 244 | real,save :: pceil |
|---|
| 245 | real,save :: albedosnow |
|---|
| 246 | real,save :: albedon2ice |
|---|
| 247 | real,save :: maxicethick |
|---|
| 248 | !$OMP THREADPRIVATE(n2supsat,pceil,albedosnow,albedon2ice,maxicethick) |
|---|
| 249 | real,save :: Tsaldiff |
|---|
| 250 | real,save :: tau_relax |
|---|
| 251 | real,save :: icetstep |
|---|
| 252 | real,save :: intheat |
|---|
| 253 | !$OMP THREADPRIVATE(Tsaldiff,tau_relax,icetstep,intheat) |
|---|
| 254 | real,save :: surfalbedo |
|---|
| 255 | real,save :: surfemis |
|---|
| 256 | !$OMP THREADPRIVATE(surfalbedo,surfemis) |
|---|
| 257 | real,save :: noseason_day |
|---|
| 258 | !$OMP THREADPRIVATE(noseason_day) |
|---|
| 259 | real,save :: kmixmin |
|---|
| 260 | !$OMP THREADPRIVATE(kmixmin) |
|---|
| 261 | |
|---|
| 262 | logical,save :: iscallphys=.false.!existence of callphys.def |
|---|
| 263 | !$OMP THREADPRIVATE(iscallphys) |
|---|
| 264 | |
|---|
| 265 | ! do we read a startphy.nc file (default=.true.) |
|---|
| 266 | logical,save :: startphy_file=.true. |
|---|
| 267 | !$OMP THREADPRIVATE(startphy_file) |
|---|
| 268 | |
|---|
| 269 | END MODULE callkeys_mod |
|---|