@@ -72,17 +72,22 class Figure: | |||||
72 |
|
72 | |||
73 | def getTimeLim(self, x, xmin=None, xmax=None, timerange=None): |
|
73 | def getTimeLim(self, x, xmin=None, xmax=None, timerange=None): | |
74 |
|
74 | |||
75 |
if |
|
75 | if xmin != None and xmax != None: | |
76 | if timerange == None: |
|
76 | if timerange == None: | |
77 |
timerange = |
|
77 | timerange = xmax - xmin | |
78 |
xmin = |
|
78 | xmin = xmin + timerange | |
79 |
xmax = |
|
79 | xmax = xmax + timerange | |
80 |
|
80 | |||
81 | return xmin, xmax |
|
81 | return xmin, xmax | |
82 |
|
82 | |||
83 |
|
83 | |||
84 |
if timerange != None and |
|
84 | if timerange != None and xmin == None and xmax == None: | |
85 | txmin = x[0] - x[0]%timerange |
|
85 | txmin = x[0] - x[0]%timerange | |
|
86 | else: | |||
|
87 | txmin = numpy.min(x) | |||
|
88 | timerange = 60*60*2 | |||
|
89 | ||||
|
90 | if xmin == None and xmax == None: | |||
86 | thisdatetime = datetime.datetime.utcfromtimestamp(txmin) |
|
91 | thisdatetime = datetime.datetime.utcfromtimestamp(txmin) | |
87 | thisdate = datetime.datetime.combine(thisdatetime.date(), datetime.time(0,0,0)) |
|
92 | thisdate = datetime.datetime.combine(thisdatetime.date(), datetime.time(0,0,0)) | |
88 | xmin = (thisdatetime - thisdate).seconds/(60*60.) |
|
93 | xmin = (thisdatetime - thisdate).seconds/(60*60.) | |
@@ -90,7 +95,7 class Figure: | |||||
90 |
|
95 | |||
91 |
|
96 | |||
92 | if timerange == None: |
|
97 | if timerange == None: | |
93 | txmin = numpy.min(x) |
|
98 | ||
94 | thisdatetime = datetime.datetime.utcfromtimestamp(txmin) |
|
99 | thisdatetime = datetime.datetime.utcfromtimestamp(txmin) | |
95 | thisdate = datetime.datetime.combine(thisdatetime.date(), datetime.time(0,0,0)) |
|
100 | thisdate = datetime.datetime.combine(thisdatetime.date(), datetime.time(0,0,0)) | |
96 |
|
101 |
@@ -179,6 +179,7 class AMISRReader(ProcessingUnit): | |||||
179 | print 'Filtering Files from %s to %s'%(startDateTime_Reader, endDateTime_Reader) |
|
179 | print 'Filtering Files from %s to %s'%(startDateTime_Reader, endDateTime_Reader) | |
180 | print '........................................' |
|
180 | print '........................................' | |
181 | filter_filenameList = [] |
|
181 | filter_filenameList = [] | |
|
182 | self.filenameList.sort() | |||
182 | for i in range(len(self.filenameList)-1): |
|
183 | for i in range(len(self.filenameList)-1): | |
183 | filename = self.filenameList[i] |
|
184 | filename = self.filenameList[i] | |
184 | fp = h5py.File(filename,'r') |
|
185 | fp = h5py.File(filename,'r') | |
@@ -341,7 +342,8 class AMISRReader(ProcessingUnit): | |||||
341 |
|
342 | |||
342 | for i in range(len(self.beamCodeDict.values())): |
|
343 | for i in range(len(self.beamCodeDict.values())): | |
343 | xx = numpy.where(just4record0==self.beamCodeDict.values()[i][0]) |
|
344 | xx = numpy.where(just4record0==self.beamCodeDict.values()[i][0]) | |
344 | self.beamRangeDict[i] = xx[0] |
|
345 | indexPulseByBeam = self.linear_pulseCount[xx[0]] | |
|
346 | self.beamRangeDict[i] = indexPulseByBeam | |||
345 |
|
347 | |||
346 | def __getExpParameters(self): |
|
348 | def __getExpParameters(self): | |
347 | if not(self.status): |
|
349 | if not(self.status): | |
@@ -435,16 +437,16 class AMISRReader(ProcessingUnit): | |||||
435 |
|
437 | |||
436 | self.__setNextFile() |
|
438 | self.__setNextFile() | |
437 |
|
439 | |||
438 | first_beamcode = self.radacHeaderObj.beamCodeByPulse[0,0] |
|
440 | # first_beamcode = self.radacHeaderObj.beamCodeByPulse[0,0] | |
439 | index = numpy.where(self.radacHeaderObj.beamCodeByPulse[0,:]!=first_beamcode)[0][0] |
|
441 | # index = numpy.where(self.radacHeaderObj.beamCodeByPulse[0,:]!=first_beamcode)[0][0] | |
440 |
self.profileIndex_offset = self.radacHeaderObj.pulseCount[0,:][ |
|
442 | self.profileIndex_offset = self.radacHeaderObj.pulseCount[0,:][0] | |
441 | self.profileIndex = self.profileIndex_offset |
|
443 | self.profileIndex = self.profileIndex_offset | |
442 |
|
444 | |||
443 | def readRanges(self): |
|
445 | def readRanges(self): | |
444 | dataset = self.amisrFilePointer.get('Raw11/Data/Samples/Range') |
|
446 | dataset = self.amisrFilePointer.get('Raw11/Data/Samples/Range') | |
445 | #self.rangeFromFile = dataset.value |
|
447 | ||
446 | self.rangeFromFile = numpy.reshape(dataset.value,(-1)) |
|
448 | self.rangeFromFile = numpy.reshape(dataset.value,(-1)) | |
447 | return range |
|
449 | return self.rangeFromFile | |
448 |
|
450 | |||
449 |
|
451 | |||
450 | def readRadacTime(self,idrecord, range1, range2): |
|
452 | def readRadacTime(self,idrecord, range1, range2): |
@@ -45,6 +45,7 class BeamSelector(Operation): | |||||
45 | def __init__(self): |
|
45 | def __init__(self): | |
46 |
|
46 | |||
47 | self.profileIndex = 0 |
|
47 | self.profileIndex = 0 | |
|
48 | self.__isConfig = False | |||
48 |
|
49 | |||
49 | def incIndex(self): |
|
50 | def incIndex(self): | |
50 | self.profileIndex += 1 |
|
51 | self.profileIndex += 1 | |
@@ -72,7 +73,12 class BeamSelector(Operation): | |||||
72 | def run(self, dataOut, beam=None): |
|
73 | def run(self, dataOut, beam=None): | |
73 |
|
74 | |||
74 | dataOut.flagNoData = True |
|
75 | dataOut.flagNoData = True | |
75 | self.nProfiles = dataOut.nProfiles |
|
76 | ||
|
77 | if not(self.__isConfig): | |||
|
78 | ||||
|
79 | self.nProfiles = dataOut.nProfiles | |||
|
80 | self.profileIndex = dataOut.profileIndex | |||
|
81 | self.__isConfig = True | |||
76 |
|
82 | |||
77 | if beam != None: |
|
83 | if beam != None: | |
78 | if self.isProfileInList(dataOut.beamRangeDict[beam]): |
|
84 | if self.isProfileInList(dataOut.beamRangeDict[beam]): |
General Comments 0
You need to be logged in to leave comments.
Login now