CCG_MD1x

Combines data lines using a weighted median

Description:

This routine accepts an array consisting a series of (vectorised) lines of data. The data values in the lines are then combined to form a weighted median line. The weights used are one-per-line and are the reciprocal of values given in the array VARS. The output means are returned in the array RESULT.

Invocation

CALL CCG_MD1x( CALCMV, NPIX, NLINES, STACK, VARS, MINPIX, NMAT, COVEC, RESULT, RESVAR, WRK1, WRK2, POINT, USED, NCON, NBAD, STATUS )

Arguments

CALCMV = LOGICAL (Given)
If .FALSE. then the output variances are estimated by scaling the variance on the weighted mean (rather than the weighted median) by Pi/2. Otherwise, the output variances are calculated using the COVEC array.
NPIX = INTEGER (Given)
The number of pixels in a line of data.
NLINES = INTEGER (Given)
The number of lines of data in the stack.
STACK( NPIX, NLINES ) = ? (Given)
The array of lines which are to be combined into a single line.
VARS( NPIX, NLINES ) = ? (Given)
The data variances.
MINPIX = INTEGER (Given)
The minimum number of pixels required to contribute to an output pixel.
NMAT = INTEGER (Given)
Size of the first dimension of COVEC.
COVEC( NMAT, NLINES ) = DOUBLE PRECISION (Given)
The packed variance-covariance matrix of the order statistics from a normal distribution of sizes up to NLINES, produced by CCG_ORVAR. Not used if CALCMV is .FALSE.
RESULT( NPIX ) = ? (Returned)
The output line of data.
RESVAR( NPIX ) = ? (Returned)
The output variance.
WRK1( NLINES ) = ? (Returned)
Workspace for calculations.
WRK2( NLINES ) = ? (Returned)
Workspace for calculations.
POINT( NLINES ) = INTEGER (Returned)
Workspace to hold pointers to the original positions of the data before extraction and conversion in to the WRK1 array.
USED( NLINES ) = LOGICAL (Returned)
Workspace used to indicate which values have been used in estimating a resultant value.
NCON( NLINES ) = DOUBLE PRECISION (Returned)
The actual number of contributing pixels from each input line to the output line.
NBAD = INTEGER (Returned)
The number of bad values in the output array created while forming the statistics. It excludes those bad values whose corresponding values along the collapse axis are all bad.
STATUS = INTEGER (Given and Returned)
The global status.

Notes: