# UVCal Parameters¶

These are the standard attributes of UVCal objects.

Under the hood they are actually properties based on UVParameter objects.

## Required¶

These parameters are required to have a sensible UVCal object and are required for most kinds of uv cal files.

**Nants_data**- Number of antennas that have data associated with them (i.e. number of unique entries in ant_array). May be smaller than the number of antennas in the telescope
**Nants_telescope**- Number of antennas in the array. May be larger than the number of antennas with data
**Nfreqs**- Number of frequency channels
**Njones**- Number of Jones calibrationparameters (Number of Jones matrix elements calculated in calibration).
**Nspws**- Number of spectral windows (ie non-contiguous spectral chunks). More than one spectral window is not currently supported.
**Ntimes**- Number of times with different calibrations calculated (if a calibration is calculated over a range of integrations, this gives the number of separate calibrations along the time axis).
**ant_array**- Array of antenna indices for data arrays, shape (Nants_data), type = int, 0 indexed
**antenna_names**- List of antenna names, shape (Nants_telescope), with numbers given by antenna_numbers (which can be matched to ant_array). There must be one entry here for each unique entry in ant_array, but there may be extras as well.
**antenna_numbers**- List of integer antenna numbers corresponding to antenna_names, shape (Nants_telescope). There must be one entry here for each unique entry in ant_array, but there may be extras as well.
**cal_type**- cal type parameter. Values are delay, gain or unknown.
**channel_width**- Channel width of of a frequency bin. Units Hz.
**flag_array**- Array of flags to be applied to calibrated data (logical OR of input and flag generated by calibration). True is flagged. Shape: (Nants_data, Nspws, Nfreqs, Ntimes, Njones), type = bool.
**freq_array**- Array of frequencies, shape (Nspws, Nfreqs), units Hz.
**gain_convention**- The convention for applying the calibration solutions to data.Values are “divide” or “multiply”, indicating that to calibrate one should divide or multiply uncalibrated data by gains. Mathematically this indicates the alpha exponent in the equation: calibrated data = gain^alpha * uncalibrated data. A value of “divide” represents alpha=-1 and “multiply” represents alpha=1.
**history**- String of history, units English
**integration_time**- Integration time of a time bin, units seconds.
**jones_array**- Array of antenna polarization integers, shape (Njones). linear pols -5:-8 (jxx, jyy, jxy, jyx).circular pols -1:-4 (jrr, jll. jrl, jlr).
**quality_array**- Array of qualities of calibration solutions. The shape depends on cal_type, if the cal_type is “gain” or “unknown”, the shape is: (Nants_data, Nspws, Nfreqs, Ntimes, Njones), if the cal_type is “delay”, the shape is (Nants_data, Nspws, 1, Ntimes, Njones), type = float.
**spw_array**- Array of spectral window numbers, shape (Nspws).
**telescope_name**- Name of telescope. e.g. HERA. String.
**time_array**- Array of calibration solution times, center of integration, shape (Ntimes), units Julian Date
**time_range**- Time range (in JD) that cal solutions are valid for.list: [start_time, end_time] in JD.
**x_orientation**- Orientation of the physical dipole corresponding to what is labelled as the x polarization. Examples include “east” (indicating east/west orientation) and “north” (indicating north/south orientation)

## Optional¶

These parameters are defined by one or more file standard but are not always required. Some of them are required depending on the cal_type (as noted below).

**delay_array**- Required if cal_type = “delay”. Array of delays with units of seconds. Shape: (Nants_data, Nspws, 1, Ntimes, Njones), type = float.
**freq_range**- Required if cal_type = “delay”. Frequency range that solutions are valid for.list: [start_frequency, end_frequency] in Hz.
**gain_array**- Required if cal_type = “gain”. Array of gains, shape: (Nants_data, Nspws, Nfreqs, Ntimes, Njones), type = complex float.
**git_hash_cal**- Commit hash of calibration software (from git_origin_cal) used to generate solutions.
**git_origin_cal**- Origin (on github for e.g) of calibration software. Url and branch.
**input_flag_array**- Array of input flags, True is flagged. shape: (Nants_data, Nspws, Nfreqs, Ntimes, Njones), type = bool.
**observer**- Name of observer who calculated solutions in this file.
**total_quality_array**- Array of qualities of the calibration for entire arrays. The shape depends on cal_type, if the cal_type is “gain” or “unknown”, the shape is: (Nspws, Nfreqs, Ntimes, Njones), if the cal_type is “delay”, the shape is (Nspws, 1, Ntimes, Njones), type = float.

last updated: 2017-11-18