- Timestamp:
- Jan 11, 2016, 5:00:20 PM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tools/nc_var_tools.py
r662 r663 17243 17243 for id1 in range(loopshape[0]): 17244 17244 slicevalues = SliceVar(iovar,dimsloop,[id1]) 17245 slicewgt = SliceVar(iovarwgt,dimsloop,[id1]) 17245 17246 newvals[id1] = np.mean(ivarv[tuple(slicevalues)] / \ 17246 ivarwgtv[tuple(slice values)])17247 ivarwgtv[tuple(slicewgt)]) 17247 17248 elif len(loopshape) == 2: 17248 17249 newvals = np.ones((loopshape[0],loopshape[1]),dtype=np.float)* \ … … 17251 17252 for id2 in range(loopshape[1]): 17252 17253 slicevalues = SliceVar(iovar,dimsloop,[id1,id2]) 17254 slicewgt = SliceVar(iovarwgt,dimsloop,[id1,id2]) 17253 17255 newvals[id1,id2] = np.mean(ivarv[tuple(slicevalues)] / \ 17254 ivarwgtv[tuple(slice values)])17256 ivarwgtv[tuple(slicewgt)]) 17255 17257 elif len(loopshape) == 3: 17256 17258 newvals = np.ones((loopshape[0],loopshape[1],loopshape[2]), \ … … 17260 17262 for id3 in range(loopshape[1]): 17261 17263 slicevalues = SliceVar(iovar,dimsloop,[id1,id2,id3]) 17264 slicewgt = SliceVar(iovarwgt,dimsloop,[id1,id2,id3]) 17262 17265 newvals[id1,id2,id3]= np.mean(ivarv[tuple(slicevalues)]/ \ 17263 ivarwgtv[tuple(slice values)])17266 ivarwgtv[tuple(slicewgt)]) 17264 17267 elif oper == 'nothing': 17265 17268 longvarname = 'using variable ' + varname + ' as space weights' … … 17268 17271 for id1 in range(loopshape[0]): 17269 17272 slicevalues = SliceVar(iovar,dimsloop,[id1]) 17273 slicewgt = SliceVar(iovarwgt,dimsloop,[id1]) 17270 17274 newvals[id1] = np.mean(ivarv[tuple(slicevalues)]* \ 17271 ivarwgtv[tuple(slice values)])17275 ivarwgtv[tuple(slicewgt)]) 17272 17276 elif len(loopshape) == 2: 17273 17277 newvals = np.ones((loopshape[0],loopshape[1]), dtype=np.float)* \ … … 17276 17280 for id2 in range(loopshape[1]): 17277 17281 slicevalues = SliceVar(iovar,dimsloop,[id1,id2]) 17282 slicewgt = SliceVar(iovarwgt,dimsloop,[id1,id2]) 17278 17283 newvals[id1,id2] = np.mean(ivarv[tuple(slicevalues)]* \ 17279 ivarwgtv[tuple(slice values)])17284 ivarwgtv[tuple(slicewgt)]) 17280 17285 elif len(loopshape) == 3: 17281 17286 newvals = np.ones((loopshape[0],loopshape[1],loopshape[2]), \ … … 17285 17290 for id3 in range(loopshape[2]): 17286 17291 slicevalues = SliceVar(iovar,dimsloop,[id1,id2.id3]) 17292 slicewgt = SliceVar(iovarwgt,dimsloop,[id1,id2,id3]) 17287 17293 newvals[id1,id2,id3]=np.mean(ivarv[tuple(slicevalues)]* \ 17288 ivarwgtv[tuple(slice values)])17294 ivarwgtv[tuple(slicewgt)]) 17289 17295 elif weightk == 'reglonlat': 17290 17296 longvarname = 'using cos(latitude) variable ' + latname + ' as space weights'
Note: See TracChangeset
for help on using the changeset viewer.