JROData.py
244 lines
| 4.8 KiB
| text/x-python
|
PythonLexer
|
r126 | ''' | ||
$Author$ | ||||
$Id$ | ||||
''' | ||||
|
r122 | import os, sys | ||
import copy | ||||
import numpy | ||||
path = os.path.split(os.getcwd())[0] | ||||
sys.path.append(path) | ||||
|
r137 | from IO.JROHeaderIO import SystemHeader, RadarControllerHeader | ||
|
r122 | |||
class JROData: | ||||
# m_BasicHeader = BasicHeader() | ||||
# m_ProcessingHeader = ProcessingHeader() | ||||
systemHeaderObj = SystemHeader() | ||||
radarControllerHeaderObj = RadarControllerHeader() | ||||
# data = None | ||||
type = None | ||||
dtype = None | ||||
nChannels = None | ||||
nHeights = None | ||||
nProfiles = None | ||||
heightList = None | ||||
channelList = None | ||||
channelIndexList = None | ||||
|
r153 | flagNoData = True | ||
|
r122 | |||
flagTimeBlock = False | ||||
|
r153 | utctime = None | ||
blocksize = None | ||||
|
r123 | |||
nCode = None | ||||
nBaud = None | ||||
code = None | ||||
|
r124 | |||
flagDecodeData = True #asumo q la data esta decodificada | ||||
flagDeflipData = True #asumo q la data esta sin flip | ||||
flagShiftFFT = False | ||||
|
r147 | ippSeconds = None | ||
|
r156 | timeInterval = None | ||
|
r122 | |||
def __init__(self): | ||||
raise ValueError, "This class has not been implemented" | ||||
def copy(self, inputObj=None): | ||||
if inputObj == None: | ||||
return copy.deepcopy(self) | ||||
for key in inputObj.__dict__.keys(): | ||||
self.__dict__[key] = inputObj.__dict__[key] | ||||
def deepcopy(self): | ||||
|
r137 | return copy.deepcopy(self) | ||
class Voltage(JROData): | ||||
nCohInt = None | ||||
|
r147 | #data es un numpy array de 2 dmensiones (canales, alturas) | ||
|
r137 | data = None | ||
def __init__(self): | ||||
''' | ||||
Constructor | ||||
''' | ||||
|
r148 | self.radarControllerHeaderObj = RadarControllerHeader() | ||
|
r137 | |||
|
r148 | self.systemHeaderObj = SystemHeader() | ||
|
r137 | |||
self.type = "Voltage" | ||||
self.data = None | ||||
self.dtype = None | ||||
self.nChannels = 0 | ||||
self.nHeights = 0 | ||||
self.nProfiles = None | ||||
self.heightList = None | ||||
self.channelList = None | ||||
self.channelIndexList = None | ||||
self.flagNoData = True | ||||
self.flagTimeBlock = False | ||||
|
r153 | self.utctime = None | ||
|
r137 | |||
self.nCohInt = None | ||||
|
r153 | |||
self.blocksize = None | ||||
|
r137 | |||
class Spectra(JROData): | ||||
|
r147 | #data es un numpy array de 2 dmensiones (canales, perfiles, alturas) | ||
|
r137 | data_spc = None | ||
|
r147 | #data es un numpy array de 2 dmensiones (canales, pares, alturas) | ||
|
r137 | data_cspc = None | ||
|
r147 | #data es un numpy array de 2 dmensiones (canales, alturas) | ||
|
r137 | data_dc = None | ||
nFFTPoints = None | ||||
nPairs = None | ||||
pairsList = None | ||||
nIncohInt = None | ||||
|
r170 | wavelength = None #Necesario para cacular el rango de velocidad desde la frecuencia | ||
|
r162 | nCohInt = None #se requiere para determinar el valor de timeInterval | ||
|
r137 | def __init__(self): | ||
''' | ||||
Constructor | ||||
''' | ||||
|
r148 | self.radarControllerHeaderObj = RadarControllerHeader() | ||
|
r137 | |||
|
r148 | self.systemHeaderObj = SystemHeader() | ||
|
r137 | |||
self.type = "Spectra" | ||||
# self.data = None | ||||
self.dtype = None | ||||
self.nChannels = 0 | ||||
self.nHeights = 0 | ||||
self.nProfiles = None | ||||
self.heightList = None | ||||
self.channelList = None | ||||
self.channelIndexList = None | ||||
self.flagNoData = True | ||||
self.flagTimeBlock = False | ||||
|
r153 | self.utctime = None | ||
|
r137 | |||
self.nIncohInt = None | ||||
|
r147 | |||
|
r153 | self.blocksize = None | ||
|
r170 | self.nFFTPoints = None | ||
self.wavelength = None | ||||
def getFrequencies(self): | ||||
xrange = numpy.arange(self.nFFTPoints) | ||||
xrange = xrange | ||||
return None | ||||
|
r147 | |||
class SpectraHeis(JROData): | ||||
data_spc = None | ||||
data_cspc = None | ||||
data_dc = None | ||||
nFFTPoints = None | ||||
nPairs = None | ||||
pairsList = None | ||||
|
r149 | nIncohInt = None | ||
|
r147 | def __init__(self): | ||
|
r148 | self.radarControllerHeaderObj = RadarControllerHeader() | ||
|
r147 | |||
|
r148 | self.systemHeaderObj = SystemHeader() | ||
|
r147 | |||
self.type = "SpectraHeis" | ||||
|
r149 | self.dtype = None | ||
|
r147 | |||
self.nChannels = 0 | ||||
|
r149 | self.nHeights = 0 | ||
|
r147 | |||
|
r149 | self.nProfiles = None | ||
|
r147 | |||
|
r149 | self.heightList = None | ||
|
r147 | |||
|
r149 | self.channelList = None | ||
|
r147 | |||
|
r149 | self.channelIndexList = None | ||
|
r147 | |||
|
r149 | self.flagNoData = True | ||
|
r147 | |||
|
r149 | self.flagTimeBlock = False | ||
|
r147 | self.nPairs = 0 | ||
|
r153 | |||
self.utctime = None | ||||
self.blocksize = None | ||||