Step -1.0: healvis validation #25
Labels
formal-test
A formal Validation Test
simcmp:fg:gsm
Simulator Component: Global Sky Model
simulator:healvis
Uses the healvis simulator
simulator:pyuvsim
Uses the pyuvsim simulator
status:active
A formal test that is being actively worked on
Validation of
healvis
simulator againstpyuvsim
and against analytic models. This issue is to begin the process of defining the tests and conditions for success.Setup
Telesope:
Sky model:
Source model conversion
pyuvsim
andhealvis
handle sources differently:healvis
takes in a source model as a set of HEALpix maps representing surface brightness temperature in Kelvin, where each pixel value is assumed to represent a sample of a uniform facet of the sky. One HEALPix map is used for each frequency channel.pyuvsim
accepts only flat-spectrum point sources in Jy.The input model is defined as 1 Jy at all frequencies. For
healvis
, this means each pixel value is scaled by 1/(Ων), for pixel area Ω in steradians and frequency ν in Hz. Thehealvis
model therefore has a spectral dependence so that thepyuvsim
model can be spectrally-flat.Comparison
The above plot shows the difference of corresponding visibilities in
pyuvsim
andhealvis
in the complex plane. Deviations appear to reach as high as 10% in some cases. A few potential sources of this error have been investigated but so far the cause is unknown.Selecting only the first time step and coloring each point by the frequency gives the following:
Clearly, the error is specific to each baseline and varies with frequency. However, it doesn't seem to have a regular behavior with baseline angle or length.
Replacing the healvis alt/az calculation with the
astropy
equivalent (which is what pyuvsim uses) yields the same discrepancies (or, very very nearly).Comparison with Analytic Models
Steven and I have come up with a handful of exact solutions for the visibility of a diffuse sky. For instance, the very simple (and unphysical...) case of a uniform beam with a uniform sky model yields a sinc-function visibility:
In the above, the visibilities simulated for a random layout of 80 antennas are binned in baseline length (u). This solution is real, so the imaginary component is expected to be zero. This plot is to illustrate the similarity, since the binning introduces some discrepancies, especially for mostly empty bins.
Direction Forward
The cause of the remaining discrepancy between pyuvsim and healvis needs to be tracked down and understood. The frequency dependence suggests that some error in the fringe term is introducing a frequency-dependent phase.
Comparing the two codes has already revealed a difference azimuth conventions between the two codes, which can lead to some errors when using beams with azimuthal dependence. Fixing it, there is still a slight disagreement in azimuth with astropy, which is maximized at the southern horizon where it reaches about half an arcminute.
Coming up with a good way to analytic models will also help. This can also test the limits of the point-source approximation, which
pyuvsim
cannot evaluate.The text was updated successfully, but these errors were encountered: