Changeset 278 in lmdz_wrf for trunk/tools
- Timestamp:
- Feb 25, 2015, 11:58:27 AM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tools/nc_var_tools.py
r277 r278 143 143 144 144 return boolv 145 146 147 def variables_values(varName): 148 """ Function to provide values to plot the different variables 149 variables_values(varName) 150 [varName]= name of the variable 151 return: [var name], [std name], [minimum], [maximum], 152 [long name]('|' for spaces), [units], [color palette] (following: 153 http://matplotlib.org/1.3.1/examples/color/colormaps_reference.html) 154 [varn]: original name of the variable 155 NOTE: It might be better doing it with an external ASII file. But then we 156 got an extra dependency... 157 >>> variables_values('WRFght') 158 ['z', 'geopotential_height', 0.0, 80000.0, 'geopotential|height', 'm2s-2', 'rainbow'] 159 """ 160 fname='variables_values' 161 162 if varName == 'h': 163 print fname + '_____________________________________________________________' 164 print variables_values.__doc__ 165 quit() 166 167 # Variable name might come with a statistical surname... 168 stats=['min','max','mean','stdv'] 169 170 ifst = False 171 for st in stats: 172 if varName.find(st) > -1: 173 print ' '+ fname + ": varibale '" + varName + "' with a statistical "+\ 174 " surname: '",st,"' !!" 175 Lst = len(st) 176 LvarName = len(varName) 177 varn = varName[0:LvarName - Lst] 178 ifst = True 179 break 180 if not ifst: 181 varn = varName 182 183 if varn[0:6] == 'varDIM': 184 # Variable from a dimension (all with 'varDIM' prefix) 185 Lvarn = len(varn) 186 varvals = [varn[6:Lvarn+1], varn[6:Lvarn+1], 0., 1., \ 187 "variable|from|size|of|dimension|'" + varn[6:Lvarn+1] + "'", '1', 'rainbox'] 188 elif varn == 'a_tht' or varn == 'LA_THT': 189 varvals = ['ath', 'total_thermal_plume_cover', 0., 1., \ 190 'total|column|thermal|plume|cover', '1', 'YlGnBu'] 191 elif varn == 'bils' or varn == 'LBILS': 192 varvals = ['bils', 'surface_total_heat_flux', -100., 100., \ 193 'surface|total|heat|flux', 'Wm-2', 'seismic'] 194 elif varn == 'landcat' or varn == 'category': 195 varvals = ['landcat', 'land_categories', 0., 22., 'land|categories', '1', \ 196 'rainbow'] 197 elif varn == 'c' or varn == 'QCLOUD' or varn == 'oliq' or varn == 'OLIQ': 198 varvals = ['c', 'condensed_water_mixing_ratio', 0., 3.e-4, \ 199 'condensed|water|mixing|ratio', 'kgkg-1', 'BuPu'] 200 elif varn == 'ci' or varn == 'iwcon' or varn == 'LIWCON': 201 varvals = ['ci', 'cloud_iced_water_mixing_ratio', 0., 0.0003, \ 202 'cloud|iced|water|mixing|ratio', 'kgkg-1', 'Purples'] 203 elif varn == 'cl' or varn == 'lwcon' or varn == 'LLWCON': 204 varvals = ['cl', 'cloud_liquidwater_mixing_ratio', 0., 0.0003, \ 205 'cloud|liquid|water|mixing|ratio', 'kgkg-1', 'Blues'] 206 elif varn == 'cld' or varn == 'CLDFRA' or varn == 'rneb' or varn == 'lrneb' or \ 207 varn == 'LRNEB': 208 varvals = ['cld', 'cloud_area_fraction', 0., 1., 'cloud|fraction', '1', \ 209 'gist_gray'] 210 elif varn == 'cldc' or varn == 'rnebcon' or varn == 'lrnebcon' or \ 211 varn == 'LRNEBCON': 212 varvals = ['cldc', 'convective_cloud_area_fraction', 0., 1., \ 213 'convective|cloud|fraction', '1', 'gist_gray'] 214 elif varn == 'cldl' or varn == 'rnebls' or varn == 'lrnebls' or varn == 'LRNEBLS': 215 varvals = ['cldl', 'large_scale_cloud_area_fraction', 0., 1., \ 216 'large|scale|cloud|fraction', '1', 'gist_gray'] 217 elif varn == 'clt' or varn == 'CLT' or varn == 'cldt' or \ 218 varn == 'Total cloudiness': 219 varvals = ['clt', 'cloud_area_fraction', 0., 1., 'total|cloud|cover', '1', \ 220 'gist_gray'] 221 elif varn == 'cll' or varn == 'cldl' or varn == 'LCLDL' or \ 222 varn == 'Low-level cloudiness': 223 varvals = ['cll', 'low_level_cloud_area_fraction', 0., 1., \ 224 'low|level|(p|>|680|hPa)|cloud|fraction', '1', 'gist_gray'] 225 elif varn == 'clm' or varn == 'cldm' or varn == 'LCLDM' or \ 226 varn == 'Mid-level cloudiness': 227 varvals = ['clm', 'mid_level_cloud_area_fraction', 0., 1., \ 228 'medium|level|(440|<|p|<|680|hPa)|cloud|fraction', '1', 'gist_gray'] 229 elif varn == 'clh' or varn == 'cldh' or varn == 'LCLDH' or \ 230 varn == 'High-level cloudiness': 231 varvals = ['clh', 'high_level_cloud_area_fraction', 0., 1., \ 232 'high|level|(p|<|440|hPa)|cloud|fraction', '1', 'gist_gray'] 233 elif varn == 'clmf' or varn == 'fbase' or varn == 'LFBASE': 234 varvals = ['clmf', 'cloud_base_max_flux', -0.3, 0.3, 'cloud|base|max|flux', \ 235 'kgm-2s-1', 'seismic'] 236 elif varn == 'clp' or varn == 'pbase' or varn == 'LPBASE': 237 varvals = ['clp', 'cloud_base_pressure', -0.3, 0.3, 'cloud|base|pressure', \ 238 'Pa', 'Reds'] 239 elif varn == 'cpt' or varn == 'ptconv' or varn == 'LPTCONV': 240 varvals = ['cpt', 'convective_point', 0., 1., 'convective|point', '1', \ 241 'seismic'] 242 elif varn == 'dqajs' or varn == 'LDQAJS': 243 varvals = ['dqajs', 'dry_adjustment_water_vapor_tendency', -0.0003, 0.0003, \ 244 'dry|adjustment|water|vapor|tendency', 'kg/kg/s', 'seismic'] 245 elif varn == 'dqcon' or varn == 'LDQCON': 246 varvals = ['dqcon', 'convective_water_vapor_tendency', -3e-8, 3.e-8, \ 247 'convective|water|vapor|tendency', 'kg/kg/s', 'seismic'] 248 elif varn == 'dqdyn' or varn == 'LDQDYN': 249 varvals = ['dqdyn', 'dynamics_water_vapor_tendency', -3.e-7, 3.e-7, \ 250 'dynamics|water|vapor|tendency', 'kg/kg/s', 'seismic'] 251 elif varn == 'dqeva' or varn == 'LDQEVA': 252 varvals = ['dqeva', 'evaporation_water_vapor_tendency', -3.e-6, 3.e-6, \ 253 'evaporation|water|vapor|tendency', 'kg/kg/s', 'seismic'] 254 elif varn == 'dqlscst' or varn == 'LDQLSCST': 255 varvals = ['dqlscst', 'stratocumulus_water_vapor_tendency', -3.e-7, 3.e-7, \ 256 'stratocumulus|water|vapor|tendency', 'kg/kg/s', 'seismic'] 257 elif varn == 'dqlscth' or varn == 'LDQLSCTH': 258 varvals = ['dqlscth', 'thermals_water_vapor_tendency', -3.e-7, 3.e-7, \ 259 'thermal|plumes|water|vapor|tendency', 'kg/kg/s', 'seismic'] 260 elif varn == 'dqlsc' or varn == 'LDQLSC': 261 varvals = ['dqlsc', 'condensation_water_vapor_tendency', -3.e-6, 3.e-6, \ 262 'condensation|water|vapor|tendency', 'kg/kg/s', 'seismic'] 263 elif varn == 'dqphy' or varn == 'LDQPHY': 264 varvals = ['dqphy', 'physics_water_vapor_tendency', -3.e-7, 3.e-7, \ 265 'physics|water|vapor|tendency', 'kg/kg/s', 'seismic'] 266 elif varn == 'dqthe' or varn == 'LDQTHE': 267 varvals = ['dqthe', 'thermals_water_vapor_tendency', -3.e-7, 3.e-7, \ 268 'thermal|plumes|water|vapor|tendency', 'kg/kg/s', 'seismic'] 269 elif varn == 'dqvdf' or varn == 'LDQVDF': 270 varvals = ['dqvdf', 'vertical_difussion_water_vapor_tendency', -3.e-8, 3.e-8,\ 271 'vertical|difussion|water|vapor|tendency', 'kg/kg/s', 'seismic'] 272 elif varn == 'dqwak' or varn == 'LDQWAK': 273 varvals = ['dqwak', 'wake_water_vapor_tendency', -3.e-7, 3.e-7, \ 274 'wake|water|vapor|tendency', 'kg/kg/s', 'seismic'] 275 elif varn == 'dta' or varn == 'tnt' or varn == 'LTNT': 276 varvals = ['dta', 'tendency_air_temperature', -3.e-3, 3.e-3, \ 277 'tendency|of|air|temperature', 'K/s', 'seismic'] 278 elif varn == 'dtac' or varn == 'tntc' or varn == 'LTNTC': 279 varvals = ['dtac', 'moist_convection_tendency_air_temperature', -3.e-3, \ 280 3.e-3, 'moist|convection|tendency|of|air|temperature', 'K/s', 'seismic'] 281 elif varn == 'dtar' or varn == 'tntr' or varn == 'LTNTR': 282 varvals = ['dtar', 'radiative_heating_tendency_air_temperature', -3.e-3, \ 283 3.e-3, 'radiative|heating|tendency|of|air|temperature', 'K/s', 'seismic'] 284 elif varn == 'dtascpbl' or varn == 'tntscpbl' or varn == 'LTNTSCPBL': 285 varvals = ['dtascpbl', \ 286 'stratiform_cloud_precipitation_BL_mixing_tendency_air_temperature', \ 287 -3.e-6, 3.e-6, \ 288 'stratiform|cloud|precipitation|Boundary|Layer|mixing|tendency|air|' + 289 'temperature', 'K/s', 'seismic'] 290 elif varn == 'dtajs' or varn == 'LDTAJS': 291 varvals = ['dtajs', 'dry_adjustment_thermal_tendency', -3.e-5, 3.e-5, \ 292 'dry|adjustment|thermal|tendency', 'K/s', 'seismic'] 293 elif varn == 'dtcon' or varn == 'LDTCON': 294 varvals = ['dtcon', 'convective_thermal_tendency', -3.e-5, 3.e-5, \ 295 'convective|thermal|tendency', 'K/s', 'seismic'] 296 elif varn == 'dtdyn' or varn == 'LDTDYN': 297 varvals = ['dtdyn', 'dynamics_thermal_tendency', -3.e-4, 3.e-4, \ 298 'dynamics|thermal|tendency', 'K/s', 'seismic'] 299 elif varn == 'dteva' or varn == 'LDTEVA': 300 varvals = ['dteva', 'evaporation_thermal_tendency', -3.e-3, 3.e-3, \ 301 'evaporation|thermal|tendency', 'K/s', 'seismic'] 302 elif varn == 'dtlscst' or varn == 'LDTLSCST': 303 varvals = ['dtlscst', 'stratocumulus_thermal_tendency', -3.e-4, 3.e-4, \ 304 'stratocumulus|thermal|tendency', 'K/s', 'seismic'] 305 elif varn == 'dtlscth' or varn == 'LDTLSCTH': 306 varvals = ['dtlscth', 'thermals_thermal_tendency', -3.e-4, 3.e-4, \ 307 'thermal|plumes|thermal|tendency', 'K/s', 'seismic'] 308 elif varn == 'dtlsc' or varn == 'LDTLSC': 309 varvals = ['dtlsc', 'condensation_thermal_tendency', -3.e-3, 3.e-3, \ 310 'condensation|thermal|tendency', 'K/s', 'seismic'] 311 elif varn == 'dtlwr' or varn == 'LDTLWR': 312 varvals = ['dtlwr', 'long_wave_thermal_tendency', -3.e-3, 3.e-3, \ 313 'long|wave|radiation|thermal|tendency', 'K/s', 'seismic'] 314 elif varn == 'dtphy' or varn == 'LDTPHY': 315 varvals = ['dtphy', 'physics_thermal_tendency', -3.e-4, 3.e-4, \ 316 'physics|thermal|tendency', 'K/s', 'seismic'] 317 elif varn == 'dtsw0' or varn == 'LDTSW0': 318 varvals = ['dtsw0', 'cloudy_sky_short_wave_thermal_tendency', -3.e-4, 3.e-4, \ 319 'cloudy|sky|short|wave|radiation|thermal|tendency', 'K/s', 'seismic'] 320 elif varn == 'dtthe' or varn == 'LDTTHE': 321 varvals = ['dtthe', 'thermals_thermal_tendency', -3.e-4, 3.e-4, \ 322 'thermal|plumes|thermal|tendency', 'K/s', 'seismic'] 323 elif varn == 'dtvdf' or varn == 'LDTVDF': 324 varvals = ['dtvdf', 'vertical_difussion_thermal_tendency', -3.e-5, 3.e-5, \ 325 'vertical|difussion|thermal|tendency', 'K/s', 'seismic'] 326 elif varn == 'dtwak' or varn == 'LDTWAK': 327 varvals = ['dtwak', 'wake_thermal_tendency', -3.e-4, 3.e-4, \ 328 'wake|thermal|tendency', 'K/s', 'seismic'] 329 elif varn == 'ducon' or varn == 'LDUCON': 330 varvals = ['ducon', 'convective_eastward_wind_tendency', -3.e-3, 3.e-3, \ 331 'convective|eastward|wind|tendency', 'ms-2', 'seismic'] 332 elif varn == 'dudyn' or varn == 'LDUDYN': 333 varvals = ['dudyn', 'dynamics_eastward_wind_tendency', -3.e-3, 3.e-3, \ 334 'dynamics|eastward|wind|tendency', 'ms-2', 'seismic'] 335 elif varn == 'duvdf' or varn == 'LDUVDF': 336 varvals = ['duvdf', 'vertical_difussion_eastward_wind_tendency', -3.e-3, \ 337 3.e-3, 'vertical|difussion|eastward|wind|tendency', 'ms-2', 'seismic'] 338 elif varn == 'dvcon' or varn == 'LDVCON': 339 varvals = ['dvcon', 'convective_difussion_northward_wind_tendency', -3.e-3, \ 340 3.e-3, 'convective|northward|wind|tendency', 'ms-2', 'seismic'] 341 elif varn == 'dvdyn' or varn == 'LDVDYN': 342 varvals = ['dvdyn', 'dynamics_northward_wind_tendency', -3.e-3, \ 343 3.e-3, 'dynamics|difussion|northward|wind|tendency', 'ms-2', 'seismic'] 344 elif varn == 'dvvdf' or varn == 'LDVVDF': 345 varvals = ['dvvdf', 'vertical_difussion_northward_wind_tendency', -3.e-3, \ 346 3.e-3, 'vertical|difussion|northward|wind|tendency', 'ms-2', 'seismic'] 347 elif varn == 'evspsbl' or varn == 'LEVAP' or varn == 'evap': 348 varvals = ['evspsbl', 'water_evaporation_flux', 0., 1.5e-4, \ 349 'water|evaporation|flux', 'kgm-2s-1', 'Blues'] 350 elif varn == 'g' or varn == 'QGRAUPEL': 351 varvals = ['g', 'grauepl_mixing_ratio', 0., 0.0003, 'graupel|mixing|ratio', \ 352 'kgkg-1', 'Purples'] 353 elif varn == 'h2o' or varn == 'LH2O': 354 varvals = ['h2o', 'water_mass_fraction', 0., 3.e-2, \ 355 'mass|fraction|of|water', '1', 'Blues'] 356 elif varn == 'h' or varn == 'QHAIL': 357 varvals = ['h', 'hail_mixing_ratio', 0., 0.0003, 'hail|mixing|ratio', \ 358 'kgkg-1', 'Purples'] 359 elif varn == 'hfls' or varn == 'LH' or varn == 'LFLAT' or varn == 'flat': 360 varvals = ['hfls', 'surface_upward_latent_heat_flux', -400., 400., \ 361 'upward|latnt|heat|flux|at|the|surface', 'Wm-2', 'seismic'] 362 elif varn == 'hfss' or varn == 'LSENS' or varn == 'sens': 363 varvals = ['hfss', 'surface_upward_sensible_heat_flux', -150., 150., \ 364 'upward|sensible|heat|flux|at|the|surface', 'Wm-2', 'seismic'] 365 elif varn == 'hus' or varn == 'WRFrh' or varn == 'LMDZrh' or varn == 'rhum' or \ 366 varn == 'LRHUM': 367 varvals = ['hus', 'specific_humidity', 0., 1., 'specific|humidty', '1', \ 368 'BuPu'] 369 elif varn == 'huss' or varn == 'WRFrhs' or varn == 'LMDZrhs' or varn == 'rh2m' or\ 370 varn == 'LRH2M': 371 varvals = ['huss', 'specific_humidity', 0., 1., 'specific|humidty|at|2m', \ 372 '1', 'BuPu'] 373 elif varn == 'i' or varn == 'QICE': 374 varvals = ['i', 'iced_water_mixing_ratio', 0., 0.0003, \ 375 'iced|water|mixing|ratio', 'kgkg-1', 'Purples'] 376 elif varn == 'lat' or varn == 'XLAT' or varn == 'XLAT_M' or varn == 'latitude': 377 varvals = ['lat', 'latitude', -90., 90., 'latitude', 'degrees North', \ 378 'seismic'] 379 elif varn == 'lcl' or varn == 's_lcl' or varn == 'ls_lcl' or varn == 'LS_LCL': 380 varvals = ['lcl', 'condensation_level', 0., 2500., 'level|of|condensation', \ 381 'm', 'Greens'] 382 elif varn == 'lambdath' or varn == 'lambda_th' or varn == 'LLAMBDA_TH': 383 varvals = ['lambdath', 'thermal_plume_vertical_velocity', -30., 30., \ 384 'thermal|plume|vertical|velocity', 'm/s', 'seismic'] 385 elif varn == 'lmaxth' or varn == 'LLMAXTH': 386 varvals = ['lmaxth', 'upper_level_thermals', 0., 100., 'upper|level|thermals'\ 387 , '1', 'Greens'] 388 elif varn == 'lon' or varn == 'XLONG' or varn == 'XLONG_M': 389 varvals = ['lon', 'longitude', -180., 180., 'longitude', 'degrees East', \ 390 'seismic'] 391 elif varn == 'longitude': 392 varvals = ['lon', 'longitude', 0., 360., 'longitude', 'degrees East', \ 393 'seismic'] 394 elif varn == 'orog' or varn == 'HGT' or varn == 'HGT_M': 395 varvals = ['orog', 'orography', 0., 3000., 'surface|altitude', 'm','terrain'] 396 elif varn == 'pfc' or varn == 'plfc' or varn == 'LPLFC': 397 varvals = ['pfc', 'pressure_free_convection', 100., 1100., \ 398 'pressure|free|convection', 'hPa', 'BuPu'] 399 elif varn == 'plcl' or varn == 'LPLCL': 400 varvals = ['plcl', 'pressure_lifting_condensation_level', 700., 1100., \ 401 'pressure|lifting|condensation|level', 'hPa', 'BuPu'] 402 elif varn == 'pr' or varn == 'RAINTOT' or varn == 'precip' or \ 403 varn == 'LPRECIP' or varn == 'Precip Totale liq+sol': 404 varvals = ['pr', 'precipitation_flux', 0., 1.e-4, 'precipitation|flux', \ 405 'kgm-2s-1', 'BuPu'] 406 elif varn == 'prprof' or varn == 'vprecip' or varn == 'LVPRECIP': 407 varvals = ['prprof', 'precipitation_profile', 0., 1.e-3, \ 408 'precipitation|profile', 'kg/m2/s', 'BuPu'] 409 elif varn == 'prprofci' or varn == 'pr_con_i' or varn == 'LPR_CON_I': 410 varvals = ['prprofci', 'precipitation_profile_convective_i', 0., 1.e-3, \ 411 'precipitation|profile|convective|i', 'kg/m2/s', 'BuPu'] 412 elif varn == 'prprofcl' or varn == 'pr_con_l' or varn == 'LPR_CON_L': 413 varvals = ['prprofcl', 'precipitation_profile_convective_l', 0., 1.e-3, \ 414 'precipitation|profile|convective|l', 'kg/m2/s', 'BuPu'] 415 elif varn == 'prprofli' or varn == 'pr_lsc_i' or varn == 'LPR_LSC_I': 416 varvals = ['prprofli', 'precipitation_profile_large_scale_i', 0., 1.e-3, \ 417 'precipitation|profile|large|scale|i', 'kg/m2/s', 'BuPu'] 418 elif varn == 'prprofll' or varn == 'pr_lsc_l' or varn == 'LPR_LSC_L': 419 varvals = ['prprofll', 'precipitation_profile_large_scale_l', 0., 1.e-3, \ 420 'precipitation|profile|large|scale|l', 'kg/m2/s', 'BuPu'] 421 elif varn == 'pracc' or varn == 'ACRAINTOT': 422 varvals = ['pracc', 'precipitation_amount', 0., 100., \ 423 'accumulated|precipitation', 'kgm-2', 'BuPu'] 424 elif varn == 'prc' or varn == 'LPLUC' or varn == 'pluc' or varn == 'WRFprc': 425 varvals = ['prc', 'convective_precipitation_flux', 0., 2.e-4, \ 426 'convective|precipitation|flux', 'kgm-2s-1', 'Blues'] 427 elif varn == 'prci' or varn == 'pr_con_i' or varn == 'LPR_CON_I': 428 varvals = ['prci', 'convective_ice_precipitation_flux', 0., 0.003, \ 429 'convective|ice|precipitation|flux', 'kgm-2s-1', 'Purples'] 430 elif varn == 'prcl' or varn == 'pr_con_l' or varn == 'LPR_CON_L': 431 varvals = ['prcl', 'convective_liquid_precipitation_flux', 0., 0.003, \ 432 'convective|liquid|precipitation|flux', 'kgm-2s-1', 'Blues'] 433 elif varn == 'pres' or varn == 'presnivs' or varn == 'pressure' or \ 434 varn == 'lpres' or varn == 'LPRES': 435 varvals = ['pres', 'air_pressure', 0., 103000., 'air|pressure', 'Pa', \ 436 'Blues'] 437 elif varn == 'prls' or varn == 'WRFprls' or varn == 'LPLUL' or varn == 'plul': 438 varvals = ['prls', 'large_scale_precipitation_flux', 0., 2.e-4, \ 439 'large|scale|precipitation|flux', 'kgm-2s-1', 'Blues'] 440 elif varn == 'prsn' or varn == 'SNOW' or varn == 'snow' or varn == 'LSNOW': 441 varvals = ['prsn', 'snowfall', 0., 1.e-4, 'snowfall|flux', 'kgm-2s-1', 'BuPu'] 442 elif varn == 'prw' or varn == 'WRFprh': 443 varvals = ['prw', 'atmosphere_water_vapor_content', 0., 10., \ 444 'water|vapor"path', 'kgm-2', 'Blues'] 445 elif varn == 'ps' or varn == 'psfc' or varn =='PSFC' or varn == 'psol' or \ 446 varn == 'Surface Pressure': 447 varvals=['ps', 'surface_air_pressure', 85000., 105400., 'surface|pressure', \ 448 'hPa', 'cool'] 449 elif varn == 'psl' or varn == 'mslp' or varn =='WRFmslp': 450 varvals=['psl', 'air_pressure_at_sea_level', 85000., 104000., \ 451 'mean|sea|level|pressure', 'Pa', 'Greens'] 452 elif varn == 'qth' or varn == 'q_th' or varn == 'LQ_TH': 453 varvals = ['qth', 'thermal_plume_total_water_content', 0., 25., \ 454 'total|water|cotent|in|thermal|plume', 'mm', 'YlOrRd'] 455 elif varn == 'r' or varn == 'QVAPOR' or varn == 'ovap' or varn == 'LOVAP': 456 varvals = ['r', 'water_mixing_ratio', 0., 0.03, 'water|mixing|ratio', \ 457 'kgkg-1', 'BuPu'] 458 elif varn == 'rsds' or varn == 'SWdnSFC' or varn == 'SWdn at surface' or \ 459 varn == 'SWDOWN': 460 varvals=['rsds', 'surface_downwelling_shortwave_flux_in_air', 0., 1200., \ 461 'downward|SW|surface|radiation', 'Wm-2' ,'Reds'] 462 elif varn == 'rsdsacc': 463 varvals=['rsdsacc', 'accumulated_surface_downwelling_shortwave_flux_in_air', \ 464 0., 1200., 'accumulated|downward|SW|surface|radiation', 'Wm-2' ,'Reds'] 465 elif varn == 'rvor' or varn == 'WRFrvor': 466 varvals = ['rvor', 'air_relative_vorticity', -2.5E-3, 2.5E-3, \ 467 'air|relative|vorticity', 's-1', 'seismic'] 468 elif varn == 'rvors' or varn == 'WRFrvors': 469 varvals = ['rvors', 'surface_air_relative_vorticity', -2.5E-3, 2.5E-3, \ 470 'surface|air|relative|vorticity', 's-1', 'seismic'] 471 elif varn == 's' or varn == 'QSNOW': 472 varvals = ['s', 'snow_mixing_ratio', 0., 0.0003, 'snow|mixing|ratio', \ 473 'kgkg-1', 'Purples'] 474 elif varn == 'stherm' or varn == 'LS_THERM': 475 varvals = ['stherm', 'thermals_excess', 0., 0.8, 'thermals|excess', 'K', \ 476 'Reds'] 477 elif varn == 'ta' or varn == 'WRFt' or varn == 'temp' or varn == 'LTEMP' or \ 478 varn == 'Air temperature': 479 varvals = ['ta', 'air_temperature', 195., 320., 'air|temperature', 'K', \ 480 'YlOrRd'] 481 elif varn == 'tah' or varn == 'theta' or varn == 'LTHETA': 482 varvals = ['tah', 'potential_air_temperature', 195., 320., \ 483 'potential|air|temperature', 'K', 'YlOrRd'] 484 elif varn == 'tas' or varn == 'T2' or varn == 't2m' or varn == 'T2M' or \ 485 varn == 'Temperature 2m': 486 varvals = ['tas', 'air_temperature', 240., 310., 'air|temperature|at|2m', ' \ 487 K', 'YlOrRd'] 488 elif varn == 'tds' or varn == 'TH2': 489 varvals = ['tds', 'air_dew_point_temperature', 240., 310., \ 490 'air|dew|point|temperature|at|2m', 'K', 'YlGnBu'] 491 elif varn == 'tke' or varn == 'TKE' or varn == 'tke' or varn == 'LTKE': 492 varvals = ['tke', 'turbulent_kinetic_energy', 0., 0.003, \ 493 'turbulent|kinetic|energy', 'm2/s2', 'Reds'] 494 elif varn == 'time'or varn == 'time_counter': 495 varvals = ['time', 'time', 0., 1000., 'time', \ 496 'hours|since|1949/12/01|00:00:00', 'Reds'] 497 elif varn == 'tmla' or varn == 's_pblt' or varn == 'LS_PBLT': 498 varvals = ['tmla', 'atmosphere_top_boundary_layer_temperature', 250., 330., \ 499 'atmosphere|top|boundary|layer|temperature', 'K', 'Reds'] 500 elif varn == 'ua' or varn == 'vitu' or varn == 'U' or varn == 'Zonal wind' or \ 501 varn == 'LVITU': 502 varvals = ['ua', 'eastward_wind', -30., 30., 'eastward|wind', 'ms-1', \ 503 'seismic'] 504 elif varn == 'uas' or varn == 'u10m' or varn == 'U10' or varn =='Vent zonal 10m': 505 varvals = ['uas', 'eastward_wind', -30., 30., 'eastward|2m|wind', \ 506 'ms-1', 'seismic'] 507 elif varn == 'va' or varn == 'vitv' or varn == 'V' or varn == 'Meridional wind' \ 508 or varn == 'LVITV': 509 varvals = ['va', 'northward_wind', -30., 30., 'northward|wind', 'ms-1', \ 510 'seismic'] 511 elif varn == 'vas' or varn == 'v10m' or varn == 'V10' or \ 512 varn =='Vent meridien 10m': 513 varvals = ['vas', 'northward_wind', -30., 30., 'northward|2m|wind', 'ms-1', \ 514 'seismic'] 515 elif varn == 'wakedeltaq' or varn == 'wake_deltaq' or varn == 'lwake_deltaq' or \ 516 varn == 'LWAKE_DELTAQ': 517 varvals = ['wakedeltaq', 'wake_delta_vapor', -0.003, 0.003, \ 518 'wake|delta|mixing|ratio', '-', 'seismic'] 519 elif varn == 'wakedeltat' or varn == 'wake_deltat' or varn == 'lwake_deltat' or \ 520 varn == 'LWAKE_DELTAT': 521 varvals = ['wakedeltat', 'wake_delta_temp', -0.003, 0.003, \ 522 'wake|delta|temperature', '-', 'seismic'] 523 elif varn == 'wakeh' or varn == 'wake_h' or varn == 'LWAKE_H': 524 varvals = ['wakeh', 'wake_height', 0., 1000., 'height|of|the|wakes', 'm', \ 525 'YlOrRd'] 526 elif varn == 'wakeomg' or varn == 'wake_omg' or varn == 'lwake_omg' or \ 527 varn == 'LWAKE_OMG': 528 varvals = ['wakeomg', 'wake_omega', 0., 3., 'wake|omega', \ 529 '-', 'BuGn'] 530 elif varn == 'wakes' or varn == 'wake_s' or varn == 'LWAKE_S': 531 varvals = ['wakes', 'wake_area_fraction', 0., 0.5, 'wake|spatial|fraction', \ 532 '1', 'BuGn'] 533 elif varn == 'wa' or varn == 'W' or varn == 'Vertical wind': 534 varvals = ['wa', 'upward_wind', -10., 10., 'upward|wind', 'ms-1', \ 535 'seismic'] 536 elif varn == 'wap' or varn == 'vitw' or varn == 'LVITW': 537 varvals = ['wap', 'upward_wind', -3.e-10, 3.e-10, 'upward|wind', 'mPa-1', \ 538 'seismic'] 539 elif varn == 'wss' or varn == 'SPDUV': 540 varvals = ['wss', 'air_velocity', 0., 30., 'surface|horizontal|wind|speed', \ 541 'ms-1', 'Reds'] 542 elif varn == 'xtime' or varn == 'XTIME': 543 varvals = ['xtime', 'time', 0., 1.e5, 'time', \ 544 'minutes|since|simulation|start', 'Reds'] 545 elif varn == 'x' or varn == 'X': 546 varvals = ['x', 'x', 0., 100., 'x', '-', 'Reds'] 547 elif varn == 'y' or varn == 'Y': 548 varvals = ['y', 'y', 0., 100., 'y', '-', 'Blues'] 549 elif varn == 'z' or varn == 'Z': 550 varvals = ['z', 'z', 0., 100., 'z', '-', 'Greens'] 551 elif varn == 'zg' or varn == 'WRFght' or varn == 'Geopotential height' or \ 552 varn == 'geop' or varn == 'LGEOP': 553 varvals = ['zg', 'geopotential_height', 0., 80000., 'geopotential|height', \ 554 'm2s-2', 'rainbow'] 555 elif varn == 'zmaxth' or varn == 'zmax_th' or varn == 'LZMAX_TH': 556 varvals = ['zmaxth', 'thermal_plume_height', 0., 4000., \ 557 'maximum|thermals|plume|height', 'm', 'YlOrRd'] 558 elif varn == 'zmla' or varn == 's_pblh' or varn == 'LS_PBLH': 559 varvals = ['zmla', 'atmosphere_boundary_layer_thickness', 0., 2500., \ 560 'atmosphere|boundary|layer|thickness', 'm', 'Blues'] 561 else: 562 print errormsg 563 print ' ' + fname + ': variable ' + varn + ' not defined !!!' 564 quit(-1) 565 566 return varvals 567 145 568 146 569 ####### ###### ##### #### ### ## # … … 11350 11773 #file_oper_alongdims('time:-1|z:-1|x:-1|y:-1,time:y,mean,pressure:lat', '/home/lluis/etudes/WRF_LMDZ/WaquaL/WRF_LMDZ/AR40/vertical_interpolation_WRFp.nc', 'WRFt') 11351 11774 11352 11353 def variables_values(varName):11354 """ Function to provide values to plot the different variables11355 variables_values(varName)11356 [varName]= name of the variable11357 return: [var name], [std name], [minimum], [maximum],11358 [long name]('|' for spaces), [units], [color palette] (following:11359 http://matplotlib.org/1.3.1/examples/color/colormaps_reference.html)11360 [varn]: original name of the variable11361 NOTE: It might be better doing it with an external ASII file. But then we11362 got an extra dependency...11363 >>> variables_values('WRFght')11364 ['z', 'geopotential_height', 0.0, 80000.0, 'geopotential|height', 'm2s-2', 'rainbow']11365 """11366 fname='variables_values'11367 11368 if varName == 'h':11369 print fname + '_____________________________________________________________'11370 print variables_values.__doc__11371 quit()11372 11373 # Variable name might come with a statistical surname...11374 stats = ['min','max','mean','stdv','turb']11375 statsLong = {'min':'minimum', 'max':'maximum', 'mean':'mean', \11376 'stdv':'standard deviation', 'turb':'turbulence'}11377 11378 ifst = False11379 for st in stats:11380 if varName.find(st) > -1:11381 print ' '+ fname + ": varibale '" + varName + "' with a statistical "+\11382 " surname: '",st,"' !!"11383 Lst = len(st)11384 LvarName = len(varName)11385 varn = varName[0:LvarName - Lst]11386 ifst = True11387 stname = st11388 break11389 if not ifst:11390 varn = varName11391 11392 if varn[0:6] == 'varDIM':11393 # Variable from a dimension (all with 'varDIM' prefix)11394 Lvarn = len(varn)11395 varvals = [varn[6:Lvarn+1], varn[6:Lvarn+1], 0., 1., \11396 "variable|from|size|of|dimension|'" + varn[6:Lvarn+1] + "'", '1', 'rainbox']11397 elif varn == 'a_tht' or varn == 'LA_THT':11398 varvals = ['a_th', 'total_thermal_plume_cover', 0., 1., \11399 'total|column|thermal|plume|cover', '1', 'YlGnBu']11400 elif varn == 'bils' or varn == 'LBILS':11401 varvals = ['bils', 'surface_total_heat_flux', -100., 100., \11402 'surface|total|heat|flux', 'Wm-2', 'seismic']11403 elif varn == 'landcat' or varn == 'category':11404 varvals = ['landcat', 'land_categories', 0., 22., 'land|categories', '1', \11405 'rainbow']11406 elif varn == 'c' or varn == 'QCLOUD' or varn == 'oliq' or varn == 'OLIQ':11407 varvals = ['c', 'condensed_water_mixing_ratio', 0., 3.e-4, \11408 'condensed|water|mixing|ratio', 'kgkg-1', 'BuPu']11409 elif varn == 'clt' or varn == 'CLT' or varn == 'cldt' or \11410 varn == 'Total cloudiness':11411 varvals = ['clt', 'cloud_area_fraction', 0., 1., 'total|cloud|cover', '1', \11412 'gist_gray']11413 elif varn == 'cll' or varn == 'cldl' or varn == 'LCLDL' or \11414 varn == 'Low-level cloudiness':11415 varvals = ['cll', 'low_level_cloud_area_fraction', 0., 1., \11416 'low|level|(p|>|680|hPa)|cloud|fraction', '1', 'gist_gray']11417 elif varn == 'clm' or varn == 'cldm' or varn == 'LCLDM' or \11418 varn == 'Mid-level cloudiness':11419 varvals = ['clm', 'mid_level_cloud_area_fraction', 0., 1., \11420 'medium|level|(440|<|p|<|680|hPa)|cloud|fraction', '1', 'gist_gray']11421 elif varn == 'clh' or varn == 'cldh' or varn == 'LCLDH' or \11422 varn == 'High-level cloudiness':11423 varvals = ['clh', 'high_level_cloud_area_fraction', 0., 1., \11424 'high|level|(p|<|440|hPa)|cloud|fraction', '1', 'gist_gray']11425 elif varn == 'dqajs' or varn == 'LDQAJS':11426 varvals = ['dqajs', 'dry_adjustment_water_vapor_tendency', -0.0003, 0.0003, \11427 'dry|adjustment|water|vapor|tendency', 'kg/kg/s', 'seismic']11428 elif varn == 'dqcon' or varn == 'LDQCON':11429 varvals = ['dqcon', 'convective_water_vapor_tendency', -3e-8, 3.e-8, \11430 'convective|water|vapor|tendency', 'kg/kg/s', 'seismic']11431 elif varn == 'dqdyn' or varn == 'LDQDYN':11432 varvals = ['dqdyn', 'dynamics_water_vapor_tendency', -3.e-7, 3.e-7, \11433 'dynamics|water|vapor|tendency', 'kg/kg/s', 'seismic']11434 elif varn == 'dqeva' or varn == 'LDQEVA':11435 varvals = ['dqeva', 'evaporation_water_vapor_tendency', -3.e-6, 3.e-6, \11436 'evaporation|water|vapor|tendency', 'kg/kg/s', 'seismic']11437 elif varn == 'dqlscst' or varn == 'LDQLSCST':11438 varvals = ['dqlscst', 'stratocumulus_water_vapor_tendency', -3.e-7, 3.e-7, \11439 'stratocumulus|water|vapor|tendency', 'kg/kg/s', 'seismic']11440 elif varn == 'dqlscth' or varn == 'LDQLSCTH':11441 varvals = ['dqlscth', 'thermals_water_vapor_tendency', -3.e-7, 3.e-7, \11442 'thermal|plumes|water|vapor|tendency', 'kg/kg/s', 'seismic']11443 elif varn == 'dqlsc' or varn == 'LDQLSC':11444 varvals = ['dqlsc', 'condensation_water_vapor_tendency', -3.e-6, 3.e-6, \11445 'condensation|water|vapor|tendency', 'kg/kg/s', 'seismic']11446 elif varn == 'dqphy' or varn == 'LDQPHY':11447 varvals = ['dqphy', 'physics_water_vapor_tendency', -3.e-7, 3.e-7, \11448 'physics|water|vapor|tendency', 'kg/kg/s', 'seismic']11449 elif varn == 'dqthe' or varn == 'LDQTHE':11450 varvals = ['dqthe', 'thermals_water_vapor_tendency', -3.e-7, 3.e-7, \11451 'thermal|plumes|water|vapor|tendency', 'kg/kg/s', 'seismic']11452 elif varn == 'dqvdf' or varn == 'LDQVDF':11453 varvals = ['dqvdf', 'vertical_difussion_water_vapor_tendency', -3.e-8, 3.e-8,\11454 'vertical|difussion|water|vapor|tendency', 'kg/kg/s', 'seismic']11455 elif varn == 'dqwak' or varn == 'LDQWAK':11456 varvals = ['dqwak', 'wake_water_vapor_tendency', -3.e-7, 3.e-7, \11457 'wake|water|vapor|tendency', 'kg/kg/s', 'seismic']11458 elif varn == 'dtajs' or varn == 'LDTAJS':11459 varvals = ['dtajs', 'dry_adjustment_thermal_tendency', -3.e-5, 3.e-5, \11460 'dry|adjustment|thermal|tendency', 'K/s', 'seismic']11461 elif varn == 'dtcon' or varn == 'LDTCON':11462 varvals = ['dtcon', 'convective_thermal_tendency', -3.e-5, 3.e-5, \11463 'convective|thermal|tendency', 'K/s', 'seismic']11464 elif varn == 'dtdyn' or varn == 'LDTDYN':11465 varvals = ['dtdyn', 'dynamics_thermal_tendency', -3.e-4, 3.e-4, \11466 'dynamics|thermal|tendency', 'K/s', 'seismic']11467 elif varn == 'dteva' or varn == 'LDTEVA':11468 varvals = ['dteva', 'evaporation_thermal_tendency', -3.e-3, 3.e-3, \11469 'evaporation|thermal|tendency', 'K/s', 'seismic']11470 elif varn == 'dtlscst' or varn == 'LDTLSCST':11471 varvals = ['dtlscst', 'stratocumulus_thermal_tendency', -3.e-4, 3.e-4, \11472 'stratocumulus|thermal|tendency', 'K/s', 'seismic']11473 elif varn == 'dtlscth' or varn == 'LDTLSCTH':11474 varvals = ['dtlscth', 'thermals_thermal_tendency', -3.e-4, 3.e-4, \11475 'thermal|plumes|thermal|tendency', 'K/s', 'seismic']11476 elif varn == 'dtlsc' or varn == 'LDTLSC':11477 varvals = ['dtlsc', 'condensation_thermal_tendency', -3.e-3, 3.e-3, \11478 'condensation|thermal|tendency', 'K/s', 'seismic']11479 elif varn == 'dtphy' or varn == 'LDTPHY':11480 varvals = ['dtphy', 'physics_thermal_tendency', -3.e-4, 3.e-4, \11481 'physics|thermal|tendency', 'K/s', 'seismic']11482 elif varn == 'dtthe' or varn == 'LDTTHE':11483 varvals = ['dtthe', 'thermals_thermal_tendency', -3.e-4, 3.e-4, \11484 'thermal|plumes|thermal|tendency', 'K/s', 'seismic']11485 elif varn == 'dtvdf' or varn == 'LDTVDF':11486 varvals = ['dtvdf', 'vertical_difussion_thermal_tendency', -3.e-5, 3.e-5, \11487 'vertical|difussion|thermal|tendency', 'K/s', 'seismic']11488 elif varn == 'dtwak' or varn == 'LDTWAK':11489 varvals = ['dtwak', 'wake_thermal_tendency', -3.e-4, 3.e-4, \11490 'wake|thermal|tendency', 'K/s', 'seismic']11491 elif varn == 'evspsbl' or varn == 'LEVAP' or varn == 'evap':11492 varvals = ['evspsbl', 'water_evaporation_flux', 0., 1.5e-4, \11493 'water|evaporation|flux', 'kgm-2s-1', 'Blues']11494 elif varn == 'h2o' or varn == 'LH2O':11495 varvals = ['h2o', 'water_mass_fraction', 0., 3.e-2, \11496 'mass|fraction|of|water', '1', 'Blues']11497 elif varn == 'hfls' or varn == 'LH' or varn == 'LFLAT' or varn == 'flat':11498 varvals = ['hfls', 'surface_upward_latent_heat_flux', -400., 400., \11499 'upward|latnt|heat|flux|at|the|surface', 'Wm-2', 'seismic']11500 elif varn == 'hfss' or varn == 'LSENS' or varn == 'sens':11501 varvals = ['hfss', 'surface_upward_sensible_heat_flux', -150., 150., \11502 'upward|sensible|heat|flux|at|the|surface', 'Wm-2', 'seismic']11503 elif varn == 'hus' or varn == 'WRFrh' or varn == 'LMDZrh' or varn == 'rhum' or \11504 varn == 'LRHUM':11505 varvals = ['hus', 'specific_humidity', 0., 1., 'specific|humidty', '1', \11506 'BuPu']11507 elif varn == 'huss' or varn == 'WRFrhs' or varn == 'LMDZrhs' or varn == 'rh2m' or\11508 varn == 'LRH2M':11509 varvals = ['huss', 'specific_humidity', 0., 1., 'specific|humidty|at|2m', \11510 '1', 'BuPu']11511 elif varn == 'lat' or varn == 'XLAT' or varn == 'XLAT_M' or varn == 'latitude':11512 varvals = ['lat', 'latitude', -90., 90., 'latitude', 'degrees North', \11513 'seismic']11514 elif varn == 'lon' or varn == 'XLONG' or varn == 'XLONG_M':11515 varvals = ['lon', 'longitude', -180., 180., 'longitude', 'degrees East', \11516 'seismic']11517 elif varn == 'longitude':11518 varvals = ['lon', 'longitude', 0., 360., 'longitude', 'degrees East', \11519 'seismic']11520 elif varn == 'orog' or varn == 'HGT' or varn == 'HGT_M':11521 varvals = ['orog', 'orography', 0., 3000., 'surface|altitude', 'm','terrain']11522 elif varn == 'pr' or varn == 'RAINTOT' or varn == 'precip' or \11523 varn == 'LPRECIP' or varn == 'Precip Totale liq+sol':11524 varvals = ['pr', 'precipitation_flux', 0., 1.e-4, 'precipitation|flux', \11525 'kgm-2s-1', 'BuPu']11526 elif varn == 'pracc' or varn == 'ACRAINTOT':11527 varvals = ['pracc', 'precipitation_amount', 0., 100., \11528 'accumulated|precipitation', 'kgm-2', 'BuPu']11529 elif varn == 'prc' or varn == 'LPLUC' or varn == 'pluc' or varn == 'WRFprc':11530 varvals = ['prc', 'convective_precipitation_flux', 0., 2.e-4, \11531 'convective|precipitation|flux', 'kgm-2s-1', 'Blues']11532 elif varn == 'pres' or varn == 'presnivs' or varn == 'pressure':11533 varvals = ['pres', 'air_pressure', 0., 103000., 'air|pressure', 'Pa', \11534 'Blues']11535 elif varn == 'prls' or varn == 'WRFprls' or varn == 'LPLUL' or varn == 'plul':11536 varvals = ['prls', 'large_scale_precipitation_flux', 0., 2.e-4, \11537 'large|scale|precipitation|flux', 'kgm-2s-1', 'Blues']11538 elif varn == 'prsn' or varn == 'SNOW' or varn == 'snow' or varn == 'LSNOW':11539 varvals = ['prsn', 'snowfall', 0., 1.e-4, 'snowfall|flux', 'kgm-2s-1', 'BuPu']11540 elif varn == 'prw' or varn == 'WRFprh':11541 varvals = ['prw', 'atmosphere_water_vapor_content', 0., 10., \11542 'water|vapor"path', 'kgm-2', 'Blues']11543 elif varn == 'ps' or varn == 'psfc' or varn =='PSFC' or varn == 'psol' or \11544 varn == 'Surface Pressure':11545 varvals=['ps', 'surface_air_pressure', 85000., 105400., 'surface|pressure', \11546 'hPa', 'cool']11547 elif varn == 'psl' or varn == 'mslp' or varn =='WRFmslp':11548 varvals=['psl', 'air_pressure_at_sea_level', 85000., 104000., \11549 'mean|sea|level|pressure', 'Pa', 'Greens']11550 elif varn == 'q_th':11551 varvals = ['q_th', 'thermal_plume_total_water_content', 0., 25., \11552 'total|water|cotent|in|thermal|plume', 'mm', 'YlOrRd']11553 elif varn == 'r' or varn == 'QVAPOR' or varn == 'ovap' or varn == 'LOVAP':11554 varvals = ['r', 'water_mixing_ratio', 0., 0.03, 'water|mixing|ratio', \11555 'kgkg-1', 'BuPu']11556 elif varn == 'rsds' or varn == 'SWdnSFC' or varn == 'SWdn at surface' or \11557 varn == 'SWDOWN':11558 varvals=['rsds', 'surface_downwelling_shortwave_flux_in_air', 0., 1200., \11559 'downward|SW|surface|radiation', 'Wm-2' ,'Reds']11560 elif varn == 'rsdsacc':11561 varvals=['rsdsacc', 'accumulated_surface_downwelling_shortwave_flux_in_air', \11562 0., 1200., 'accumulated|downward|SW|surface|radiation', 'Wm-2' ,'Reds']11563 elif varn == 'rvor' or varn == 'WRFrvor':11564 varvals = ['rvor', 'air_relative_vorticity', -2.5E-3, 2.5E-3, \11565 'air|relative|vorticity', 's-1', 'seismic']11566 elif varn == 'rvors' or varn == 'WRFrvors':11567 varvals = ['rvors', 'surface_air_relative_vorticity', -2.5E-3, 2.5E-3, \11568 'surface|air|relative|vorticity', 's-1', 'seismic']11569 elif varn == 's_therm' or varn == 'LS_THERM':11570 varvals = ['s_therm', 'thermals_excess', 0., 0.8, 'thermals|excess', 'K', \11571 'Reds']11572 elif varn == 's_therm' or varn == 'LS_THERM':11573 varvals = ['s_therm', 'thermals_excess', 0., 0.8, 'thermals|excess', 'K', \11574 'Reds']11575 elif varn == 'ta' or varn == 'WRFt' or varn == 'temp' or varn == 'LTEMP' or \11576 varn == 'Air temperature':11577 varvals = ['ta', 'air_temperature', 195., 320., 'air|temperature', 'K', \11578 'YlOrRd']11579 elif varn == 'tas' or varn == 'T2' or varn == 't2m' or varn == 'T2M' or \11580 varn == 'Temperature 2m':11581 varvals = ['tas', 'air_temperature', 240., 310., 'air|temperature|at|2m', ' \11582 K', 'YlOrRd']11583 elif varn == 'tds' or varn == 'TH2':11584 varvals = ['tds', 'air_dew_point_temperature', 240., 310., \11585 'air|dew|point|temperature|at|2m', 'K', 'YlGnBu']11586 elif varn == 'time'or varn == 'time_counter':11587 varvals = ['time', 'time', 0., 1000., 'time', \11588 'hours|since|1949/12/01|00:00:00', 'Reds']11589 elif varn == 'ua' or varn == 'vitu' or varn == 'U' or varn == 'Zonal wind' or \11590 varn == 'LVITU':11591 varvals = ['ua', 'eastward_wind', -30., 30., 'eastward|wind', 'ms-1', \11592 'seismic']11593 elif varn == 'uas' or varn == 'u10m' or varn == 'U10' or varn =='Vent zonal 10m':11594 varvals = ['uas', 'eastward_wind', -30., 30., 'eastward|2m|wind', \11595 'ms-1', 'seismic']11596 elif varn == 'va' or varn == 'vitv' or varn == 'V' or varn == 'Meridional wind' \11597 or varn == 'LVITV':11598 varvals = ['va', 'northward_wind', -30., 30., 'northward|wind', 'ms-1', \11599 'seismic']11600 elif varn == 'vas' or varn == 'v10m' or varn == 'V10' or \11601 varn =='Vent meridien 10m':11602 varvals = ['vas', 'northward_wind', -30., 30., 'northward|2m|wind', 'ms-1', \11603 'seismic']11604 elif varn == 'wake_h' or varn == 'LWAKE_H':11605 varvals = ['wake_h', 'wake_height', 0., 1000., 'height|of|the|wakes', 'm', \11606 'YlOrRd']11607 elif varn == 'wake_s' or varn == 'LWAKE_S':11608 varvals = ['wake_s', 'wake_area_fraction', 0., 0.5, 'wake|spatial|fraction', \11609 '1', 'BuGn']11610 elif varn == 'wa' or varn == 'W' or varn == 'Vertical wind':11611 varvals = ['wa', 'upward_wind', -10., 10., 'upward|wind', 'ms-1', \11612 'seismic']11613 elif varn == 'wap' or varn == 'vitw' or varn == 'LVITW':11614 varvals = ['wap', 'upward_wind', -3.e-10, 3.e-10, 'upward|wind', 'mPa-1', \11615 'seismic']11616 elif varn == 'wss' or varn == 'SPDUV':11617 varvals = ['wss', 'air_velocity', 0., 30., 'surface|horizontal|wind|speed', \11618 'ms-1', 'Reds']11619 elif varn == 'xtime' or varn == 'XTIME':11620 varvals = ['xtime', 'time', 0., 1.e5, 'time', \11621 'minutes|since|simulation|start', 'Reds']11622 elif varn == 'x' or varn == 'X':11623 varvals = ['x', 'x', 0., 100., 'x', '-', 'Reds']11624 elif varn == 'y' or varn == 'Y':11625 varvals = ['y', 'y', 0., 100., 'y', '-', 'Blues']11626 elif varn == 'z' or varn == 'Z':11627 varvals = ['z', 'z', 0., 100., 'z', '-', 'Greens']11628 elif varn == 'zg' or varn == 'WRFght' or varn == 'Geopotential height' or \11629 varn == 'geop' or varn == 'LGEOP':11630 varvals = ['zg', 'geopotential_height', 0., 80000., 'geopotential|height', \11631 'm2s-2', 'rainbow']11632 elif varn == 'zmax_th' or varn == 'LZMAX_TH':11633 varvals = ['zmax_th', 'thermal_plume_height', 0., 4000., \11634 'maximum|thermals|plume|height', 'm', 'YlOrRd']11635 elif varn == 'zmla' or varn == 's_pblh' or varn == 'LS_PBLH':11636 varvals = ['zmla', 'atmosphere_boundary_layer_thickness', 0., 2500., \11637 'atmosphere|boundary|layer|thickness', 'm', 'Blues']11638 else:11639 print errormsg11640 print ' ' + fname + ': variable ' + varn + ' not defined !!!'11641 quit(-1)11642 11643 if ifst:11644 varvals[0] = varvals[0] + stname11645 ## Should be already there11646 # varvals[4] = varvals[4] + statsLong[stname]11647 11648 return varvals11649 11650 11775 def WRF_CFtime_creation(values, ncfile, varn): 11651 11776 """ Function to add a CF-convention time unit in a WRF file
Note: See TracChangeset
for help on using the changeset viewer.