Changeset 1415 in lmdz_wrf for trunk/tools


Ignore:
Timestamp:
Jan 18, 2017, 8:06:29 AM (8 years ago)
Author:
lfita
Message:

Adding `masked' variables on 'curve_section'

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tools/nc_var_tools.py

    r1411 r1415  
    1471814718        quit(-1)
    1471914719
    14720     if gen.searchInlist(varo.ncattrs(), 'missing_value'):
     14720    varo[:] = newvarvals[:]
     14721    varattrs = varo.ncattrs()
     14722    print 'varattrs 1:', varattrs
     14723
     14724    if gen.searchInlist(varattrs, 'missing_value'):
    1472114725        missval = varo.getncattr('missing_value')
    1472214726        difvals = fval*10.**(-np.log10(valchk)) - missval*10.**(-np.log10(missval))
     
    1472614730            print '   renaming missing_value'
    1472714731            varo.delncattr('missing_value')
    14728             set_attribute(varo, '_FillValue', fval)
    14729         else:
    14730             set_attribute(varo, '_FillValue', fval)
     14732
     14733    if not gen.searchInlist(varattrs, '_FillValue'):
     14734        set_attribute(varo, '_FillValue', fval)
    1473114735    else:
     14736        varo.delncattr('_FillValue')
    1473214737        set_attribute(varo, '_FillValue', fval)
    14733 
    14734     varo[:] = newvarvals
    1473514738
    1473614739    onc.sync()
     
    1842218425        sortedwgt.sort(reverse=True)
    1842318426
    18424 #        print fname + '; Lluis icv:', icv ,' _____', Nwgt[icv]
    1842518427        for isp in range(Nwgt[icv]):
    1842618428            dictslice[ydn] = iy + int(ijcurv[icv,0,isp])
     
    1842818430            varslice, dimvarvals = SliceVarDict(ov, dictslice)
    1842918431            iwgt = sortedwgt[isp]
    18430             curvevar[...,icv] = curvevar[...,icv] + ov[tuple(varslice)]*iwgt
    18431 #            print '    isp:', isp, 'iwgt:', iwgt, '<>', iy + int(ijcurv[icv,0,isp]), \
    18432 #              ix + int(ijcurv[icv,1,isp]), 'ival:', ov[tuple(varslice)][0,0], 'curvevar:', curvevar[0,0,icv]
     18432            vaL = ov[tuple(varslice)]*iwgt
     18433
     18434            # Is the variable masked?
     18435            if type(ov[:]) == type(gen.mamat):
     18436                curvevar[...,icv] = np.where(ov[:].mask[tuple(varslice)],        \
     18437                   gen.fillValueF, curvevar[...,icv] + vaL)
     18438            else:
     18439                curvevar[...,icv] = curvevar[...,icv] + ov[tuple(varslice)]*iwgt
    1843318440
    1843418441    return curvevar
Note: See TracChangeset for help on using the changeset viewer.