Clump-finding Algorithms

**GaussClumps**

Based on the algorithm described by Stutzki & Güsten (1990, ApJ 356, 513). This algorithm proceeds by fitting a
Gaussian profile to the brightest peak in the data. It then subtracts the fit from the data and iterates, fitting a
new ellipse to the brightest peak in the residuals. This continues until the integrated data sum in the fitted
Gaussians reaches the integrated data sum in the input array, or a series of consecutive fits are made
which have peak values below a given multiple of the noise level. Each fitted ellipse is taken to
be a single clump and is added to the output catalogue. In this algorithm, clumps may overlap.
Any input variance component is used to scale the weight associated with each pixel value when
performing the Gaussian fit. The most significant configuration parameters for this algorithm are:
`GaussClumps.FwhmBeam`

and `GaussClumps.VeloRes`

which determine the minimum clump size.
**ClumpFind**

Described by Williams et al (1994, ApJ 428, 693). This algorithm works by first contouring the data at a multiple
of the noise, then searches for peaks of emission which locate the clumps, and then follows them
down to lower intensities. No a priori clump profile is assumed. In this algorithm, clumps never
overlap. Clumps which touch an edge of the data array are not included in the final list of clumps.
**Reinhold**

Based on an algorithm developed by Kim Reinhold at JAC. See **SUN/255** for more information
on this algorithm. The edges of the clumps are first found by searching for peaks within a set of
one-dimensional profiles running through the data, and then following the wings of each peak down to the
noise level or to a local minimum. A mask is thus produced in which the edges of the clumps are
marked. These edges however tend to be quite noisy, and so need to be cleaned up before further
use. This is done using a pair of cellular automata which first dilate the edge regions and then
erode them. The volume between the edges are then filled with an index value associated with
the peak position. Another cellular automata is used to removed noise from the filled clumps.
**FellWalker**

David Berry devised an algorithm which walks up hills along the line of greatest gradient until a significant
peak is reached. It then assigns all pixels visited along the route to the clump associated with the peak. Such a
walk is performed for every pixel in the data array which is above a specified background level. It is described
in Berry (2015).

See **SUN/255** for more information on findclumps and a full list of the configuration options for each
algorithm.

Copyright © 2015-2016 Science and Technology Facilities Council