Changeset 287 in lmdz_wrf


Ignore:
Timestamp:
Feb 25, 2015, 3:43:56 PM (10 years ago)
Author:
lfita
Message:

circdist has a temporal dependence!

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tools/nc_var_tools.py

    r286 r287  
    1037010370    gtrajvals = np.zeros((Ttraj,3), dtype=int)
    1037110371    trajvals = np.zeros((Ttraj,3), dtype=np.float)
     10372    circdist = np.zeros((Ttraj, dimy, dimx), dtype=np.float)
    1037210373
    1037310374    it = 0
     
    1045610457
    1045710458# circle values
    10458             circdist = radius_dist(dimy, dimx, gtrajvals[it,2], gtrajvals[it,1])
     10459            circdist[it,:,:] = radius_dist(dimy,dimx,gtrajvals[it,2],gtrajvals[it,1])
    1045910460
    1046010461            if gtrajvals[it,2]-Nrad < 0 or gtrajvals[it,2]+Nrad + 1 > dimy + 1 \
     
    1053810539        if Nvardims == 4:
    1053910540# Too optimistic, but at this stage...
    10540             dimz = varobj.shape[1]
    10541 
    1054210541            if not objofile.dimensions.has_key('z'):
    1054310542                varzobj = objfile.variables[zn]
     
    1068210681                    rvarvalst[tuple(cslice2D)] = varobj[tuple(cslicev)]
    1068310682                    for iz in range(dimz):
    10684                         zslice = [slice(iz)]+cslice2Dhor
    10685                         rvarvalst[iz,:,:] = np.where(circdist[tuple(cslice2Dhor)] >  \
     10683                        tslice = [slice(it)]+cslice2Dhor
     10684                        rvarvalst[iz,:,:] = np.where(circdist[tuple(tslice)] >       \
    1068610685                          np.float(Nrad), fillValue, rvarvalst[iz,:,:])
    1068710686
     
    1070910708                    cslicevnoT.append(slice(gtrajvals[it,1]-Nrad, gtrajvals[it,1]+   \
    1071010709                      Nrad+1))
    10711                     cslicevnoThor.append(slice(gtrajvals[it,2]-Nrad, gtrajvals[it,2]+   \
     10710                    cslicevnoThor.append(slice(gtrajvals[it,2]-Nrad, gtrajvals[it,2]+\
    1071210711                      Nrad+1))
    10713                     cslicevnoThor.append(slice(gtrajvals[it,1]-Nrad, gtrajvals[it,1]+   \
     10712                    cslicevnoThor.append(slice(gtrajvals[it,1]-Nrad, gtrajvals[it,1]+\
    1071410713                      Nrad+1))
    1071510714                    cslice2D.append(slice(0,dimz))
     
    1072010719
    1072110720                    rvarvalst = varobj[tuple(cslicev)]
    10722                     cdist = circdist[tuple(cslicevnoThor)]
     10721                    cdist = circdist[tuple([it] + cslicevnoThor)]
    1072310722# circle values
    1072410723                    for iz in range(dimz):
    10725                         zslice = [slice(iz)]+cslicevnoThor
    10726                         rvarvalst[iz,:,:] = np.where(circdist[tuple(cslicevnoThor)] >\
     10724                        tslice = [slice(it)]+cslicevnoThor
     10725                        rvarvalst[iz,:,:] = np.where(circdist[tuple(tslice)] >       \
    1072710726                          np.float(Nrad), fillValue, rvarvalst[iz,:,:])
    1072810727
     
    1095010949# circle values
    1095110950                    rvarvalst = np.where(cdist > np.float(Nrad),fillValue,rvarvalst)
     10951                    print it,'Lluis: cdist', cdist, 'Nrad:',Nrad
    1095210952
    1095310953                    rvarvals[it,:,:] = rvarvalst
Note: See TracChangeset for help on using the changeset viewer.