diff --git a/RTCP/Cobalt/GPUProc/src/cuda/SubbandProcs/BeamFormerFactories.cc b/RTCP/Cobalt/GPUProc/src/cuda/SubbandProcs/BeamFormerFactories.cc index 7fab3220fdc01cb5e199062382e36ce6d15cd5f9..45532308ec28f281ec4a75ca07e1091d519a1fe0 100644 --- a/RTCP/Cobalt/GPUProc/src/cuda/SubbandProcs/BeamFormerFactories.cc +++ b/RTCP/Cobalt/GPUProc/src/cuda/SubbandProcs/BeamFormerFactories.cc @@ -143,12 +143,10 @@ namespace LOFAR { FIR_FilterKernel::Parameters params(ps); - params.nrSTABs = ps.settings.beamFormer.maxNrTABsPerSAP(); + params.nrSTABs = ps.nrStations(); - // define at least 16 channels to get the FIR_Filter.cu to compile, even - // if we won't use it. - params.nrChannelsPerSubband = std::max(16U, - ps.settings.beamFormer.incoherentSettings.nrChannels); + params.nrChannelsPerSubband = + ps.settings.beamFormer.incoherentSettings.nrChannels; // time integration has not taken place yet, so calculate the nrSamples // manually diff --git a/RTCP/Cobalt/GPUProc/src/cuda/SubbandProcs/BeamFormerSubbandProc.cc b/RTCP/Cobalt/GPUProc/src/cuda/SubbandProcs/BeamFormerSubbandProc.cc index 228ddd57552f1aabf43d4fcac94678bc5d836521..74664b7c1f58714c316e3a4ad4cf05c53c31e5a9 100644 --- a/RTCP/Cobalt/GPUProc/src/cuda/SubbandProcs/BeamFormerSubbandProc.cc +++ b/RTCP/Cobalt/GPUProc/src/cuda/SubbandProcs/BeamFormerSubbandProc.cc @@ -230,7 +230,7 @@ namespace LOFAR // final FFT: B -> B incoherentFinalFFT( queue, ps.settings.beamFormer.incoherentSettings.nrChannels, - (NR_POLARIZATIONS * ps.nrSamplesPerSubband() / + (ps.nrStations() * NR_POLARIZATIONS * ps.nrSamplesPerSubband() / ps.settings.beamFormer.incoherentSettings.nrChannels), true, devB), diff --git a/RTCP/Cobalt/GPUProc/test/SubbandProcs/tBeamFormerSubbandProcProcessSb.cc b/RTCP/Cobalt/GPUProc/test/SubbandProcs/tBeamFormerSubbandProcProcessSb.cc index 47c4c5fa4afa6d0ba2b8a0a17debc2020f9861a9..e72472e466c181a5e521ac829e5437dd7730515a 100644 --- a/RTCP/Cobalt/GPUProc/test/SubbandProcs/tBeamFormerSubbandProcProcessSb.cc +++ b/RTCP/Cobalt/GPUProc/test/SubbandProcs/tBeamFormerSubbandProcProcessSb.cc @@ -37,8 +37,8 @@ template<typename T> T inputSignal(size_t t) { size_t nrBits = sizeof(T) / 2 * 8; // double freq = 1.0 / 2.0; // in samples - double freq = 1.0 / 4.0; // in samples - double amp = (1 << (nrBits - 1)) - 10; + double freq = 1.0 / 32.0; // in samples + double amp = (1 << (nrBits - 1)) - 1; double angle = (double)t * 2.0 * M_PI * freq; diff --git a/RTCP/Cobalt/GPUProc/test/SubbandProcs/tBeamFormerSubbandProcProcessSb.parset b/RTCP/Cobalt/GPUProc/test/SubbandProcs/tBeamFormerSubbandProcProcessSb.parset index e64611e615b91e354ae007be39d4d1fd389886ba..83c6708a77418d156c27c24422a6b39a70608750 100644 --- a/RTCP/Cobalt/GPUProc/test/SubbandProcs/tBeamFormerSubbandProcProcessSb.parset +++ b/RTCP/Cobalt/GPUProc/test/SubbandProcs/tBeamFormerSubbandProcProcessSb.parset @@ -18,7 +18,7 @@ OLAP.CNProc_CoherentStokes.timeIntegrationFactor = 1 OLAP.CNProc_CoherentStokes.channelsPerSubband = 1 OLAP.CNProc_IncoherentStokes.which = I # IQUV OLAP.CNProc_IncoherentStokes.timeIntegrationFactor = 1 -OLAP.CNProc_IncoherentStokes.channelsPerSubband = 1 +OLAP.CNProc_IncoherentStokes.channelsPerSubband = 16 Observation.rspBoardList = [0] Observation.rspSlotList = [0]