##// END OF EJS Templates
SpectraIO.py :...
Victor Sarmiento -
r65:f3dce6e9ecb2
parent child
Show More
@@ -29,9 +29,9 class SpectraReader( JRODataReader ):
29 29 de los datos siempre se realiza por bloques. Los datos leidos (array de 3 dimensiones)
30 30 son almacenados en tres buffer's para el Self Spectra, el Cross Spectra y el DC Channel.
31 31
32 pares * alturas * perfiles (Self Spectra)
33 canales * alturas * perfiles (Cross Spectra)
34 canales * alturas (DC Channels)
32 paresCanalesIguales * alturas * perfiles (Self Spectra)
33 paresCanalesDiferentes * alturas * perfiles (Cross Spectra)
34 canales * alturas (DC Channels)
35 35
36 36 Esta clase contiene instancias (objetos) de las clases BasicHeader, SystemHeader,
37 37 RadarControllerHeader y Spectra. Los tres primeros se usan para almacenar informacion de la
@@ -65,16 +65,18 class SpectraReader( JRODataReader ):
65 65 data_cspc = None
66 66 data_dc = None
67 67
68 nPairsEqualChannels = 0
69
70 nPairsUnequalChannels = 0
71
72 68 pts2read_SelfSpectra = 0
73 69 pts2read_CrossSpectra = 0
74 70 pts2read_DCchannels = 0
75 71
72 nPairsEqualChannels = 0
73
74 nPairsUnequalChannels = 0
75
76 76 ext = ".pdata"
77 77
78 optchar = "P"
79
78 80
79 81 def __init__(self, m_Spectra=None):
80 82 """
@@ -179,6 +181,7 class SpectraReader( JRODataReader ):
179 181 time.sleep( self.delay )
180 182 self.fp.seek( fpointer )
181 183 fpointer = self.fp.tell()
184
182 185 spc = numpy.fromfile( self.fp, self.dataType[0], self.pts2read_SelfSpectra )
183 186 cspc = numpy.fromfile( self.fp, self.dataType, self.pts2read_CrossSpectra )
184 187 dc = numpy.fromfile( self.fp, self.dataType, self.pts2read_DCchannels ) #int(self.m_ProcessingHeader.numHeights*self.m_SystemHeader.numChannels) )
@@ -186,6 +189,7 class SpectraReader( JRODataReader ):
186 189 if (spc.size + cspc.size + dc.size) == self.blocksize:
187 190 blockOk_flag = True
188 191 break
192
189 193 if not( blockOk_flag ):
190 194 return 0
191 195
@@ -270,10 +274,6 class SpectraReader( JRODataReader ):
270 274 self.m_DataObj.data_spc = self.data_spc
271 275 self.m_DataObj.data_cspc = self.data_cspc
272 276 self.m_DataObj.data_dc = self.data_dc
273
274 #call setData - to Data Object
275 #self.datablockIndex += 1
276 #self.idProfile += 1
277 277
278 278 return 1
279 279
@@ -372,7 +372,6 class SpectraWriter(JRODataWriter):
372 372 # cspc = numpy.transpose( self.data_cspc, (0,2,1) )
373 373 if not( self.m_ProcessingHeader.shif_fft ):
374 374 cspc = numpy.roll( cspc, self.m_ProcessingHeader.profilesPerBlock/2, axis=2 ) #desplaza a la derecha en el eje 2 determinadas posiciones
375 data['real'] = cspc.real
376 375 data['imag'] = cspc.imag
377 376 data = data.reshape((-1))
378 377 data.tofile(self.fp)
General Comments 0
You need to be logged in to leave comments. Login now