mreineck / ducc

Fork of https://gitlab.mpcdf.mpg.de/mtr/ducc to simplify external contributions
GNU General Public License v2.0
13 stars 12 forks source link

Difference between dirty2ms and dirty2vis #32

Closed Joshuaalbert closed 3 months ago

Joshuaalbert commented 3 months ago

Is there some documentation on the precise definition of what these two functions, dirty2ms, and dirty2vis are how they are different? Where is the "MS object" defined? These docs are not clear https://mtr.pages.mpcdf.de/ducc/wgridder.html

mreineck commented 3 months ago

dirty2ms is basically an older, less flexible version of dirty2vis that I have left in the Python module for backwards compatibility. Internally every call to dirty2ms is mapped onto a call to dirty2vis; same for ms2dirty/vis2dirty. "MS" stands for "measurement set" and is a 2D complex-valued array representing the "row x channel" structure of a radio interferometry measurement set data. From a purely technical viewpoint the docstrings should be fairly complete, I hope; if there is anything concrete missing, I'll try my best to fix this. A more high level description of the algorithm is given in https://arxiv.org/abs/2010.10122 .

Joshuaalbert commented 3 months ago

Hi @mreineck Thanks for the explanation. Reading the numpy implementation was insightful https://gitlab.mpcdf.mpg.de/mtr/ducc/-/blob/ducc0/python/demos/wgridder_python_implementations.py

mreineck commented 3 months ago

Thanks for the feedback - it is very good to know that these toy implementations are useful!