astro-informatics / purify

Next-generation radio interferometric imaging.
https://astro-informatics.github.io/purify
GNU General Public License v2.0
17 stars 13 forks source link

Added implementation for reading uvfits with a few unit tests. #116

Closed Luke-Pratley closed 6 years ago

Luke-Pratley commented 6 years ago

Seems to work, but need to add more unit tests. It uses cfitsio directly, since CCFits does not support reading of uvfits (random groups as the are known) fits files.

This also helps since we can move away to just using cfitsio by following a similar but easier implementation for reading and writing images.

It is not clear how specific some of the table structure is to the telescope. https://archive.stsci.edu/fits/users_guide/node28.html is a useful reference. The first column of the array/image is the uvw coordinates, time and baseline index. The second column contains (real, imaginary) visiblities, weights for all polarisations and channels (I think also for all times, but it is not completely clear).

There is no clear documentation for the data structure, but trial and error with using measurement sets as a reference helps.

dpshelio commented 6 years ago

Why Jenkins didn't run :disappointed:

Luke-Pratley commented 6 years ago

@dpshelio Thanks for doing a quick review!

Sorry, this pull request is getting a bit out of hand, since I am trying to get multiple bits of code to work at once... It has implementation of uvfits, but also things related to imaging real data with extremely wide-fields of view. It is still not ready to be merged, I will have to look at it when I get back and discuss it with you UCL people.

Luke-Pratley commented 6 years ago

The uvfits file format is completely defined by an AIPS memo, which can be found at ftp://ftp.aoc.nrao.edu/pub/software/aips/TEXT/PUBL/AIPSMEM117.PDF

The tests pass, and uvfits is supported for creating images. No more work is done on this branch.