Changeset 2100 in lmdz_wrf
- Timestamp:
- Aug 25, 2018, 10:57:00 PM (7 years ago)
- Location:
- trunk/tools
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tools/diag_tools.py
r1980 r2100 55 55 # var_clt: Function to compute the total cloud fraction following 'newmicro.F90' from 56 56 # LMDZ using 1D vertical column values 57 # var_convini: Function returns convective initialization (pr(t) > 0.0001) in time units 57 58 # var_hur: Function to compute relative humidity following 'August - Roche - Magnus' 58 59 # formula … … 663 664 664 665 return virtual 666 667 def var_convini(pr, time, dimns, dimvns): 668 """ This function returns convective initialization (pr(t) > 0.0001) in time units 669 pr: precipitation fux [kgm-2s-1] 670 time: time in CF coordinates 671 """ 672 fname = 'var_convini' 673 674 dt = pr.shape[0] 675 dy = pr.shape[1] 676 dx = pr.shape[2] 677 678 vardims = dimns[:] 679 varvdims = dimvns[:] 680 681 vardims.pop(0) 682 varvdims.pop(0) 683 684 prmin = 0.0001 685 convini = np.ones((dy, dx), dtype=np.float)*gen.fillValueF 686 for it in range(dt): 687 # NOT working ? 688 # convini = np.where(convini == gen.fillValueF and pr[it,:,:] >= prmin, \ 689 # time[it], fillValueF) 690 for j in range(dy): 691 for i in range(dx): 692 if convini[j,i] == gen.fillValueF and pr[it,j,i] >= prmin: 693 convini[j,i] = time[it] 694 break 695 696 return convini, vardims, varvdims 665 697 666 698 def Forcompute_zint(var, zinterlev, zweights, dimns, dimvns): -
trunk/tools/diagnostics.inf
r2095 r2100 11 11 clivi, WRFclivi, WRFdens@QICE@QHAIL@QGRAUPEL 12 12 clwvi, WRFclwvi, WRFdens@QCLOUD@QICE@QHAIL@QGRAUPEL 13 convini, convini, pr@time 13 14 fog, fog_FRAML50, QVAPOR@WRFt@WRFp 14 15 fog, fog_FRAML50, Q2@T2@PSFC -
trunk/tools/diagnostics.py
r2095 r2100 84 84 ## MAIN 85 85 ####### 86 availdiags = ['ACRAINTOT', 'accum', 'clt', 'cllmh', ' deaccum', 'fog_K84', 'fog_RUC', \87 ' LMDZrh', 'mslp', 'OMEGAw', 'RAINTOT',\86 availdiags = ['ACRAINTOT', 'accum', 'clt', 'cllmh', 'convini', 'deaccum', 'fog_K84', \ 87 'fog_RUC', 'LMDZrh', 'mslp', 'OMEGAw', 'RAINTOT', \ 88 88 'rvors', 'td', 'turbulence', 'uavaFROMwswd', 'WRFcape_afwa', 'WRFclivi', \ 89 89 'WRFclwvi', 'WRF_denszint', 'WRFgeop', \ … … 520 520 ncvar.insert_variable(ncobj, 'clt', diagout, diagoutd, diagoutvd, newnc) 521 521 522 # convini (pr, time) 523 elif diagn == 'convini': 524 525 var0 = ncobj.variables[depvars[0]][:] 526 var1 = ncobj.variables[depvars[1]][:] 527 otime = ncobj.variables[depvars[1]] 528 529 dnamesvar = ncobj.variables[depvars[0]].dimensions 530 dvnamesvar = ncvar.var_dim_dimv(dnamesvar,dnames,dvnames) 531 532 diagout, diagoutd, diagoutvd = diag.var_convini(var0, var1, dnames, dvnames) 533 534 ncvar.insert_variable(ncobj, 'convini', diagout, diagoutd, diagoutvd, newnc, \ 535 fill=gen.fillValueF) 536 # Getting the right units 537 ovar = newnc.variables['convini'] 538 if gen.searchInlist(otime.ncattrs(), 'units'): 539 tunits = otime.getncattr('units') 540 ncvar.set_attribute(ovar, 'units', tunits) 541 newnc.sync() 542 522 543 # deaccum: deacumulation of any variable as (Variable, time [as [tunits] 523 544 # from/since ....], newvarname) -
trunk/tools/variables_values.dat
r2064 r2100 92 92 CLW, clw, total_cloud_properties, 0., 3., total|column-integrated|water|vapor|and|cloud|variables, 1, Purples, $clw$, clw 93 93 clw, clw, total_cloud_properties, 0., 3., total|column-integrated|water|vapor|and|cloud|variables, 1, Purples, $clw$, clw 94 convini, convini, convection_initialization, 0., 300000., initialization|of|convection|(pr>=0.00001), time, rainbow, $conv^{ini}$, convini 94 95 cpt, cpt, convective_point, 0., 1., convective|point, 1, seismic, $cpt$, cpt 95 96 ptconv, cpt, convective_point, 0., 1., convective|point, 1, seismic, $cpt$, cpt
Note: See TracChangeset
for help on using the changeset viewer.