Simulating Atmospheric Phase Errors, Phase Correction and the Impact on ALMA Science
Abstract
We present a framework for modelling atmospheric phase errors and their correction by both the fast-switching and water vapour radiometeric techniques. Notable features are simulating three dimensional turbulent volumes instead of flat phase screens, considering three representative configurations of ALMA and parametrisation in terms of phase fluctuations on a 300m baseline, allowing referencing to the site-testing interferometer data. We use this framework to simulate relative point source sensitivity and effective resolution for a range of atmospheric conditions, with and without phase correction. We also consider the effect of phase fluctuation on short `snapshot' observations, where the variance and correlation of atmospheric phase fluctuations between the antennas becomes important.
Full text
Arriving soon -- if you can't wait email me for a draft copy.
Software
All of the software is made available under the GPL license and all of it is without any warranty. See the preamble on oof software page.
Please note that this is not end-user software. To make use of it you will need to go through compilation and write some code yourself. Also please note that the collection below is somewhat fragmentary, i.e., it does not contain absolutely every piece of code used in the course of preparing results shown in the memo. However, if you find that anything important is missing please write to me and it should be possible to post it here.
Efficient generation of 3D turbulent volumes
The code for generating the 3D turbulent is a self-contained sub-package of the library BNLib. The relevant functionality can be relatively easily extracted, but it is recommended to simply build and use the library as a whole.
This is an excerpt of the README file regarding building the library:
The library is built using the standard autotools "toolchain"; the
generic instructions for how this works are contained in the INSTALL
file.
* Prerequisites
Below is a textual description of the requirements of the
library. The file configure.ac defines exactly what the automatized
configuration mechanism looks for
* GSL Version 1.5 or greater. Note that only a warning error will be
printed if GSL is not found by the configure script!
* For python bindings only: SWIG version 1.3.31 or newer (1.3.34
recommended)
* Build process
Sample build instructions::
export set BNDEST=~/mylibs
./configure --prefix=${BNDEST}
make
make install
The current version of the library is V1.2.1: download as a tar.bz2 file .
The manual for the turbulence generation code is available as a PDF.
Other software components
Below are all of the other software components that were developed for deriving the results described in the memo:
- Parse antenna position lists almaconfparse.py
- Generation of fast-switched and simple observations without phase errors: bnalmasim.py
- Script illustrating the calls to bnalmasim.py: generate_switching.py
- Script that uses the c++ kolmogorov code to generate the phase screens: turbulencescreens.py
- Script for making dirty maps in Obit: obittools.py
- Blowing turbulent screens across the ALMA array: uvblow.py
- Generate whole data sets for analysis (i.e., multiple configurations, thicknesses, etc): imagingsim.py
- Analysis of dirty maps from Obit: imagingsim_obit.py
- Tools for dealing with UV-FITS files directly from Python: uvfits.py
- Simple phase calibration of UV-FITS files directly in Python: uvfits_cal.py