Skip to content

mwalib 1.4.0

Compare
Choose a tag to compare
@github-actions github-actions released this 24 Jul 10:52
· 32 commits to main since this release
9170068

1.4.0 24-Jul-2024

  • mwalib now exposes the calibration solution information in a metafits file (if present). When the metafits is generated by a call to the webservice, the metafits file will attempt to populate calibration solution information for the specified observation. The newest produced calibration solution from a calibrator with the same frequency channels and proximity in time will be added to the CALIBDATA hdu which is exposed by mwalib in the structs and attributes below. see: Metafits files Wiki article for more information about metafits files.
    • RfInput struct now contains the following new fields. If calibration solution information is not present in the metafits they will be None.
      • calib_delay - Calibration delay in meters
      • calib_gains - Calibration gains vector: 1 f32 per coarse channel. Channels are in MetafitsContext.course_chans order.
    • When calibration solution information is present, some values of calib_delay and calib_gains may be NaN. Make sure you understand how NaNs work in Rust if you will be using these columns!
    • Via C, if the calibration solution information is not present, the values will be NaN (or an array of NaNs in the case of calib_gains):
    • MetafitsContext struct now contains the following new fields.
      • best_cal_fit_id - Best calibration fit ID. If not present in the metafits it will be None; via C, the value will be 0.
      • best_cal_obs_id - Best calibration observation ID. If not present in the metafits it will be None; via C, the value will be 0.
      • best_cal_code_ver - Best calibration fit code version. If not present in the metafits it will be None; via C, the value will be an empty string.
      • best_cal_fit_timestamp - Best calibration fit timestamp. If not present in the metafits it will be None; via C, the value will be an empty string.
      • best_cal_creator - Best calibration fit creator. If not present in the metafits it will be None; via C, the value will be an empty string.
      • best_cal_fit_iters - Best calibration fit iterations. If not present in the metafits it will be None; via C, the value will be 0.
      • best_cal_fit_iter_limit - Best calibration fit iteration limit. If not present in the metafits it will be None; via C, the value will be 0.
  • When populating RfInput::has_whitening_filter, mwalib will use the Whitening_Filter key/value if present in the metafits, instead of deducing it from cable_flavour. If whitening_filter is not present, the existing deduction logic will be used.
  • MetafitsContext::deripple_applied- modified mwalib to use DERIPPLE metafits key (it still supports DR_FLAG just in case it is an old metafits)
  • When using the Display trait of MetafitsContext or the C function mwalib_metafits_context_display, limit the printing of fine channels - for better readability.
  • Added simple Rust example "mwalib-print-context" which does what it says on the tin.

PR(s)

  • Metafits cal info, deripple, whitening filter by @gsleap in #75

Full Changelog of commits: v1.3.3...v1.4.0