1 of 32

WORKSHOP 2020

2-6 November 2020

Millimeter VLBI with rpicard

MICHAEL JANSSEN

CASA

2 of 32

Radboud PIpeline for the Calibration of high Angular Resolution Data (rPICARD)

2

  • Janssen et al., A&A, 626 (2019) A75.
  • The Event Horizon Telescope Collaboration,�2019, ApJL, 875, L3.
  • https://bitbucket.org/M_Janssen/picard
  • Based on CASA6 with own plotting functions.�
  • Many diagnostics, easy to tune parameters + re-run.�
  • For many arrays: EHT, GMVA, VLBA, EVN, …

3 of 32

Pipeline setup (1/3)

3

  • Singularity, Docker, or from source:
  • Using Singularity ( https://singularity.lbl.gov/ ) in the working dir:

$ singularity build casavlbi.pipe docker://mjanssen2308/casavlbi:latest

$ singularity run ./casavlbi.pipe

4 of 32

Pipeline preparation (2/3)

4

  • $ cp -r /usr/local/src/picard/input_template/ input
  • rPICARD will automatically identify and use files based on their extension

(freely configurable). Add files or links to workdir.�

  • Raw visibility data
    • FITS-IDI files or MS.�
  • ANTAB a-priori calibration metadata�
  • Text files containing flagging instructions for bad data
  • Other:
    • Receiver temperatures, weather data, source models.

5 of 32

Configure (3/3)

5

  • input/observation.inp, input/array.inp
  • Example:

##### observation.inp #####

science_target = 3C273, OJ287

calibrators_instrphase = 3C279

calibrators_bandpass = None

calibrators_rldly = None

calibrators_dterms = None

##### array.inp #####

array_type = GMVA

refant = LA, KP, PT

6 of 32

Running the software

6

$ picard -p -n 4�

7 of 32

Inspect the data!!!

7

jplotter: 3mm VLBA data of 3C279 & 3C273. Project code: S6096B (scan #14 & #1).

8 of 32

Amplitude calibration

8

9 of 32

Accor & scalar bandpass (step 0, 1)

9

7mm VLBA data of M87. Project code: BW0106.

10 of 32

Flux density calibration (step 2, 3)

10

7mm VLBA data of M87. Project code: BW0106. Tsys ~ Trx + (1 - e)Tatm → Tsys * eτ

11 of 32

Phase calibration

11

12 of 32

Intra-scan exhaustive fringe search

12

7mm VLBA data of M87.

Project code: BW0106.

  • A0, B0, C0, D0 list of prioritized reference stations.�
  • Green : detection.�
  • Red: Non-detection.�
  • D0 and d1 still un-calibratable.�
  • b1, C0, ci calibratable via re-referencing.�

13 of 32

Solution interval estimation (step 4)

13

7mm VLBA data of M87.

Project code: BW0106.

3mm VLBA data of 3C279. Project code: S6096B.

14 of 32

First: calibrator sources→solve instrumental effects��Then: weaker science targets

14

15 of 32

Coherence calibration (step 5)

15

7mm VLBA data of M87.

Project code: BW0106.

Some EHT data (1mm).

Atmospheric phase stabilization

========================>

16 of 32

Instrumental phases and delays (step 6)

16

7mm VLBA data of M87.

Project code: BW0106.

Some EHT data (1mm).

Per-spw fringefit

============>

17 of 32

Complex bandpass (step 8)

17

7mm VLBA data of M87.

Project code: BW0106.

7mm VLBA data of M87.

Project code: BW0106.

18 of 32

Now: All instrumental effects are taken out

→ Calibrate science targets

18

19 of 32

Last calibration steps: fringe-fit science targets

(steps 12, 13, 14)

19

7mm VLBA data of M87.

Project code: BW0106.

  • First: long integration (entire scan) to take out bulk delay or rate with maximized SNR.�→ Source detected or not?�Typically with open FFT search windows.�
  • Then: Use narrow windows (small false detection probability) to solve for residual intra-scan atmospheric effects on short timescales.

→ Using optimized solution intervals.�

  • Can also enable phase-referencing mode.
    • Possibility for residual fringe search on sufficiently strong science targets.

20 of 32

Last calibration steps: fringe-fit science targets

20

7mm VLBA data of M87.

Project code: BW0106.

7mm VLBA data of M87. Project code: BW0106.

21 of 32

THANKS TO OUR SPONSORS:

THIS EVENT HAS RECEIVED FUNDING FROM THE EUROPEAN UNION’S HORIZON 2020 RESEARCH AND INNOVATION PROGRAMME under grant agreements 730562 (RadioNet) and 7308844 (JUMPING JIVE)

CASA

22 of 32

Backup slides

22

23 of 32

Pipeline installation

23

  • Get a test data set when not using your own:�$ wget https://ftp.science.ru.nl/astro/mjanssen/S6096B.tar.gz
  • Using Singularity (for Docker see README) in the working dir:

$ singularity build casavlbi.pipe docker://mjanssen2308/casavlbi:latest

$ singularity run ./casavlbi.pipe

$ cp -r /usr/local/src/picard/input_template/ input

  • From source for Ubuntu (Linux only, can have multiple CASA versions) in src dir:

$ git clone https://bitbucket.org/M_Janssen/picard

$ curl -L "$(cat picard/README.md | grep wget | cut -d' ' -f3)" -o CASA.picard.tar.xz

$ tar xJf CASA.picard.tar.xz && rm -rf CASA.picard.tar.xz

$ python picard/setup.py -a -p /usr/local/src

$ printf '\nexport PATH=$PATH:'"$(pwd)"'/picard/picard\n' >> ~/.bashrc

$ printf '\nexport PYTHONPATH=$PYTHONPATH:'"$(pwd)"'/picard/picard\n' >> ~/.bashrc

$ sudo apt-get install singularity-container� Or install https://github.com/haavee/jiveplot.

$ cd /path/to/working/dir && cp -r /path/to/picard/picard/input .

24 of 32

Running the software

24

  • To run the full pipeline:�$ picard -p -n 4�
  • Show command line arguments:�$ picard -h�
  • Generate raw data visibility plots: $ picard -p -n 2 -q h,k

25 of 32

rPICARD steps

25

26 of 32

Pre-calibration steps

26

7mm VLBA data of M87.

Project code: BW0106.

  1. Load data into MS, create obs summary file (listobs).�
  2. Prepare flux density calibration metadata.�
  3. Create and manage flag versions.�
  4. Load source models.�
  5. Flagging
    1. Correlator (attached to FITS-IDI files).
    2. Txt files.
    3. Automated outlier detection in auto-correlations.
    4. Edge channels.
    5. Quack (scan start and end times).

27 of 32

Solution interval estimation (step 5, 12)

27

7mm VLBA data of M87.

Project code: BW0106.

  • Fringe-fitting can be used to calibrate for intra-scan atmospheric effects on short timescales.�
  • A source is detected when the SNR of the initial FFT is high enough.�The more detections per scan, the better the atmospheric calibration.�
  • Input parameter: Search range depending on array sensitivity and observing frequency.�Set to ‘estimate’ by default.�
  • For each scan, the solution interval which yields the most detections on all baselines is used.�
  • Can calibrate sensitive baselines on short timescales and still get detections on longer timescales for baselines with weak signals.

→ Fringe-fit scans with 2 different solution intervals and merge calibration solutions.

28 of 32

Determine reference stations for global fringe-fit

28

7mm VLBA data of M87.

Project code: BW0106.

  • Two input parameters
    • List of prioritized reference stations, e.g. EF, YS, MC, NT.
    • Minimum fraction of valid (unflagged) data that must be present in a scan χ.
  • For each scan, the first antenna in the refant list with�valid data > χ is picked as refant for that scan.
  • If all valid data fractions < χ, the antenna with the most valid data is picked.�
  • χ should be small for polarization experiments and/or when a single very sensitive station is present in the array (e.g., ALMA).�
  • In the end all fringe solutions are re-referenced to one common antenna over the entire experiment to keep the R-L phase difference to a constant value from a single reference antenna.

29 of 32

Multi-band calibrator fringe-fit & complex bandpass (steps 7, 8)

29

7mm VLBA data of M87.

Project code: BW0106.

  • After instrumental phase and delay offsets have been solved: Combine full band data for a fringe-fit to solve for atmospheric multi-band delays.

  • If SNR is good enough: Can combine all all calibrator data (SNR weighted) to fit for a complex (phase) bandpass.
    • Per channel corrections or polynomial fit.

7mm VLBA data of M87. Project code: BW0106.

30 of 32

Polarization calibration (step 8, 9, 10)

30

7mm VLBA data of M87.

Project code: BW0106.

  • Solve for instrumental RL phase and delay offsets.��
  • Simple CASA task available to solve for polarization leakage / D-terms.�
  • More advanced task in development [IMV].
    • Solve for non-linear effects.
    • Handle varying polarized structure of extended sources.

31 of 32

Post-calibration steps

31

7mm VLBA data of M87.

Project code: BW0106.

  • Clear previous calibration.�
  • Apply solution tables.�
  • Print overview of flagged data percentages.�
  • Make plots of visibilities.�
  • Average (only channels by default) and export calibrated data.

32 of 32

Calibration result

32

7mm VLBA data of M87.

Project code: BW0106.

3mm VLBA data of 3C279. Project code: S6096B (scan #14).