djs_reject

pydl.pydlutils.math.djs_reject(data, model, outmask=None, inmask=None, sigma=None, invvar=None, lower=None, upper=None, maxdev=None, maxrej=None, groupdim=None, groupsize=None, groupbadpix=False, grow=0, sticky=False)[source]

Routine to reject points when doing an iterative fit to data.

Parameters
datanumpy.ndarray

The data

modelnumpy.ndarray

The model, must have the same number of dimensions as data.

outmasknumpy.ndarray, optional

Output mask, generated by a previous call to djs_reject. If not supplied, this mask will be initialized to a mask that masks nothing. Although this parameter is technically optional, it will almost always be set.

inmasknumpy.ndarray, optional

Input mask. Bad points are marked with a value that evaluates to False. Must have the same number of dimensions as data.

sigmanumpy.ndarray, optional

Standard deviation of the data, used to reject points based on the values of upper and lower.

invvarnumpy.ndarray, optional

Inverse variance of the data, used to reject points based on the values of upper and lower. If both sigma and invvar are set, invvar will be ignored.

lowerint or float, optional

If set, reject points with data < model - lower * sigma.

upperint or float, optional

If set, reject points with data > model + upper * sigma.

maxdevint or float, optional

If set, reject points with abs(data-model) > maxdev. It is permitted to set all three of lower, upper and maxdev.

maxrejint or numpy.ndarray, optional

Maximum number of points to reject in this iteration. If groupsize or groupdim are set to arrays, this should be an array as well.

groupdim

To be documented.

groupsize

To be documented.

groupbadpixbool, optional

If set to True, consecutive sets of bad pixels are considered groups, overriding the values of groupsize.

growint, optional

If set to a non-zero integer, N, the N nearest neighbors of rejected pixels will also be rejected.

stickybool, optional

If set to True, pixels rejected in one iteration remain rejected in subsequent iterations, even if the model changes.

Returns
tuple

A tuple containing a mask where rejected data values are False and a boolean value set to True if djs_reject believes there is no further rejection to be done.

Raises
ValueError

If dimensions of various inputs do not match.