Details
-
Feature
-
Should have
-
None
-
Data Processing
-
-
-
3
-
3
-
5
-
1.667
-
Team_NZAPP
-
Sprint 5
-
-
-
-
14.2
-
Stories Completed, Integrated, Outcomes Reviewed, NFRS met, Demonstrated, Satisfies Acceptance Criteria, Accepted by FO
-
-
SPO-1454
Description
New functionality that could be worked on in a (potential) decreasing order of importance:
- The functions in the current version of CNG take a Boolean variable do_wstacking which essentially chooses between a 2D and 3D gridder. However this is currently ignored and assumed to be true, and the 2D gridder would be useful for debugging.
- This version of CUDA Nifty Gridder (CNG) is based on the code at https://gitlab.mpcdf.mpg.de/ift/nifty_gridder but there is a more recent version at https://gitlab.mpcdf.mpg.de/mtr/ducc. So CNG should be checked against that.
- The oversampling of the uv-grid vs the image is hardcoded at 2.0x in the currrent version. But other values would be of interest, like maybe 1.5x or 1.2x? The benefit is saving memory usage, possibly at the expense of some accuracy.
- The reference code at DUCC also includes a mask matrix that allows some visibilities to be ignored, this is not yet available in CNG.
- The exponential of semicircle kernels are not normalised (L2 norm around 3.5). This consistent with the reference code, but is it correct?
- There is a final w-dependent scaling in the Nifty Gridder paper, but not the reference code. This has been implemented in CNG, but it is not enabled, in order to be consistent with the reference code. This could be tested against an image generated with a direct Fourier transform, and made an option.
- Only ms2dirty() and dirty2ms() have been implemented in CNG so far, but there are many other functions in the reference Nifty gridder. Although they are not yet used by RASCIL.
There are of course other issues that may come up once someone is using CNG in earnest.