##// END OF EJS Templates
Fix all PlotData, add SpectraMean, CrossSpectra plots, now Parameters extends Spectra fix bugs in ParametersProc
Fix all PlotData, add SpectraMean, CrossSpectra plots, now Parameters extends Spectra fix bugs in ParametersProc

File last commit:

r611:cdbd858cadba
r922:d680543828ae
Show More
jroamisr.py
89 lines | 3.0 KiB | text/x-python | PythonLexer
import numpy
import copy
class Beam:
def __init__(self):
self.codeList = []
self.azimuthList = []
self.zenithList = []
class AMISR:
def __init__(self):
self.flagNoData = True
self.data = None
self.utctime = None
self.type = "AMISR"
#propiedades para compatibilidad con Voltages
self.timeZone = 0#timezone like jroheader, difference in minutes between UTC and localtime
self.dstFlag = 0#self.dataIn.dstFlag
self.errorCount = 0#self.dataIn.errorCount
self.useLocalTime = True#self.dataIn.useLocalTime
self.radarControllerHeaderObj = None#self.dataIn.radarControllerHeaderObj.copy()
self.systemHeaderObj = None#self.dataIn.systemHeaderObj.copy()
self.channelList = [0]#self.dataIn.channelList esto solo aplica para el caso de AMISR
self.dtype = numpy.dtype([('real','<f4'),('imag','<f4')])
self.flagDiscontinuousBlock = None#self.dataIn.flagDiscontinuousBlock
#self.utctime = #self.firstdatatime
self.flagDecodeData = None#self.dataIn.flagDecodeData #asumo q la data esta decodificada
self.flagDeflipData = None#self.dataIn.flagDeflipData #asumo q la data esta sin flip
self.nCohInt = 1#self.dataIn.nCohInt
self.nIncohInt = 1
self.ippSeconds = None#self.dataIn.ippSeconds, segun el filename/Setup/Tufile
self.windowOfFilter = None#self.dataIn.windowOfFilter
self.timeInterval = None#self.dataIn.timeInterval*self.dataOut.nFFTPoints*self.dataOut.nIncohInt
self.frequency = None#self.dataIn.frequency
self.realtime = 0#self.dataIn.realtime
#actualizar en la lectura de datos
self.heightList = None#self.dataIn.heightList
self.nProfiles = None#Number of samples or nFFTPoints
self.nRecords = None
self.nBeams = None
self.nBaud = None#self.dataIn.nBaud
self.nCode = None#self.dataIn.nCode
self.code = None#self.dataIn.code
#consideracion para los Beams
self.beamCodeDict = None
self.beamRangeDict = None
self.beamcode = None
self.azimuth = None
self.zenith = None
self.gain = None
self.npulseByFrame = None
self.profileIndex = None
self.beam = Beam()
def copy(self, inputObj=None):
if inputObj is None:
return copy.deepcopy(self)
for key in inputObj.__dict__.keys():
self.__dict__[key] = inputObj.__dict__[key]
def getNHeights(self):
return len(self.heightList)
def isEmpty(self):
return self.flagNoData
def getTimeInterval(self):
timeInterval = self.ippSeconds * self.nCohInt
return timeInterval
timeInterval = property(getTimeInterval, "I'm the 'timeInterval' property")
nHeights = property(getNHeights, "I'm the 'nHeights' property.")