Channelize¶
- class baseband_tasks.channelize.Channelize(ih, n, samples_per_frame=1, *, frequency=None, sideband=None)[source] [edit on github]¶
Bases:
TaskBaseBasic channelizer.
Divides input into blocks of
ntime samples, Fourier transforming each block. The output sample shape is(channel,) + ih.sample_shape.- Parameters:
- ihtask or
basebandstream reader Input data stream, with time as the first axis.
- nint
Number of input samples to channelize. For complex input, output will have
nchannels; for real input, it will haven // 2 + 1.- samples_per_frameint, optional
Number of complete output samples per frame (see Notes). Default: 1.
- frequency
Quantity, optional Frequencies for each channel in
ih(channelized frequencies will be calculated). Default: taken fromih(if available).- sidebandarray, optional
Whether frequencies in
ihare upper (+1) or lower (-1) sideband. Default: taken fromih(if available).
- ihtask or
See also
baseband_tasks.fourier.fft_makerto select the FFT package used.
Notes
Instances initialize an FFT that acts upon axis 1 of an input with shape:
(samples_per_frame, n) + ih.sample_shape
Setting
samples_per_frameto a number larger than 1 results in the FFT performing channelization on multiple blocks per call. Depending on the backend used, this may speed up sequential channelization, though for tests usingnumpy.fftthe performance improvement seems to be negligible.Methods Summary
inverse(ih)Create a Dechannelize instance that undoes this Channelization.
task(data)Methods Documentation
- inverse(ih)[source] [edit on github]¶
Create a Dechannelize instance that undoes this Channelization.
- Parameters:
- ihtask or
basebandstream reader Input data stream to be dechannelized.
- ihtask or
- task(data)[source] [edit on github]¶