Expand description
A library to simplify reading Murchison Widefield Array (MWA) raw visibilities, voltages and metadata.
Re-exports§
pub use fitsio;
pub use fitsio_sys;
Modules§
Macros§
- fits_
open - Open a fits file.
- fits_
open_ hdu - Open a fits file’s HDU by index.
- fits_
open_ hdu_ by_ name - Open a fits file’s HDU by name.
- get_
fits_ col - Get a column from a fits file’s HDU.
- get_
fits_ float_ image_ into_ buffer - Given a FITS file pointer and a HDU, read the associated float image.
- get_
fits_ image - Given a FITS file pointer and a HDU, read the associated image.
- get_
hdu_ image_ size - Get the size of the image on the supplied FITS file pointer and HDU.
- get_
optional_ fits_ key - Given a FITS file pointer, a HDU that belongs to it, and a keyword that may or may not exist, pull out the value of the keyword, parsing it into the desired type.
- get_
optional_ fits_ key_ long_ string - Given a FITS file pointer, and a keyword to a long string keyword that may or may not exist, pull out the long string of the keyword. This deals with FITSs CONTINUE mechanism by calling a low level fits function.
- get_
required_ fits_ key - Given a FITS file pointer, a HDU that belongs to it, and a keyword, pull out the value of the keyword, parsing it into the desired type.
- get_
required_ fits_ key_ long_ string - Given a FITS file pointer, and a keyword to a long string keyword, pull out the long string of the keyword. This deals with FITSs CONTINUE mechanism by calling a low level fits function.
Structs§
- Antenna
- Structure for storing MWA antennas (tiles without polarisation) information from the metafits file
- Baseline
- This is a struct for our baselines, so callers know the antenna ordering
- Coarse
Channel - This is a struct for coarse channels
- Correlator
Context - This represents the basic metadata and methods for an MWA correlator observation.
- Metafits
Context - Metafits context. This represents the basic metadata for an MWA observation.
- Rfinput
- Structure for storing MWA rf_chains (tile with polarisation) information from the metafits file
- Signal
Chain Correction - Signal chain correction table
- Time
Step - This is a struct for our timesteps NOTE: correlator timesteps use unix time, voltage timesteps use gpstime, but we convert the two depending on what we are given
- Voltage
Context - This represents the basic metadata and methods for an MWA voltage capture system (VCS) observation.
Enums§
- Cable
Delays Applied - The type of cable delays applied to the data
- Coarse
Channel Error - CoarseChannelError subtypes
- Fits
Error - FitsError subtypes - mainly used by CorrelatorContext
- Geometric
Delays Applied - The type of geometric delays applied to the data
- Gpubox
Error - GpuboxError subtypes - mainly used by CorrelatorContext
- MWAMode
- The MODE the system was in for this observation
- MWAVersion
- Enum for all of the known variants of file format based on Correlator version
- Metafits
Error - Metafits error subtypes - used by MetafitsContext
- Mwalib
Error - MwalibError subtypes
- Pol
- Instrument polarisation.
- Receiver
Type - ReceiverType enum.
- Rfinput
Error - EfinputError subtypes
- VisPol
- Visibility polarisations
- Voltage
File Error - VoltageFileError subtypes - mainly used by VoltageContext
Constants§
- MWALIB_
MWA_ ALTITUDE_ METRES - The MWA’s altitude in metres.
- MWALIB_
MWA_ COAX_ V_ FACTOR - the velocity factor of electic fields in RG-6 like coax cable
- MWALIB_
MWA_ LATITUDE_ RADIANS - NOTE: the below constants are here for FFI compatibility
If you are using
Marlu
, then it’s recommended to use the constants from that library - MWALIB_
MWA_ LONGITUDE_ RADIANS - The MWA’s longitude on Earth in radians. This is 116d40m14.93485s.
- MWALIB_
SPEED_ OF_ LIGHT_ IN_ VACUUM_ M_ PER_ S - speed of light in m/s
Functions§
- as_
u8_ slice - convert_
gpstime_ to_ unixtime - Returns a UNIX time given a GPStime
- convert_
unixtime_ to_ gpstime - Returns a UNIX time given a GPStime
- dms_
to_ degrees - Function to take d m s and return the decimal degrees.
- eq_
with_ nan_ eq_ f32 - Returns True if the f32’s are equal even if one or both are NaNs. Code is from https://stackoverflow.com/questions/40767815/how-do-i-check-whether-a-vector-is-equal-to-another-vector-that-contains-nan-and
- eq_
with_ nan_ eq_ f64 - Returns True if the f64’s are equal even if one or both are NaNs. Code is from https://stackoverflow.com/questions/40767815/how-do-i-check-whether-a-vector-is-equal-to-another-vector-that-contains-nan-and
- get_
antennas_ from_ baseline - Given a baseline index, return a tuple of (ant1,ant2) for a std right upper triangle e.g. (where N is num antennas) Returns None if baseline was not found (your baseline is out of range) 0,0 0,1 … 0,N-1 1,1 1,2 1,N-1 … 2,2 … N-1,N-1
- get_
baseline_ count - Given the number of antennas, calculate the number of baselines (cross+autos)
- get_
baseline_ from_ antenna_ names - Given two antenna names and the vector of Antenna structs from metafits, return the baseline index.
- get_
baseline_ from_ antennas - Given two antenna indicies, return the baseline index.
- has_
whitening_ filter - Returns a bool based on whether this cable flavour has a whitening filter. (Used by rfinput::new())
- is_
fitsio_ reentrant - Returns True if CFITSIO was compiled with the REENTRANT directive
- pretty_
print_ vec_ to_ string - Returns a formatted string to ‘pretty print’ a vector Example 1: show_first_elements = 2
- read_
cell_ array_ f32 - Pull out the array-in-a-cell values. This function assumes that the output datatype is f32, and that the fits datatype is E (f32), so it is not to be used generally!
- read_
cell_ array_ f64 - Pull out the array-in-a-cell values. This function assumes that the output datatype is f64, and that the fits datatype is D (f64), so it is not to be used generally!
- read_
cell_ array_ u32 - Pull out the array-in-a-cell values. T
- read_
cell_ value - vec_
compare_ f32 - Returns True if the Vec
’s are equal even if one or both contain NaNs. Code is from https://stackoverflow.com/questions/40767815/how-do-i-check-whether-a-vector-is-equal-to-another-vector-that-contains-nan-and - vec_
compare_ f64 - Returns True if the Vec
’s are equal even if one or both contain NaNs. Code is from https://stackoverflow.com/questions/40767815/how-do-i-check-whether-a-vector-is-equal-to-another-vector-that-contains-nan-and