Changeset 599 in lmdz_wrf


Ignore:
Timestamp:
Jul 15, 2015, 11:10:39 AM (10 years ago)
Author:
lfita
Message:

Fixing different issues on the 'compute_tevolboxtraj'

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified trunk/tools/nc_var_tools.py

    r577 r599  
    1104911049          'wrf': WRF kind
    1105011050        [boxsize]: size in grid points of the box (square centered, better even number!)
    11051         [circler]: radius in grid points of a centerd circle
     11051        [circler]: radius in grid points of a centerd circle (as 2*circler+1)
    1105211052      ncfile= netCDF file to use
    1105311053      varn= ',' list of variables' name ('all', for all variables)
     
    1113111131    Ttraj = file_nlines(trajfile,'#')
    1113211132    if timekind == 'wrf':
    11133         dimt = objfile.variables[timn].shape[0] 
     11133        dimt = objfile.variables[timn].shape[0]
    1113411134    else:
    11135         dimt = objfile.variables[timn].shape
    11136 
    11137     if Tbeg + Ttraj > dimt:
     11135        dimt = objfile.variables[timn].shape[0]
     11136
     11137    if Tbeg + Ttraj > dimt - 1:
    1113811138        print errormsg
    1113911139        print '  ' + fname + ': trajectory has ', Ttraj, ' time steps and starts ' + \
     
    1114111141        quit(-1)
    1114211142
    11143     print '    ' + fname + ': Number of time-steps in trajectory file: ',Ttraj
     11143    print '    ' + fname + ': Number of time-steps in trajectory file: ',Ttraj, 'dimt',dimt
    1114411144
    1114511145    trajobj = open(trajfile,'r')
     
    1117911179# Slicing brings to reduce 1 time-step.... ???
    1118011180        if line[0:1] != '#':
    11181             gtrajvals[it,0] = Tbeg + iline
     11181            gtrajvals[it,0] = Tbeg + iline - 1
    1118211182            gtrajvals[it,1] = int(line.split(' ')[1])
    1118311183            gtrajvals[it,2] = int(line.split(' ')[2])
     
    1122111221                    yinit2D = 0
    1122211222
    11223                 if gtrajvals[it,2]+box2 + 1 > dimy + 1:
    11224                     yend = dimy + 1
    11225                     yend2D = dimy + 1 - gtrajvals[it,2] + box2
     11223                if gtrajvals[it,2]+box2 + 1 > dimy:
     11224                    yend = dimy - 1
     11225                    yend2D = dimy - 1 - gtrajvals[it,2] + box2
    1122611226                else:
    1122711227                    yend = gtrajvals[it,2]+box2 + 1
     
    1123511235                    xinit2D = 0
    1123611236
    11237                 if gtrajvals[it,1]+box2 + 1 > dimx + 1:
    11238                     xend = dimx + 1
    11239                     xend2D = dimx + 1 - gtrajvals[it,1] - box2
     11237                if gtrajvals[it,1]+box2 + 1 > dimx:
     11238                    xend = dimx - 1
     11239                    xend2D = dimx - 1 - gtrajvals[it,1] - box2
    1124011240                else:
    1124111241                    xend = gtrajvals[it,1]+box2 + 1
     
    1125411254# circle values
    1125511255            circdist[it,:,:] = radius_dist(dimy,dimx,gtrajvals[it,2],gtrajvals[it,1])
    11256 
    1125711256            if gtrajvals[it,2]-Nrad < 0 or gtrajvals[it,2]+Nrad + 1 > dimy + 1 \
    1125811257              or gtrajvals[it,1]-Nrad < 0 or gtrajvals[it,1]+Nrad + 1 > dimx + 1:
     
    1126511264                    yinit2D = 0
    1126611265
    11267                 if gtrajvals[it,2]+Nrad + 1 > dimy + 1:
    11268                     yend = dimy + 1
    11269                     yend2D = dimy + 1 - gtrajvals[it,2] + Nrad
     11266                if gtrajvals[it,2]+Nrad + 1 > dimy:
     11267                    yend = dimy - 1
     11268                    yend2D = dimy - 1 - gtrajvals[it,2] + Nrad
    1127011269                else:
    1127111270                    yend = gtrajvals[it,2]+Nrad + 1
     
    1127911278                    xinit2D = 0
    1128011279
    11281                 if gtrajvals[it,1]+Nrad + 1 > dimx + 1:
    11282                     xend = dimx + 1
    11283                     xend2D = dimx + 1 - gtrajvals[it,1] - Nrad
     11280                if gtrajvals[it,1]+Nrad + 1 > dimx:
     11281                    xend = dimx - 1
     11282                    xend2D = dimx - 1 - gtrajvals[it,1] - Nrad
    1128411283                else:
    1128511284                    xend = gtrajvals[it,1]+Nrad + 1
     
    1167211671
    1167311672                    rvarvalst = np.ones((Nrad*2+1, Nrad*2+1),dtype=np.float)*fillValue
    11674 
    1167511673                    varvalst[tuple(slice2D)] = varobj[tuple(slicev)]
    1167611674                    varvals[it,:,:] = varvalst
     
    1567915677            dimt = varobj.shape[0]
    1568015678 
    15681             varvals = np.ones(tuple([Ttraj,boxs,boxs]), dtype=np.float)
     15679            varvals = np.ones(tuple([Ttraj,boxs,boxs1]), dtype=np.float)
    1568215680            lonvals = np.ones(tuple([Ttraj,boxs,boxs]), dtype=np.float)
    1568315681            latvals = np.ones(tuple([Ttraj,boxs,boxs]), dtype=np.float)
Note: See TracChangeset for help on using the changeset viewer.