! Started logfile: /vlbi/uf001/uva//J0407+0742_X_dfm.log on Sun Jan 13 22:02:19 2019 float field_size field_size = 1024 float field_cell field_cell = 0.2000 float taper_size taper_size = 70.0 float freq freq = 8.42800 obs /vlbi/uf001/uva//J0407+0742_X_uva.fits ! Reading UV FITS file: /vlbi/uf001/uva//J0407+0742_X_uva.fits ! AN table 1: 42 integrations on 45 of 45 possible baselines. ! Apparent sampling: 0.947619 visibilities/baseline/integration-bin. ! Found source: J0407+0742 ! ! There are 12 IFs, and a total of 12 channels: ! ! IF Channel Frequency Freq offset Number of Overall IF ! origin at origin per channel channels bandwidth ! ------------------------------------------------------------- (Hz) ! 01 1 8.428e+09 3.2e+07 1 3.2e+07 ! 02 2 8.46e+09 3.2e+07 1 3.2e+07 ! 03 3 8.492e+09 3.2e+07 1 3.2e+07 ! 04 4 8.524e+09 3.2e+07 1 3.2e+07 ! 05 5 8.588e+09 3.2e+07 1 3.2e+07 ! 06 6 8.62e+09 3.2e+07 1 3.2e+07 ! 07 7 8.684e+09 3.2e+07 1 3.2e+07 ! 08 8 8.716e+09 3.2e+07 1 3.2e+07 ! 09 9 8.78e+09 3.2e+07 1 3.2e+07 ! 10 10 8.812e+09 3.2e+07 1 3.2e+07 ! 11 11 8.844e+09 3.2e+07 1 3.2e+07 ! 12 12 8.876e+09 3.2e+07 1 3.2e+07 ! ! Polarization(s): RR ! ! Read 134 lines of history. ! ! Reading 21492 visibilities. select rr, 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 ! Restricting channel ranges to the available 12 channels. ! Selecting polarization: RR, channels: 1..12 ! Reading IF 1 channels: 1..1 ! Reading IF 2 channels: 2..2 ! Reading IF 3 channels: 3..3 ! Reading IF 4 channels: 4..4 ! Reading IF 5 channels: 5..5 ! Reading IF 6 channels: 6..6 ! Reading IF 7 channels: 7..7 ! Reading IF 8 channels: 8..8 ! Reading IF 9 channels: 9..9 ! Reading IF 10 channels: 10..10 ! Reading IF 11 channels: 11..11 ! Reading IF 12 channels: 12..12 print "field_size =", field_size ! field_size = 1024 print "field_cell =", field_cell ! field_cell = 0.2 print "taper_size =", taper_size ! taper_size = 70 ![@/opt64/bin/pima_mupet_01.dfm J0407+0742_X] float lim_self lim_self = 120.0 float lim_val lim_va = 1.2 integer clean_niter clean_niter = 100 float clean_gain clean_gain = 0.03 float dynam dynam = 6.0 float soltime1 soltime1 = 120 float soltime2 soltime2 = 20 float thresh thresh = 0.5 float win_mult win_mult = 1.8 float time_av time_av = 16 float old_peak float new_peak float flux_cutoff print "===============================================================" ! =============================================================== ! print "=== Difmap script: pima_mupet_01.dvm version of 2016.05.19 === " ! === Difmap script: pima_mupet_01.dvm version of 2016.05.19 === ! mapsize field_size, field_cell ! Map grid = 1024x1024 pixels with 0.200x0.200 milli-arcsec cellsize. startmod ! Applying default point source starting model. ! Performing phase self-cal ! Adding 1 model components to the UV plane model. ! The established model now contains 1 components and 1 Jy ! ! Correcting IF 1. ! A total of 73 telescope corrections were flagged in sub-array 1. ! ! Correcting IF 2. ! A total of 73 telescope corrections were flagged in sub-array 1. ! ! Correcting IF 3. ! A total of 73 telescope corrections were flagged in sub-array 1. ! ! Correcting IF 4. ! A total of 73 telescope corrections were flagged in sub-array 1. ! ! Correcting IF 5. ! A total of 73 telescope corrections were flagged in sub-array 1. ! ! Correcting IF 6. ! A total of 73 telescope corrections were flagged in sub-array 1. ! ! Correcting IF 7. ! A total of 73 telescope corrections were flagged in sub-array 1. ! ! Correcting IF 8. ! A total of 73 telescope corrections were flagged in sub-array 1. ! ! Correcting IF 9. ! A total of 73 telescope corrections were flagged in sub-array 1. ! ! Correcting IF 10. ! A total of 73 telescope corrections were flagged in sub-array 1. ! ! Correcting IF 11. ! A total of 73 telescope corrections were flagged in sub-array 1. ! ! Correcting IF 12. ! A total of 73 telescope corrections were flagged in sub-array 1. ! ! Fit before self-cal, rms=1.291152Jy sigma=21.061461 ! Fit after self-cal, rms=0.218793Jy sigma=3.693058 ! clrmod: Cleared the established, tentative and continuum models. ! Redundant starting model cleared. uvw 2,-1 ! Uniform weighting binwidth: 2 (pixels). ! Gridding weights will be scaled by errors raised to the power -1. ! Radial weighting is not currently selected. flux_cutoff = imstat(rms) * dynam ! Inverting map and beam ! Estimated beam: bmin=0.6884 mas, bmaj=1.696 mas, bpa=-1.976 degrees ! Estimated noise=0.496529 mJy/beam. repeat if (peak(flux) > flux_cutoff) peakwin win_mult clean clean_niter,clean_gain flux_cutoff = imstat(rms) * dynam selfcal new_peak = peak(flux) until(new_peak<=flux_cutoff) ! Added new window around map position (0, 0). ! clean: niter=100 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = 0.622744 Jy ! Component: 100 - total flux cleaned = 0.761925 Jy ! Total flux subtracted in 100 components = 0.761925 Jy ! Clean residual min=-0.019675 max=0.048124 Jy/beam ! Clean residual mean=-0.000023 rms=0.004587 Jy/beam ! Combined flux in latest and established models = 0.761925 Jy ! Performing phase self-cal ! Adding 5 model components to the UV plane model. ! The established model now contains 5 components and 0.761925 Jy ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.140584Jy sigma=2.224703 ! Fit after self-cal, rms=0.140574Jy sigma=2.224512 ! Inverting map ! clean: niter=100 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = 0.0503133 Jy ! Component: 100 - total flux cleaned = 0.0724963 Jy ! Total flux subtracted in 100 components = 0.0724963 Jy ! Clean residual min=-0.016611 max=0.031158 Jy/beam ! Clean residual mean=-0.000008 rms=0.003795 Jy/beam ! Combined flux in latest and established models = 0.834422 Jy ! Performing phase self-cal ! Adding 5 model components to the UV plane model. ! The established model now contains 7 components and 0.834422 Jy ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.116482Jy sigma=1.876383 ! Fit after self-cal, rms=0.116365Jy sigma=1.874579 ! Inverting map ! Added new window around map position (1.2, 2.8). ! clean: niter=100 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = 0.0290289 Jy ! Component: 100 - total flux cleaned = 0.043883 Jy ! Total flux subtracted in 100 components = 0.043883 Jy ! Clean residual min=-0.015968 max=0.026999 Jy/beam ! Clean residual mean=-0.000007 rms=0.003474 Jy/beam ! Combined flux in latest and established models = 0.878305 Jy ! Performing phase self-cal ! Adding 7 model components to the UV plane model. ! The established model now contains 14 components and 0.878305 Jy ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.106968Jy sigma=1.729661 ! Fit after self-cal, rms=0.106136Jy sigma=1.716860 ! Inverting map ! Added new window around map position (-1.2, -2.8). ! clean: niter=100 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = 0.02258 Jy ! Component: 100 - total flux cleaned = 0.0355648 Jy ! Total flux subtracted in 100 components = 0.0355648 Jy ! Clean residual min=-0.016875 max=0.018149 Jy/beam ! Clean residual mean=-0.000005 rms=0.003226 Jy/beam ! Combined flux in latest and established models = 0.91387 Jy ! Performing phase self-cal ! Adding 8 model components to the UV plane model. ! The established model now contains 20 components and 0.91387 Jy ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.099669Jy sigma=1.617675 ! Fit after self-cal, rms=0.099417Jy sigma=1.613573 ! Inverting map print "============== Finished uniform weighting clean ===============" ! ============== Finished uniform weighting clean =============== ! uvw 0,-1 ! Uniform weighting is not currently selected. ! Gridding weights will be scaled by errors raised to the power -1. ! Radial weighting is not currently selected. win_mult = win_mult * 1.6 clean_niter = clean_niter * 2 dynam = dynam - 0.5 flux_cutoff = imstat(rms) * dynam ! Inverting map and beam ! Estimated beam: bmin=0.8603 mas, bmaj=1.957 mas, bpa=-2.144 degrees ! Estimated noise=0.326222 mJy/beam. repeat if (peak(flux) > flux_cutoff) peakwin win_mult clean clean_niter,clean_gain flux_cutoff = imstat(rms) * dynam selfcal new_peak = peak(flux) until(new_peak<=flux_cutoff) ! clean: niter=200 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = 0.0171897 Jy ! Component: 100 - total flux cleaned = 0.0298116 Jy ! Component: 150 - total flux cleaned = 0.0395568 Jy ! Component: 200 - total flux cleaned = 0.0470862 Jy ! Total flux subtracted in 200 components = 0.0470862 Jy ! Clean residual min=-0.018719 max=0.016196 Jy/beam ! Clean residual mean=-0.000004 rms=0.003600 Jy/beam ! Combined flux in latest and established models = 0.960956 Jy ! Performing phase self-cal ! Adding 13 model components to the UV plane model. ! The established model now contains 28 components and 0.960956 Jy ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.095060Jy sigma=1.549009 ! Fit after self-cal, rms=0.094997Jy sigma=1.548049 ! Inverting map print "============== Finished natural weighting clean ==============" ! ============== Finished natural weighting clean ============== ! restore ! restore: Substituting estimate of restoring beam from last 'invert'. ! Restoring with beam: 0.8603 x 1.957 at -2.144 degrees (North through East) ! Clean map min=-0.018102 max=0.79808 Jy/beam gscale true ! Performing overall amplitude self-cal ! ! Correcting IF 1. ! Telescope amplitude corrections in sub-array 1: ! BR 1.10 FD 1.06 HN 0.97 KP 1.01 ! LA 1.02 MK 1.05 NL 1.08 OV 0.96 ! PT 0.89 SC 0.97 ! ! ! Correcting IF 2. ! Telescope amplitude corrections in sub-array 1: ! BR 1.07 FD 1.05 HN 0.98 KP 1.01 ! LA 1.01 MK 1.04 NL 1.08 OV 0.96 ! PT 0.91 SC 0.98 ! ! ! Correcting IF 3. ! Telescope amplitude corrections in sub-array 1: ! BR 1.09 FD 1.05 HN 0.98 KP 1.02 ! LA 1.00 MK 1.04 NL 1.07 OV 0.96 ! PT 0.89 SC 0.98 ! ! ! Correcting IF 4. ! Telescope amplitude corrections in sub-array 1: ! BR 1.09 FD 1.04 HN 0.97 KP 1.01 ! LA 1.01 MK 1.01 NL 1.07 OV 0.96 ! PT 0.91 SC 0.98 ! ! ! Correcting IF 5. ! Telescope amplitude corrections in sub-array 1: ! BR 1.09 FD 1.05 HN 0.97 KP 1.02 ! LA 1.00 MK 1.02 NL 1.09 OV 0.96 ! PT 0.88 SC 0.97 ! ! ! Correcting IF 6. ! Telescope amplitude corrections in sub-array 1: ! BR 1.07 FD 1.04 HN 0.97 KP 1.02 ! LA 1.01 MK 1.02 NL 1.07 OV 0.96 ! PT 0.89 SC 0.96 ! ! ! Correcting IF 7. ! Telescope amplitude corrections in sub-array 1: ! BR 1.07 FD 1.03 HN 0.98 KP 1.01 ! LA 1.01 MK 1.03 NL 1.08 OV 0.96 ! PT 0.88 SC 0.97 ! ! ! Correcting IF 8. ! Telescope amplitude corrections in sub-array 1: ! BR 1.07 FD 1.04 HN 0.98 KP 1.02 ! LA 1.01 MK 1.03 NL 1.07 OV 0.95 ! PT 0.89 SC 0.98 ! ! ! Correcting IF 9. ! Telescope amplitude corrections in sub-array 1: ! BR 1.08 FD 1.04 HN 0.97 KP 1.02 ! LA 1.00 MK 1.02 NL 1.06 OV 0.95 ! PT 0.90 SC 0.96 ! ! ! Correcting IF 10. ! Telescope amplitude corrections in sub-array 1: ! BR 1.07 FD 1.04 HN 0.97 KP 1.00 ! LA 1.00 MK 1.03 NL 1.05 OV 0.96 ! PT 0.88 SC 0.95 ! ! ! Correcting IF 11. ! Telescope amplitude corrections in sub-array 1: ! BR 1.09 FD 1.04 HN 0.97 KP 1.01 ! LA 1.01 MK 1.02 NL 1.08 OV 0.95 ! PT 0.89 SC 0.97 ! ! ! Correcting IF 12. ! Telescope amplitude corrections in sub-array 1: ! BR 1.08 FD 1.03 HN 0.98 KP 1.02 ! LA 1.01 MK 1.03 NL 1.06 OV 0.97 ! PT 0.89 SC 0.98 ! ! ! Fit before self-cal, rms=0.094997Jy sigma=1.548049 ! Fit after self-cal, rms=0.071754Jy sigma=1.146580 dynam = dynam - 0.5 flux_cutoff = imstat(rms) * dynam ! Inverting map and beam ! Estimated beam: bmin=0.8601 mas, bmaj=1.968 mas, bpa=-1.687 degrees ! Estimated noise=0.327441 mJy/beam. repeat if (peak(flux) > flux_cutoff) peakwin win_mult clean clean_niter,clean_gain flux_cutoff = imstat(rms) * dynam selfcal new_peak = peak(flux) until(new_peak<=flux_cutoff) ! clean: niter=200 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = -0.016869 Jy ! Component: 100 - total flux cleaned = -0.025248 Jy ! Component: 150 - total flux cleaned = -0.0272552 Jy ! Component: 200 - total flux cleaned = -0.0283112 Jy ! Total flux subtracted in 200 components = -0.0283112 Jy ! Clean residual min=-0.007150 max=0.009183 Jy/beam ! Clean residual mean=-0.000006 rms=0.001652 Jy/beam ! Combined flux in latest and established models = 0.932645 Jy ! Performing phase self-cal ! Adding 23 model components to the UV plane model. ! The established model now contains 45 components and 0.932645 Jy ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.067673Jy sigma=1.075498 ! Fit after self-cal, rms=0.067648Jy sigma=1.074777 ! Inverting map ! Added new window around map position (1.6, -0.8). ! clean: niter=200 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = 0.00807277 Jy ! Component: 100 - total flux cleaned = 0.00786385 Jy ! Component: 150 - total flux cleaned = 0.0066119 Jy ! Component: 200 - total flux cleaned = 0.00548955 Jy ! Total flux subtracted in 200 components = 0.00548955 Jy ! Clean residual min=-0.006683 max=0.008721 Jy/beam ! Clean residual mean=-0.000002 rms=0.001496 Jy/beam ! Combined flux in latest and established models = 0.938134 Jy ! Performing phase self-cal ! Adding 26 model components to the UV plane model. ! The established model now contains 64 components and 0.938134 Jy ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.065864Jy sigma=1.046139 ! Fit after self-cal, rms=0.065742Jy sigma=1.043955 ! Inverting map selfcal true, true, soltime1 ! Performing amp+phase self-cal over 120 minute time intervals ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.065742Jy sigma=1.043955 ! Fit after self-cal, rms=0.061168Jy sigma=0.971335 dynam = dynam - 0.75 clean clean_niter,clean_gain ! Inverting map and beam ! Estimated beam: bmin=0.8591 mas, bmaj=1.967 mas, bpa=-1.686 degrees ! Estimated noise=0.326858 mJy/beam. ! clean: niter=200 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = -0.00884526 Jy ! Component: 100 - total flux cleaned = -0.0136573 Jy ! Component: 150 - total flux cleaned = -0.0144403 Jy ! Component: 200 - total flux cleaned = -0.0148359 Jy ! Total flux subtracted in 200 components = -0.0148359 Jy ! Clean residual min=-0.003957 max=0.004931 Jy/beam ! Clean residual mean=-0.000001 rms=0.000917 Jy/beam ! Combined flux in latest and established models = 0.923298 Jy selfcal ! Performing phase self-cal ! Adding 17 model components to the UV plane model. ! The established model now contains 73 components and 0.923298 Jy ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.059699Jy sigma=0.947143 ! Fit after self-cal, rms=0.059697Jy sigma=0.947039 flux_cutoff = imstat(rms) * dynam ! Inverting map repeat if (peak(flux) > flux_cutoff) peakwin win_mult clean clean_niter,clean_gain flux_cutoff = imstat(rms) * dynam selfcal new_peak = peak(flux) until(new_peak<=flux_cutoff) ! Added new window around map position (3.2, 1.8). ! clean: niter=200 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = 0.00183352 Jy ! Component: 100 - total flux cleaned = 0.00159416 Jy ! Component: 150 - total flux cleaned = 0.00126739 Jy ! Component: 200 - total flux cleaned = 0.000965265 Jy ! Total flux subtracted in 200 components = 0.000965265 Jy ! Clean residual min=-0.003840 max=0.003663 Jy/beam ! Clean residual mean=-0.000001 rms=0.000867 Jy/beam ! Combined flux in latest and established models = 0.924264 Jy ! Performing phase self-cal ! Adding 24 model components to the UV plane model. ! The established model now contains 84 components and 0.924264 Jy ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.059196Jy sigma=0.939499 ! Fit after self-cal, rms=0.059181Jy sigma=0.939224 ! Inverting map selfcal true, true, soltime2 ! Performing amp+phase self-cal over 20 minute time intervals ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.059181Jy sigma=0.939224 ! Fit after self-cal, rms=0.058652Jy sigma=0.931967 clean clean_niter,clean_gain ! Inverting map and beam ! Estimated beam: bmin=0.8582 mas, bmaj=1.967 mas, bpa=-1.659 degrees ! Estimated noise=0.326516 mJy/beam. ! clean: niter=200 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = -0.00526743 Jy ! Component: 100 - total flux cleaned = -0.00768438 Jy ! Component: 150 - total flux cleaned = -0.00832728 Jy ! Component: 200 - total flux cleaned = -0.00859319 Jy ! Total flux subtracted in 200 components = -0.00859319 Jy ! Clean residual min=-0.003568 max=0.002922 Jy/beam ! Clean residual mean=-0.000001 rms=0.000713 Jy/beam ! Combined flux in latest and established models = 0.91567 Jy selfcal ! Performing phase self-cal ! Adding 22 model components to the UV plane model. ! The established model now contains 89 components and 0.91567 Jy ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.058075Jy sigma=0.922349 ! Fit after self-cal, rms=0.058073Jy sigma=0.922301 flux_cutoff = imstat(rms) * dynam ! Inverting map repeat if (peak(flux) > flux_cutoff) peakwin win_mult clean clean_niter,clean_gain flux_cutoff = imstat(rms) * dynam selfcal new_peak = peak(flux) until(new_peak<=flux_cutoff) ! clean: niter=200 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = 3.29943e-05 Jy ! Component: 100 - total flux cleaned = -0.000346471 Jy ! Component: 150 - total flux cleaned = -0.000484346 Jy ! Component: 200 - total flux cleaned = -0.000684614 Jy ! Total flux subtracted in 200 components = -0.000684614 Jy ! Clean residual min=-0.003413 max=0.002797 Jy/beam ! Clean residual mean=-0.000001 rms=0.000693 Jy/beam ! Combined flux in latest and established models = 0.914986 Jy ! Performing phase self-cal ! Adding 25 model components to the UV plane model. ! The established model now contains 96 components and 0.914986 Jy ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.057912Jy sigma=0.919701 ! Fit after self-cal, rms=0.057908Jy sigma=0.919650 ! Inverting map uvtaper 0.3,taper_size ! Gaussian taper: value 0.3 at UV radius = 70 mega-wavelengths. win_mult = win_mult * 1.2 selfcal true, true, soltime2 ! Performing amp+phase self-cal over 20 minute time intervals ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.057908Jy sigma=0.919650 ! Fit after self-cal, rms=0.057651Jy sigma=0.916557 clean clean_niter,clean_gain ! Inverting map and beam ! Estimated beam: bmin=2.071 mas, bmaj=3.081 mas, bpa=-3.447 degrees ! Estimated noise=0.431271 mJy/beam. ! clean: niter=200 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = -0.00366306 Jy ! Component: 100 - total flux cleaned = -0.0047675 Jy ! Component: 150 - total flux cleaned = -0.00508596 Jy ! Component: 200 - total flux cleaned = -0.00530085 Jy ! Total flux subtracted in 200 components = -0.00530085 Jy ! Clean residual min=-0.003226 max=0.003520 Jy/beam ! Clean residual mean=-0.000001 rms=0.000869 Jy/beam ! Combined flux in latest and established models = 0.909685 Jy selfcal ! Performing phase self-cal ! Adding 43 model components to the UV plane model. ! The established model now contains 133 components and 0.909685 Jy ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.057541Jy sigma=0.914397 ! Fit after self-cal, rms=0.057537Jy sigma=0.914338 flux_cutoff = imstat(rms) * dynam ! Inverting map repeat if (peak(flux) > flux_cutoff) peakwin win_mult clean clean_niter,clean_gain flux_cutoff = imstat(rms) * dynam selfcal new_peak = peak(flux) until(new_peak<=flux_cutoff) ! clean: niter=200 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = -0.000151213 Jy ! Component: 100 - total flux cleaned = -0.000271014 Jy ! Component: 150 - total flux cleaned = -0.000377049 Jy ! Component: 200 - total flux cleaned = -0.000471688 Jy ! Total flux subtracted in 200 components = -0.000471688 Jy ! Clean residual min=-0.003223 max=0.003436 Jy/beam ! Clean residual mean=-0.000001 rms=0.000857 Jy/beam ! Combined flux in latest and established models = 0.909213 Jy ! Performing phase self-cal ! Adding 27 model components to the UV plane model. ! The established model now contains 151 components and 0.909213 Jy ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.057502Jy sigma=0.913747 ! Fit after self-cal, rms=0.057500Jy sigma=0.913732 ! Inverting map uvtaper 0,0 ! No UV-taper is currently set. win_mult = win_mult / 1.2 print "============== Finished amplitude self-cal ==============" ! ============== Finished amplitude self-cal ============== restore ! Inverting map and beam ! Estimated beam: bmin=0.8576 mas, bmaj=1.968 mas, bpa=-1.653 degrees ! Estimated noise=0.326344 mJy/beam. ! restore: Substituting estimate of restoring beam from last 'invert'. ! Restoring with beam: 0.8576 x 1.968 at -1.653 degrees (North through East) ! Clean map min=-0.0031151 max=0.80098 Jy/beam if(peak(flux) > thresh) selfcal true, true clean clean_niter,clean_gain selfcal flux_cutoff = imstat(rms) * dynam repeat if (peak(flux) > flux_cutoff) peakwin win_mult clean clean_niter,clean_gain flux_cutoff = imstat(rms) * dynam selfcal new_peak = peak(flux) until(new_peak<=flux_cutoff) selfcal true, true end if ! Performing amp+phase self-cal ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.057500Jy sigma=0.913732 ! Fit after self-cal, rms=0.054254Jy sigma=0.849502 ! Inverting map and beam ! Estimated beam: bmin=0.8575 mas, bmaj=1.969 mas, bpa=-1.63 degrees ! Estimated noise=0.326412 mJy/beam. ! clean: niter=200 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = -0.00231827 Jy ! Component: 100 - total flux cleaned = -0.00342199 Jy ! Component: 150 - total flux cleaned = -0.00411641 Jy ! Component: 200 - total flux cleaned = -0.00443289 Jy ! Total flux subtracted in 200 components = -0.00443289 Jy ! Clean residual min=-0.003091 max=0.002541 Jy/beam ! Clean residual mean=-0.000001 rms=0.000556 Jy/beam ! Combined flux in latest and established models = 0.90478 Jy ! Performing phase self-cal ! Adding 20 model components to the UV plane model. ! The established model now contains 160 components and 0.90478 Jy ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.054035Jy sigma=0.845772 ! Fit after self-cal, rms=0.054028Jy sigma=0.845702 ! Inverting map ! clean: niter=200 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = -0.000148402 Jy ! Component: 100 - total flux cleaned = -0.000372809 Jy ! Component: 150 - total flux cleaned = -0.000424719 Jy ! Component: 200 - total flux cleaned = -0.00052357 Jy ! Total flux subtracted in 200 components = -0.00052357 Jy ! Clean residual min=-0.002926 max=0.002415 Jy/beam ! Clean residual mean=-0.000001 rms=0.000544 Jy/beam ! Combined flux in latest and established models = 0.904257 Jy ! Performing phase self-cal ! Adding 26 model components to the UV plane model. ! The established model now contains 167 components and 0.904257 Jy ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.053933Jy sigma=0.844153 ! Fit after self-cal, rms=0.053929Jy sigma=0.844107 ! Inverting map ! Performing amp+phase self-cal ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.053929Jy sigma=0.844107 ! Fit after self-cal, rms=0.053845Jy sigma=0.843111 print "============== Clearing model and starting over ==========" ! ============== Clearing model and starting over ========== clrmod true ! clrmod: Cleared the established and tentative models. uvw 2,-1 ! Uniform weighting binwidth: 2 (pixels). ! Gridding weights will be scaled by errors raised to the power -1. ! Radial weighting is not currently selected. clean clean_niter,clean_gain ! Inverting map and beam ! Estimated beam: bmin=0.6844 mas, bmaj=1.704 mas, bpa=-1.426 degrees ! Estimated noise=0.497852 mJy/beam. ! clean: niter=200 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = 0.624339 Jy ! Component: 100 - total flux cleaned = 0.762603 Jy ! Component: 150 - total flux cleaned = 0.810452 Jy ! Component: 200 - total flux cleaned = 0.831186 Jy ! Total flux subtracted in 200 components = 0.831186 Jy ! Clean residual min=-0.004700 max=0.008885 Jy/beam ! Clean residual mean=-0.000010 rms=0.001021 Jy/beam ! Combined flux in latest and established models = 0.831186 Jy uvw 0,-1 ! Uniform weighting is not currently selected. ! Gridding weights will be scaled by errors raised to the power -1. ! Radial weighting is not currently selected. flux_cutoff = imstat(rms) * dynam ! Adding 6 model components to the UV plane model. ! The established model now contains 6 components and 0.831186 Jy ! Inverting map and beam ! Estimated beam: bmin=0.8571 mas, bmaj=1.969 mas, bpa=-1.63 degrees ! Estimated noise=0.32635 mJy/beam. repeat if (peak(flux) > flux_cutoff) peakwin win_mult clean clean_niter,clean_gain flux_cutoff = imstat(rms) * dynam keep new_peak = peak(flux) until(new_peak<=flux_cutoff) ! clean: niter=200 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = 0.0177446 Jy ! Component: 100 - total flux cleaned = 0.0287462 Jy ! Component: 150 - total flux cleaned = 0.0369294 Jy ! Component: 200 - total flux cleaned = 0.0433274 Jy ! Total flux subtracted in 200 components = 0.0433274 Jy ! Clean residual min=-0.002866 max=0.003979 Jy/beam ! Clean residual mean=-0.000010 rms=0.000796 Jy/beam ! Combined flux in latest and established models = 0.874514 Jy ! Adding 55 model components to the UV plane model. ! The established model now contains 56 components and 0.874514 Jy ! Inverting map ! Added new window around map position (-0.8, 2.2). ! clean: niter=200 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = 0.0051929 Jy ! Component: 100 - total flux cleaned = 0.00944399 Jy ! Component: 150 - total flux cleaned = 0.0129672 Jy ! Component: 200 - total flux cleaned = 0.0159282 Jy ! Total flux subtracted in 200 components = 0.0159282 Jy ! Clean residual min=-0.002285 max=0.002190 Jy/beam ! Clean residual mean=-0.000005 rms=0.000581 Jy/beam ! Combined flux in latest and established models = 0.890442 Jy ! Adding 50 model components to the UV plane model. ! The established model now contains 89 components and 0.890442 Jy ! Inverting map uvtaper 0.3,taper_size ! Gaussian taper: value 0.3 at UV radius = 70 mega-wavelengths. clean clean_niter,clean_gain ! Inverting map and beam ! Estimated beam: bmin=2.072 mas, bmaj=3.084 mas, bpa=-3.442 degrees ! Estimated noise=0.431246 mJy/beam. ! clean: niter=200 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = 0.00436179 Jy ! Component: 100 - total flux cleaned = 0.00557406 Jy ! Component: 150 - total flux cleaned = 0.00653175 Jy ! Component: 200 - total flux cleaned = 0.00723729 Jy ! Total flux subtracted in 200 components = 0.00723729 Jy ! Clean residual min=-0.002899 max=0.002937 Jy/beam ! Clean residual mean=-0.000004 rms=0.000745 Jy/beam ! Combined flux in latest and established models = 0.897679 Jy flux_cutoff = imstat(rms) * dynam repeat if (peak(flux) > flux_cutoff) peakwin win_mult clean clean_niter,clean_gain flux_cutoff = imstat(rms) * dynam keep new_peak = peak(flux) until(new_peak<=flux_cutoff) ! clean: niter=200 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = 0.000524196 Jy ! Component: 100 - total flux cleaned = 0.000971327 Jy ! Component: 150 - total flux cleaned = 0.00140309 Jy ! Component: 200 - total flux cleaned = 0.00169642 Jy ! Total flux subtracted in 200 components = 0.00169642 Jy ! Clean residual min=-0.002837 max=0.002889 Jy/beam ! Clean residual mean=-0.000003 rms=0.000707 Jy/beam ! Combined flux in latest and established models = 0.899375 Jy ! Adding 108 model components to the UV plane model. ! The established model now contains 190 components and 0.899375 Jy ! Inverting map uvtaper 0,0 ! No UV-taper is currently set. clean ! Inverting map and beam ! Estimated beam: bmin=0.8571 mas, bmaj=1.969 mas, bpa=-1.63 degrees ! Estimated noise=0.32635 mJy/beam. ! clean: niter=200 gain=0.03 cutoff=0 ! Component: 050 - total flux cleaned = 9.64103e-05 Jy ! Component: 100 - total flux cleaned = 9.52668e-05 Jy ! Component: 150 - total flux cleaned = 4.58021e-05 Jy ! Component: 200 - total flux cleaned = 4.2223e-05 Jy ! Total flux subtracted in 200 components = 4.2223e-05 Jy ! Clean residual min=-0.002051 max=0.001938 Jy/beam ! Clean residual mean=-0.000001 rms=0.000473 Jy/beam ! Combined flux in latest and established models = 0.899417 Jy selfcal ! Performing phase self-cal ! Adding 24 model components to the UV plane model. ! The established model now contains 213 components and 0.899417 Jy ! ! Correcting IF 1. ! ! Correcting IF 2. ! ! Correcting IF 3. ! ! Correcting IF 4. ! ! Correcting IF 5. ! ! Correcting IF 6. ! ! Correcting IF 7. ! ! Correcting IF 8. ! ! Correcting IF 9. ! ! Correcting IF 10. ! ! Correcting IF 11. ! ! Correcting IF 12. ! ! Fit before self-cal, rms=0.053484Jy sigma=0.837154 ! Fit after self-cal, rms=0.053459Jy sigma=0.836776 wmodel J0407+0742_X_map.mod ! Writing 213 model components to file: J0407+0742_X_map.mod wobs J0407+0742_X_uvs.fits ! Writing UV FITS file: J0407+0742_X_uvs.fits wwins J0407+0742_X_map.win ! wwins: Wrote 6 windows to J0407+0742_X_map.win x = (field_size-8) * field_cell / 4 addwin -x,x,-x,x clean (field_size*4),0.01 ! Inverting map ! clean: niter=4096 gain=0.01 cutoff=0 ! Component: 050 - total flux cleaned = -0.000339281 Jy ! Component: 100 - total flux cleaned = -0.000648426 Jy ! Component: 150 - total flux cleaned = -0.000976203 Jy ! Component: 200 - total flux cleaned = -0.00122892 Jy ! Component: 250 - total flux cleaned = -0.00141231 Jy ! Component: 300 - total flux cleaned = -0.00153184 Jy ! Component: 350 - total flux cleaned = -0.00161925 Jy ! Component: 400 - total flux cleaned = -0.00167583 Jy ! Component: 450 - total flux cleaned = -0.00164788 Jy ! Component: 500 - total flux cleaned = -0.00167471 Jy ! Component: 550 - total flux cleaned = -0.00170107 Jy ! Component: 600 - total flux cleaned = -0.00164868 Jy ! Component: 650 - total flux cleaned = -0.0016742 Jy ! Component: 700 - total flux cleaned = -0.00164812 Jy ! Component: 750 - total flux cleaned = -0.00159803 Jy ! Component: 800 - total flux cleaned = -0.00154906 Jy ! Component: 850 - total flux cleaned = -0.00154906 Jy ! Component: 900 - total flux cleaned = -0.0015728 Jy ! Component: 950 - total flux cleaned = -0.00152543 Jy ! Component: 1000 - total flux cleaned = -0.00150237 Jy ! Component: 1050 - total flux cleaned = -0.0015025 Jy ! Component: 1100 - total flux cleaned = -0.00141172 Jy ! Component: 1150 - total flux cleaned = -0.00141219 Jy ! Component: 1200 - total flux cleaned = -0.00139049 Jy ! Component: 1250 - total flux cleaned = -0.00136894 Jy ! Component: 1300 - total flux cleaned = -0.00145562 Jy ! Component: 1350 - total flux cleaned = -0.00145555 Jy ! Component: 1400 - total flux cleaned = -0.00143445 Jy ! Component: 1450 - total flux cleaned = -0.00147629 Jy ! Component: 1500 - total flux cleaned = -0.00143484 Jy ! Component: 1550 - total flux cleaned = -0.00149653 Jy ! Component: 1600 - total flux cleaned = -0.00155721 Jy ! Component: 1650 - total flux cleaned = -0.00153685 Jy ! Component: 1700 - total flux cleaned = -0.00155691 Jy ! Component: 1750 - total flux cleaned = -0.0015766 Jy ! Component: 1800 - total flux cleaned = -0.00155707 Jy ! Component: 1850 - total flux cleaned = -0.00161475 Jy ! Component: 1900 - total flux cleaned = -0.00155735 Jy ! Component: 1950 - total flux cleaned = -0.00150055 Jy ! Component: 2000 - total flux cleaned = -0.00153831 Jy ! Component: 2050 - total flux cleaned = -0.00159411 Jy ! Component: 2100 - total flux cleaned = -0.0015386 Jy ! Component: 2150 - total flux cleaned = -0.00164843 Jy ! Component: 2200 - total flux cleaned = -0.00163012 Jy ! Component: 2250 - total flux cleaned = -0.00163015 Jy ! Component: 2300 - total flux cleaned = -0.00164788 Jy ! Component: 2350 - total flux cleaned = -0.00159478 Jy ! Component: 2400 - total flux cleaned = -0.00166483 Jy ! Component: 2450 - total flux cleaned = -0.00163002 Jy ! Component: 2500 - total flux cleaned = -0.00164743 Jy ! Component: 2550 - total flux cleaned = -0.00169874 Jy ! Component: 2600 - total flux cleaned = -0.00171577 Jy ! Component: 2650 - total flux cleaned = -0.00169874 Jy ! Component: 2700 - total flux cleaned = -0.00176559 Jy ! Component: 2750 - total flux cleaned = -0.00171588 Jy ! Component: 2800 - total flux cleaned = -0.00174866 Jy ! Component: 2850 - total flux cleaned = -0.00179772 Jy ! Component: 2900 - total flux cleaned = -0.00178123 Jy ! Component: 2950 - total flux cleaned = -0.0017327 Jy ! Component: 3000 - total flux cleaned = -0.00170109 Jy ! Component: 3050 - total flux cleaned = -0.00176443 Jy ! Component: 3100 - total flux cleaned = -0.00176431 Jy ! Component: 3150 - total flux cleaned = -0.00171758 Jy ! Component: 3200 - total flux cleaned = -0.00177968 Jy ! Component: 3250 - total flux cleaned = -0.00176425 Jy ! Component: 3300 - total flux cleaned = -0.00182533 Jy ! Component: 3350 - total flux cleaned = -0.00187091 Jy ! Component: 3400 - total flux cleaned = -0.00187101 Jy ! Component: 3450 - total flux cleaned = -0.00190111 Jy ! Component: 3500 - total flux cleaned = -0.00194575 Jy ! Component: 3550 - total flux cleaned = -0.00200462 Jy ! Component: 3600 - total flux cleaned = -0.00196066 Jy ! Component: 3650 - total flux cleaned = -0.00201892 Jy ! Component: 3700 - total flux cleaned = -0.00207668 Jy ! Component: 3750 - total flux cleaned = -0.00203383 Jy ! Component: 3800 - total flux cleaned = -0.00207661 Jy ! Component: 3850 - total flux cleaned = -0.00209082 Jy ! Component: 3900 - total flux cleaned = -0.00211912 Jy ! Component: 3950 - total flux cleaned = -0.00220297 Jy ! Component: 4000 - total flux cleaned = -0.00221701 Jy ! Component: 4050 - total flux cleaned = -0.00227215 Jy ! Total flux subtracted in 4096 components = -0.00229962 Jy ! Clean residual min=-0.000932 max=0.000697 Jy/beam ! Clean residual mean=-0.000001 rms=0.000246 Jy/beam ! Combined flux in latest and established models = 0.897118 Jy keep ! Adding 327 model components to the UV plane model. ! The established model now contains 540 components and 0.897117 Jy ![Exited script file: /opt64/bin/pima_mupet_01.dfm] wmap /vlbi/uf001/uva//J0407+0742_X_map.fits ! Inverting map ! restore: Substituting estimate of restoring beam from last 'invert'. ! Restoring with beam: 0.8571 x 1.969 at -1.63 degrees (North through East) ! Clean map min=-0.0018628 max=0.80559 Jy/beam ! Writing clean map to FITS file: /vlbi/uf001/uva//J0407+0742_X_map.fits wmodel /vlbi/uf001/uva//J0407+0742_X_map.mod ! Writing 540 model components to file: /vlbi/uf001/uva//J0407+0742_X_map.mod wobs /vlbi/uf001/uva//J0407+0742_X_uvs.fits ! Writing UV FITS file: /vlbi/uf001/uva//J0407+0742_X_uvs.fits wwins /vlbi/uf001/uva//J0407+0742_X_map.win ! wwins: Wrote 7 windows to /vlbi/uf001/uva//J0407+0742_X_map.win float peak_flux peak_flux = peak(flux,max) print "The peak flux is", peak_flux ! The peak flux is 0.805595 invert ! Inverting map float image_rms image_rms = imstat(rms) print "The final image rms is",image_rms ! The final image rms is 0.000244329 loglevs 100*3*image_rms/peak_flux ! The new contour levels are: ! -0.0909871 0.0909871 0.181974 0.363949 0.727897 1.45579 2.91159 5.82318 11.6464 23.2927 46.5854 93.1708 print "clev= ", int(3*image_rms*10000)/10000 ! clev= 0.0007 print "peak= ", int(1000*peak_flux)/1000 ! peak= 0.805 print "dyn_range= ", int(1000*peak_flux/image_rms)/1000 ! dyn_range= 3297.17 quit ! Quitting program ! Log file /vlbi/uf001/uva//J0407+0742_X_dfm.log closed on Sun Jan 13 22:02:25 2019