Skip to content
gitj edited this page May 1, 2012 · 11 revisions

Initialization

FilterbankCuda.C - FilterbankEngine::setup

  • filterbank->response has nchan = input nchan
  • filterbank->get_nchan returns number of Output channels of the filterbank
  • filterbank->get_input->get_nchan returns number of channels of the input, but this is not generally available in the engine

Want:

  • nchan_in = filterbank->get_input->get_nchan
  • nchan_out = filterbank->get_nchan
  • nchan_sub = nchan_out/nchan_in

pseudo code:

For each ipart
  For each nchan_in
   For each ipol
     Do forward fft of size appropriate for kernel (kernlen
     get kernel(ichan_in,ipol)
     multiply kernel
     For each nchan_sub:
       Do reverse fft of size kernlen/nchan_sub
       Copy good part of data to output
Clone this wiki locally