Table of Contents

**snapccd
in=**snapshot **out=**image [parameter=value]

Stellar astronomers refer to this type of 2-d histogram as a "Hess diagram" when it is used to plot a color-magnitude diagram of stars.

**snapccd** can also
create channel maps, where only signal near a specified velocity is copied.
See the **vrange** and **moment** keywords below. One can use either an exact velocity
window, or a gaussian beam in velocity space.

Note that the radial velocity
has the astronomical convention. The observer is located at infinity at
the positive Z-axis: a positive z velocity (**vz**) means stars are approaching,
i.e. negative radial velocity.

*snaprotate(1NEMO)*
has to be used first to do
any other than a top-view, probably the more general version *snapgrid(1NEMO)*
should be used.

A better alternative is *snapgrid(1NEMO)*
, and for more interpolation
(as opposed to gridding) style is *snapmap(1NEMO)*

**in=***in-file*- input file, must be in
*SnapShot(5NEMO)*format [no default]. **out=***out-file*- output file, will be in
*Image(5NEMO)*format [no default]. **origin=***x,y*- The
origin
*(x,y)*of the center of the ccd [default:**0,0**]. **size=***value*- Full size
of the CCD frame in ’physical’ units. Note that the picture is forced to
be square [default:
**4.0**]. **cell=***value*- Cell- or pixel size. Again they will be
square. For a 2D matrix this value will be set by the header of that dataset.
[default:
**0.1**]. **vrange=***vmin:vmax | vmean,vsig*- Range in (astronomical) radial
velocity (
**-vz**) to be used only while binning the data. One can also give a mean and dispersion in velocity space to weigh the data with. In this case the range in velocity space is somewhat arbitrarely taken from*vmean-3*vsig:vmean+3*vsig*. This last procedure is somewhat more realistic for astronomical applications, unless the package where the data will be transported to has decent smoothing utilities in velocity space also. The default of this keyword is to take all data along the vz axis. It does not make sense to select data along the z-axis when the**moment**(see below) is non-zero. [default:**-infinity:infinity**]. **moment=***number*- Order of the velocity moment: must be a non-negative number.
Most commonly choosen are:
**0**(total intensity),**1**(velocity weighted intensity) and**2**(velocity square weighted intensity), where ’intensity’ should really be read as surface density per square unit length. [default:**0**].

Note that the moment maps must
be smoothed *before* they can be combined to the proper velocity and dispersion
maps.

% snapccd in=nbody.dat out=map0 moment=0 % snapccd in=nbody.dat out=map1 moment=1 % snapccd in=nbody.dat out=map2 moment=2 % ccdsmooth in=map0 out=map00 gauss=0.1 % ccdsmooth in=map1 out=map11 gauss=0.1 % ccdsmooth in=map2 out=map22 gauss=0.1 % mv map00 int % ccdmath in=int,map11 out=vel fie=%2/%1 % ccdmath in=int,vel,map22 out=sig fie="sqrt(%3/%1-%2*%2)" % rm map11 map22

When channel maps
are produced (**moment=0**), the data are not normalized w.r.t. the convolving
velocity beam. For a rectangular beam (**vrange=vmin:vmax**) the data should
formally be divided by **(vmax-vmin)**, for a gaussian beam (**vrange=vmean,vsig**)
by **vsig*sqrt(2*pi)**. Also remember that a gaussian beam has **FWHM = 2.355*sigma**.

The program gracefully allows the user to use nonzero
**moment** and a non-infinite **vrange**. No warnings here.

src/nbody/imagesnapccd.c, snapccd.1

17-Jun-87V1.0: CreatedPJT 25-jun-87V1.1: grayscale possibility addedPJT 29-jun-87V2.0: image-format + three programs: ccd, smooth, lookPJT 30-Jun-87V2.1: improved ’struct’ filestructurePJT 1-Jul-87V2.2: added velocity-moments optionPJT 8-jul-87V2.4: proper defn. of cell positionPJT 9-Mar-88V3.0: added data historyPJT 1-jun-88V4.0: new filestruct, renamed programnamePJT 22-dec-88V4.1: channel maps can be produces, keyword vrangePJT 30-jan-89V4.2: vel is now Zmin, also proper dimensionsPJT