astro py:docs

- Index
- Modules

### Navigation

- next »
- « previous |
- Astropy v0.3 »
- Convolution and filtering (`astropy.convolution`) »
- Box1DKernel

# Box1DKernel

class `astropy.convolution.kernels.``Box1DKernel`(width, **kwargs)

  Bases: `astropy.convolution.core.Kernel1D`

  1D Box filter kernel.

  The Box filter or running mean is a smoothing filter. It is not isotropic and can produce artifacts, when applied repeatedly to the same data.

  By default the Box kernel uses the `linear_interp` discretization mode, which allows non shifting, even sized kernels. This is achieved by weighting the edge pixels with 1/2. E.g a Box kernel with an effective smoothing of 4 pixel would have the following array: [0.5, 1, 1, 1, 0.5].

  Parameters:

  width : number

  > Width of the filter kernel.

  mode : str, optional

  > One of the following discretization modes:
  >   - ‘center’

  >       Discretize model by taking the value at the center of the bin.

  >   - ‘linear_interp’ (default)

  >       Discretize model by linearly interpolating between the values at the corners of the bin.

  >   - ‘oversample’

  >       Discretize model by taking the average on an oversampled grid.

  >   - ‘integrate’

  >       Discretize model by integrating the model over the bin.

  factor : number, optional

  > Factor of oversampling. Default factor = 10.

  See also

  `Gaussian1DKernel`, `Trapezoid1DKernel`, `MexicanHat1DKernel`

  Examples

  Kernel response function:

  >     import matplotlib.pyplot as plt
  >     from astropy.convolution import Box1DKernel
  >     box_1D_kernel = Box1DKernel(9)
  >     plt.plot(box_1D_kernel, drawstyle='steps')
  >     plt.xlim(-1, 9)
  >     plt.xlabel('x [pixels]')
  >     plt.ylabel('value')
  >     plt.show()

  > (Source code, png, hires.png, pdf)