Pull request #1032: CAS-14348
Merge in CASA/casa6 from CAS-14348 to master
* commit 'ca6131575d1f2743a010aa75f582a58f9eab1fcf':
Re-asserting that fringefit doesn't allow orphan timesteps
For CAS-14348:
Fixing the orphan timestep fringefit bug again
Turn off debugging output now I've tested the package built with it
Fixing fringefit on a single channel (again) and adding a test for it
Re-asserting that fringefit doesn't allow orphan timesteps
In a future release we should allow single time fringefit if not solving for delay, just as we allow single channel fringefit
when not solving for rate, but now is not the time.
For CAS-14348:
1. In DelayRateFFT.cc's DelayRateFFTConcat class:
(a) Reordered working array (Vpad_) axes to put time and freq before corr and ant (Fortran order) so they are contiguous for 2d FFT;
(b) Introduced direct use of fftw (instead of LatticeFFT) thereby drastically improving performance of the FFT stage; by (mainly) avoiding unnecessary copies;
(c) Improved array slicing to streamline (unavoidable) data copies into the working array;
(d) Introduced Double precision weight sum accumulation (copied to Single precision at the end), and streamlined weight accumulation code to make it clearer;
(e) In snr calulation use amplitude found in searchPeak instead of relocating it via calculation from delay/rate solutions;
(f) Various other code clean-up and minor re-org.
2. In FringeJones.cc: Logging improvements for readability, and introduced fringefit stage solving time measurements and logging.
3. In Calibrater.cc: Occasionally (every ~10%) report solution count progress, and don't log useless solution quality stats for FringeJones (they are not yet filled correctly)