The <kpvslice> programme allows you to use a two-dimensional image to define a slice through a three-dimensional data cube. The image and cube must have two dimensions in common, and the coordinate range of those dimensions must (partially) overlap, but the axes need not have the same reference point, orientation or scale.
A typical use is to examine the position-velocity diagram for a slice drawn along the major axis of a rotating galaxy. The slice is drawn on the total column density or velocity field map, and the corresponding position-velocity diagram will appear in the other window. The slice can be moved around interactively for quick comparison of different regions.
A screen snapshot is available here.
You need a cube (naturally) and a sky map image. The image is usually taken to be the total-intensity map of the cube, but it could just as easily be the velocity-field or an optical image. As long as the cube and the image have a proper co-ordinate system for RA and DEC, you're in business. To load the cube, press the Cubes button in the left window and select a cube file. Press the Images button to load the image file. The image is displayed in the left window. If you then click (middle) in the image and drag the mouse (still keeping the button pressed), you will see the position-velicity slice in the right window being updated before your very eyes. Back in the image window a line is drawn over the image to show where the slice is. The horizontal axis in the right window shows position and the vertical axis shows velocity. If the machine you are running this on is rather old and slow, you can disable Auto Update and the position-velocity image will only be computed once you release the middle mouse button. The cursor position (in RA and DEC) is printed to the command shell window whenever the middle button is pressed or released. This tells you the endpoints of the slice. Also, the centre of the slice and it's position angle are also printed.
If you click with the right mouse button near the centre of the slice, you can then move the slice centre around whilst the length and position angle is kept constant. If instead you clicked the right button near either end of the slice, you can change the position angle while the length and centre are kept fixed.
When moving the cursor in the slice window, the coordinates of the cursor are displayed in several ways. The ``natural'' coordinates of offset (from the slice centre) and third-axis coordinate are shown in the second line. The image coordinates corresponding to the offset are shown in the third line. The position of the cursor along the slice is also shown by a small circle in the image window.
If you compute the moments of the cube with <kpvslice>, both are held in memory, so you may switch between them easily. The values in the first moment image along the slice are plotted as a red trace in the slice window. Note that no smoothing is done before the clipping level is applied, so they do not do as good a job of representing weak signals as the standard MOMNT task in AIPS. This may be fixed in later versions of the program.
If the values in the two-dimensional image have the same units as the cube's third coordinate axis, the values are extracted and displayed as a green trace in the slice window. In practice this usually happens when one draws a slice on a velocity field image; the velocities from the image are drawn as a green line on the position-velocity diagram. The position angle is defined as the angle in the corner of a spherical triangle.
You can also view a profile (spectrum) of your cube profiles. Just press the Z-Profile button and move the mouse over the image window.
If you wish to see a profile along the slice across the image, press the I-Profile button and another profile window will appear. Just don't confuse the two different profile windows.
<kpvslice> can also extract a (one dimensional) slice from an image. In this case, you do not have to load a cube, only the image is needed. Click on the I-Profile button and draw your slice. The profile window will show the values in the image which lie along the slice locus.
The following command-line options are supported by <kpvslice>:
The slices are interpolated using a weighted average of the nearest four pixels. The weighting is inversely proportional to the distance of the point in the slice from the centre of the neighbour pixel.
So the ``thickness'' is basically one spatial pixel, but the width of the region that the interpolation is made over varies depending on the angle of the slice with respect to the pixel grid. It is least (3 pixels wide) when the slice is along the x or y axis of the pixel grid, and greatest (sqrt(2)*3) when the slice is at 45 to the pixel grid.
The interpolation is made only with respect to the pixel grid, so the above numbers are only strictly true if the x and y directions have the same spatial scales. If the arcsec/pixel is different in the x and y directions, the width of the slice in arcsec will change from differently as the angle of the slice w.r.t the pixel grid changes.
++++.+++++++ +++++.*+++++ +++++*x*++++ 'x' is the current pixel, '*' are the neighbours ++++++*.++++ '.' is the other pixels in the slice. ++++++++.+++ +++++++++.++