diff --git a/schainpy/model/cfunctions.pyx b/schainpy/model/cfunctions.pyx index 9f6f79f..87d9b88 100644 --- a/schainpy/model/cfunctions.pyx +++ b/schainpy/model/cfunctions.pyx @@ -1,7 +1,7 @@ import numpy cimport numpy -def decoder(numpy.ndarray[numpy.float32, ndim=2] fft_code, numpy.ndarray[numpy.complex, ndim=2] data): +def decoder(numpy.ndarray[numpy.float32_t, ndim=2] fft_code, numpy.ndarray[numpy.complex_t, ndim=2] data): fft_data = numpy.fft.fft(data, axis=1) conv = fft_data*fft_code diff --git a/schainpy/model/jroprocessing.py b/schainpy/model/jroprocessing.py index df250e2..77614ae 100644 --- a/schainpy/model/jroprocessing.py +++ b/schainpy/model/jroprocessing.py @@ -596,7 +596,7 @@ class Decoder(Operation): self.__nChannels, self.__nHeis = shape - self.__codeBuffer = numpy.zeros((self.nCode, self.__nHeis), dtype=numpy.float) + self.__codeBuffer = numpy.zeros((self.nCode, self.__nHeis), dtype=numpy.float32) self.__codeBuffer[:,0:self.nBaud] = self.code @@ -686,7 +686,10 @@ class Decoder(Operation): if mode == 1: print "This function is not implemented" # ndatadec, datadec = self.convolutionInTime(dataOut.data) - + + if mode == 3: + ndatadec, datadec = self.convolutionInFreqOpt(dataOut.data) + dataOut.data = datadec dataOut.heightList = dataOut.heightList[0:ndatadec]