ska-sci-ops / aa_uv

Utilities for working with AAVS data
BSD 3-Clause "New" or "Revised" License
0 stars 1 forks source link

[AEP013] Support station rotation #72

Open telegraphic opened 1 month ago

telegraphic commented 1 month ago

SKA-Low stations will each have a rotation applied, meaning the antennas X and Y pols no longer line up with N-E.

The angle will be written in the uv_config.yaml file as such:

# UVX configuration file
history: Created with scripts/uv-config-from-mccs-yaml at 2024-07-11 20:30:53.394
instrument: s8-6
telescope_name: s8-6
telescope_ECEF_X: -2561290.834671186
telescope_ECEF_Y: 5085918.515378327
telescope_ECEF_Z: -2864050.8717797464
channel_spacing: 781250.0           # Channel spacing in Hz
channel_width: 925926.0             # 781250 Hz * 32/27 oversampling gives channel width
antenna_locations_file: antenna_locations.txt
baseline_order_file: baseline_order.txt
polarization_type: linear_crossed  # stokes, circular, linear (XX, YY, XY, YX) or linear_crossed (XX, XY, YX, YY)
receptor_angle: 193.6              # clockwise rotation angle in degrees away from N-E
conjugate_hdf5: true               # Apply complex conjugation to HDF5 data when loading
transpose_hdf5: true               # Transpose cross-pol terms when loading HDF5 data
vis_units: uncalib

This information needs to be written to

UVFITS

From AIPS Memo 117.

In UVFITS, AIPS AN antenna table, the columns POLAA and POLAB should be updated:

POLAA  1E  degrees  Position angle feed A
POLAB  1E  degrees  Position angle feed B

The value of the POLAA column shall be the orientation of feed A, assumed independent of IF, given in degrees. Similarly, the POLABcolumn shall contain the feed orientation for feed B.

MS

Need to update RECEPTOR_ANGLE column of the FEED table of a measurement set. https://safe.nrao.edu/wiki/bin/view/ALMA/ReceptorAngles

These angles are stored in radians. If there are multiple receiver bands in a measurement set, then multiple angles will be shown.

SDP Visibility

Not supported in the SDP Visibilty data model.

Miriad

No idea what keywords would need to change.

UVX

Add station_rotation dataset to antennas/attrs.

telegraphic commented 1 month ago

Implemented in UVX as uvx.antennas.attrs['array_rotation_angle']

image