Monday, June 22, 2009

Mulit-Resolution Clean Tutorial?

Here is a very reasonable request from an anonymous reader:

Can someone write about multi-resolution clean(MRC)..basically the steps involved and the way self cal should be carried out while using MRC ? thanks in advance.

which I can not fulfill, as I have never successfully pulled off a MRC. You might try looking at the EXPLAIN file for IMAGR in the section called "Extended Source Options".

If anyone knows better resources for learning about how to implement multi-resolution clean, please let us know!


Read more!

FreqID tolerance

And another question from reader Korinne:

With data all observed looking for a particular spectral line over a few objects, should you use different frequency ids for the objects or can you use the same frequency id? I've been using a suggested value of a 2 MHz frequency tolerance in the manual which means they all end up with the same frequency id, but I do not know if it's right.

Thoughts?


Read more!

Combining Data with Different Pointings

Here is a question from reader Korinne:

I have data from three VLA pointings in L band at the same frequency (with the same channel width) but with different pointing centres which cover an area of an object and partially overlap, unintentionally as the pointings don't overlap at the other frequency we observed that the observations were mostly set up for.

What is the best way to combine this data? I initially imaged and cleaned and then combined with flatn, but it seems like there might be some way to do it at the uv level, but from my readings of the cookbook I can't figure out how I would go about that, particularly in slightly more detail.

My answer below the fold...

I think you want DBCON, which can concatenate data in UV space. Try reading this post. The answer is basically that it depends on just how different your different data pointing are.

If you are actually talking about mosaicing a source, where your various pointings are offset by significant fractions of the primary beam, then FLATN might be your best bet. A bit more discussion of mosaicing here.

Read more!

Sunday, June 14, 2009

Combining Spectral Line UV Data (with slightly different channel setups)

This is a very good question from reader SillyWolf. I know several of us have been wondering how to concatenate spectral line data sets that have approx. the same wavelength coverage, but different channel setups (different widths, different centers). So any advice would be greatly appreciated by many people!

There are two VLA archive data which were observed in spectral line mode.
These two archive data cover very similar frequency range.
The point is that:
not only they have different pointing center (about 1 arcmin away from each other), but also their reference frequencies do not match each other, so their frequencies don't match channel by channel !!
I want to combine these two data together. can I use DBCON to combine them in UV domain, or I have to resample one of these datacubes in image domain and combine them together?



Read more!

Friday, June 12, 2009

Averaging Image Channels

Here is a good question from Sanch:

I am trying to average spectral channels in an image cube. Can anyone suggest what's the best way
to do it in AIPS?
I don't want to go back to the UV data and re-reduce it to get the image, as the data I am
working on is huge (VLBI data).

And some more details:
She wants to average together channels in a channel map. In other words, she has a channel map with, say, 100 channels and she wants to turn it into a map with 50 channels. Channels 1 and 2 would be averaged together and become the new "Channel 1," channels 3 and 4 would be averaged together and become the new "Channel 2," and so on.

Thoughts, AIPS gurus?


Read more!

Saturday, May 23, 2009

Channels and CALIB

When one is self-calibrating a multi-channel data set, and one gives CALIB a BCHAN and ECHAN value, what is CALIB doing with the channels? Is it averaging them all before it calibrates?

If it is doing that, then why bother making a Channel 0 data set to calibrate off of? Simply because CALIB runs much faster if it doesn't have to deal with multiple channels? Is there something wrong with using a multi-channel data set to do the initial calibration (on the phase cal + flux cal sources?)


Read more!

Wednesday, May 13, 2009

A Coarse Course on 3-D imaging

An anonymous reader requests:
can someone help me out by writing the detail process of 3d imaging/cleaning after split file is created? I am new to AIPS and any kind of help is welcomed. thanks in advance..

I would recommend that you look at Joe Lazio's write-up, starting right about here:


He discusses using SETFC and IMAGR to image with multiple facets.
Some supplementary personal opinions of mine below the break...


So, what I would do is run SETFC as he instructs-- SETFC parameters look like:

AIPS 2: SETFC: Task to make a BOXFILE for input to IMAGR
AIPS 2: Adverbs Values Comments
AIPS 2: ----------------------------------------------------------------
AIPS 2: INNAME 'NGC3631' UV dataset name (name)
AIPS 2: INCLASS 'AVSPC' UV dataset name (class)
AIPS 2: INSEQ 1 UV dataset name (seq. #)
AIPS 2: INDISK 5 Disk drive #
AIPS 2: SOURCES *all ' ' Source selected
AIPS 2: BCOUNT 1 First field number to use
AIPS 2: BOXFILE 'N3631_610.BOX'
AIPS 2: disk file to write to (the
AIPS 2: input BOXFILE for IMAGR)
AIPS 2: CELLSIZE 0.8 0.8 (X,Y) size of grid in asec
AIPS 2: IMSIZE 2048 2048 field size
AIPS 2: SHIFT 0 0 Position shift (RA,Dec) asec
AIPS 2: for all fields
AIPS 2: FLUX 0 Minimum component flux =
AIPS 2: (source * beam)
AIPS 2: BPARM 0.35 10 (1) Inner region radius (deg)
AIPS 2: 0 1.5 (2) Field overlap (pixels)
AIPS 2: 0.1 512 (3) Factor to scale NVSS
AIPS 2: 512 *rest 0 fluxes, 0 -> 1
AIPS 2: (4) Radius NVSS search (deg)
AIPS 2: (5) Flux limit in NVSS (Jy)
AIPS 2: (6) IMSIZE for NVSS fields
AIPS 2: (7) IMSIZE for Sun fields
AIPS 2: (8) Write Clean boxes for
AIPS 2: NVSS fields
AIPS 2: (9) Maximum allowed phase
AIPS 2: error in imaging
AIPS 2: (10) Points per beaam
AIPS 2: PBPARM *all 0 Beam parameters:
AIPS 2: (1) Cutoff; (2) Use (3)-(7)
AIPS 2: (3)-(7) Beam shape parms
AIPS 2: INFILE ' '
AIPS 2: NVSS input file name
AIPS 2: ' ' => AIPS provided.

But I'd also make sure your CELLSIZE is small enough to thoroughly sample point sources. What i would do is run SETFC once with CELLSIZE= 0 and IMSIZE = 0, and then decrease the CELLSIZE by a factor of 2 or 3, add that to the SETFC parameters, and rerun SETFC. You can let it suggest an IMSIZE to you, given the new CELLSIZE. The max IMSIZE i like to use is 2048, because much bigger than that and IMAGR will average large number of pixels together to show you the field.

Oftentimes I will tile the central portion of the image (out to ~1 primary beam, or to where bandwidth smearing really bites you, depending on the data; set by BPARM(1)) with bigger fields (IMSIZE=2048) and then let SETFC search for NVSS sources out to a radius ~2 times that of the primary beam (Radius set by BPARM(4)). I put smaller fields on these NVSS sources-- say 512 pixels (Set by BPARM(6)).

So, then you will have a list of boxes saved in a file (labelled by BOXFILE). It's now time to image. My IMAGR parameters look like this:

AIPS 2: IMAGR: Wide field imaging/Clean task
AIPS 2: Adverbs Values Comments
AIPS 2: ----------------------------------------------------------------
AIPS 2: INNAME 'NGC3631' Input UV data (name)
AIPS 2: INCLASS 'UVCOP' Input UV data (class)
AIPS 2: INSEQ 2 Input UV data (seq. #)
AIPS 2: INDISK 5 Input UV data disk drive #
AIPS 2: SOURCES *all ' ' Source name
AIPS 2: QUAL -1 Calibrator qualifier -1=>all
AIPS 2: CALCODE ' ' Calibrator code ' '=>all
AIPS 2: TIMERANG *all 0 Time range to use
AIPS 2: SELBAND -1 Bandwidth to select (kHz)
AIPS 2: SELFREQ -1 Frequency to select (MHz)
AIPS 2: FREQID -1 Freq. ID to select.
AIPS 2: SUBARRAY 0 Sub-array, 0=>all
AIPS 2: ANTENNAS *all 0 Antennas to plot
AIPS 2: BASELINE *all 0 Baselines with ANTENNAS
AIPS 2: DOCALIB -1 > 0 calibrate data & weights
AIPS 2: > 99 do NOT calibrate weights
AIPS 2: GAINUSE 0 CL (or SN) table to apply
AIPS 2: DOPOL -1 If >0.5 correct polarization.
AIPS 2: BLVER -1 BL table to apply.
AIPS 2: FLAGVER 0 Flag table version
AIPS 2: DOBAND -1 If >0.5 apply bandpass cal.
AIPS 2: Method used depends on value
AIPS 2: of DOBAND (see HELP file).
AIPS 2: BPVER -1 Bandpass table version
AIPS 2: SMOOTH *all 0 Smoothing function. See
AIPS 2: HELP SMOOTH for details.
AIPS 2: STOKES ' ' Stokes parameters (see HELP)
AIPS 2: BCHAN 1 Low freq. channel 0 for cont.
AIPS 2: ECHAN 56 Highest freq channel
AIPS 2: CHANNEL 0 Restart channel number
AIPS 2: NCHAV 56 Number of chan. to average.
AIPS 2: CHINC 1 Channel incr. between maps.
AIPS 2: BIF 0 First IF in average.
AIPS 2: EIF 0 Last IF in average.
AIPS 2: OUTNAME 'N3631_6' Output image name (name)
AIPS 2: OUTDISK 5 Output image disk drive #
AIPS 2: OUTSEQ 0 Output seq. no.
AIPS 2: OUTVER 0 CC ver. no (Continuum only)
AIPS 2: *** SET OUTVER ON RESTARTS
AIPS 2: IN2NAME ' ' UV work file name
AIPS 2: IN2CLASS ' ' UV work file class
AIPS 2: IN2SEQ 0 UV work file seq
AIPS 2: *** SET TO KEEP WORK FILE
AIPS 2: IN2DISK 0 UV work file disk
AIPS 2: CELLSIZE 0.8 0.8 (X,Y) size of grid in asec
AIPS 2: IMSIZE 512 512 Minimum image size
AIPS 2: NFIELD 21 Number of fields (max 4096)
AIPS 2: DO3DIMAG 1 > 0 => use different tangent
AIPS 2: points for each field
AIPS 2: FLDSIZE *all 0 Clean size of each field.
AIPS 2: RASHIFT *all 0 RA shift per field (asec)
AIPS 2: DECSHIFT *all 0 DEC shift per field (asec)
AIPS 2: UVTAPER 0 0 (U,V) Gaussian taper
AIPS 2: units are kilo-lambda
AIPS 2: UVRANGE 0 0 Min & max baseline (klambda)
AIPS 2: GUARD 0 0 x,y guard band fractional
AIPS 2: radius
AIPS 2: ROTATE 0 Rotate image CCW from N by
AIPS 2: ROTATE degrees
AIPS 2: ZEROSP *all 0 0-spacing fluxes and weights
AIPS 2: SEE HELP!!
AIPS 2: UVWTFN ' ' UV dist. weight function
AIPS 2: UVSIZE 0 0 Array size for doing uniform
AIPS 2: weights. 0 -> actual field
AIPS 2: size.
AIPS 2: ROBUST 0 Robustness power: -5 -> pure
AIPS 2: uniform weights, 5 => natural
AIPS 2: UVBOX 0 Additional rows and columns
AIPS 2: used in weighting.
AIPS 2: UVBXFN 1 Box function type when UVBOX
AIPS 2: > 0. 0 -> 1 round pill box.
AIPS 2: XTYPE 5 Conv. function type in x
AIPS 2: default spheroidal
AIPS 2: YTYPE 5 Conv. function type in y
AIPS 2: default spheroidal
AIPS 2: XPARM *all 0 Conv. function parms for x
AIPS 2: YPARM *all 0 Conv. function parms for y
AIPS 2: NITER 130000 Maximum # of Clean components
AIPS 2: BCOMP *all 0 Begin at BCOMP component
AIPS 2: Specify for each field.
AIPS 2: ALLOKAY 0 For restart: > 0 => beams
AIPS 2: okay, > 1 => work file too
AIPS 2: NBOXES 0 Number of boxes for Clean
AIPS 2: NB: field 1 only.
AIPS 2: CLBOX *all 0 Four coordinates for each box
AIPS 2: BOXFILE 'N3631_610.BOX' Input file of field params
AIPS 2: and Clean boxes; ' ' => use
AIPS 2: FLDSIZE, RASHIFT, DECSHIFT,
AIPS 2: NBOXES, CLBOX only.
AIPS 2: OBOXFILE 'N3631_610.BOX' Output file for final Clean
AIPS 2: boxes
AIPS 2: GAIN 0.1 Clean loop gain
AIPS 2: FLUX 0 Minimum Clean component (Jy)
AIPS 2: MINPATCH 121 Min. BEAM half-width in AP.
AIPS 2: BMAJ 0 FWHM(asec) major axis Clean
AIPS 2: restoring beam.
AIPS 2: BMIN 0 FWHM(asec) minor axis Clean
AIPS 2: restoring beam.
AIPS 2: BPA 0 Clean beam position angle
AIPS 2: OVERLAP 2 1 => restore components to
AIPS 2: overlapped fields, >=2=>
AIPS 2: expect overlaps in Cleaning
AIPS 2: PHAT 0 Prussian hat height.
AIPS 2: FACTOR 0 Speedup factor see HELP
AIPS 2: CMETHOD ' ' Modeling method:
AIPS 2: 'DFT','GRID',' '
AIPS 2: IMAGRPRM *all 0 Task enrichment parameters
AIPS 2: (1) Antenna diameter (m)
AIPS 2: (2) Source Spectral index
AIPS 2: (3) Frequency scaling factor
AIPS 2: (4) > 0 -> SDI Clean factor
AIPS 2: (5) >0 => scale residuals
AIPS 2: (6) Half-width in x of box
AIPS 2: (7) Half-width in y of box
AIPS 2: (8) Filter components whose
AIPS 2: neighborhood is weaker than
AIPS 2: IMAGRPRM(8) Jy. 0 -> don't
AIPS 2: (9) Radius in pixels for the
AIPS 2: IMAGRPRM(8) test.
AIPS 2: (10) multiplier of image size
AIPS 2: to get beam size: 0 => 2;
AIPS 2: 2, 1, 0.5 0.25 supported
AIPS 2: (11-16) Multi-resolution
AIPS 2: added controls
AIPS 2: (17) spectral index radius
AIPS 2: 0 -> no correction
AIPS 2: (19) Dynamic range limit
AIPS 2: (20) Retry factor (see help)
AIPS 2: NGAUSS 0 Number of resolutions to use
AIPS 2: WGAUSS *all 0 Resolutions in arc sec >= 0
AIPS 2: FGAUSS *all 0 Minimum flux for each resol.
AIPS 2: MAXPIXEL 0 Maximum pixels searched in
AIPS 2: each major cycle.
AIPS 2: IN3NAME ' ' Spectral index image name
AIPS 2: IN3CLASS ' ' Spectral index image class
AIPS 2: IN3SEQ 0 Spectral index image sequence
AIPS 2: number
AIPS 2: IN3DISK 0 Spectral index image disk
AIPS 2: IN4NAME ' ' Spectral curvature name
AIPS 2: IN4CLASS ' ' Spectral curvature class
AIPS 2: IN4SEQ 0 Spectral curvature sequence
AIPS 2: number
AIPS 2: IN4DISK 0 Spectral curvature disk
AIPS 2: FQTOL -1 Frequency tolerance in kHz
AIPS 2: (primary beam & spec index)
AIPS 2: DOTV 1 Display residuals on TV ?
AIPS 2: Start with field = DOTV
AIPS 2: GRCHAN 0 Graphics channel of boundary
AIPS 2: BADDISK *all 0 Disks to avoid for scratch.
You're going to want to set CELLSIZE to the same value you used with SETFC. IMSIZE should be the size of the smallest field you are using-- so in this case, 512. Don't worry, IMAGR is smart enough to know that some of the fields are bigger than this.  NFIELD should be set to the number of fields output by SETFC. Set DO3D = 1 whenever you use facets. Set BOXFILE and OBOXFILE to the name of the file outputted from SETFC. Finally, set OVERLAP=2 and DOTV=1. See Joe Lazio's write-up for more detail on other parameters. 

Don't be surprised that imaging with multiple facets can be realllly slooow...especially if you also have multiple channels. You're going to want to watch IMAGR run on the TV and set clean boxes around your sources, which can sometimes swallow up an entire afternoon or more. On the bright side, now that you have set OBOXFILE, all the clean boxes will be saved to it, so you might not have to watch IMAGR run on the TV next time (unless you say, have self-caled and a bunch of new sources have popped up which now need to be boxed).

The rough general idea is that IMAGR is going to try to find the facet with the brightest flux peak in it, and it will present this facet to you for cleaning. Put boxes around the sources in the facet with TVBOX/REBOX, and then click on CONTINUE CLEAN. IMAGR will now clean some flux out of these boxes, and search again for the facet with the brightest peak. Just keep boxing and continuing to clean until it seems like you've cleaned pretty deeply. There's a good chance some of the facets don't have any sources in them, in which case you can just not box anything at all and then tell IMAGR to CONTINUE CLEAN. If there are no boxes, it will not clean anything.

When you finally STOP CLEANING, IMAGR will restore all the clean components and present you with NFIELD images. You can then use these images to self calibrate, if you like.

If I am planning on doing several self cal iterations, I will often go through the facets and eliminate those with no sources. I just edit the BOX file to remove the facets with no sources, and then decrease the NFIELD parameter in IMAGR appropriately.

When you're happy with your imaging, you can use FLATN to turn the many facets into one single big image. See the Lazio instructions here:

Read more!