CubeList

class mpdaf.obj.CubeList(files, scalelist=None)[source]

Bases: object

Manages a list of cubes and handles the combination.

To run the combination, all the cubes must have the same dimensions and be on the same WCS grid.

Parameters:

files : list of str

List of cubes fits filenames

Attributes

files (list of str) List of cubes fits filenames
nfiles (integer) Number of files.
scales (list of doubles) List of scales
shape (array of 3 integers)) Lengths of data in Z and Y and X (python notation (nz,ny,nx)).
wcs (mpdaf.obj.WCS) World coordinates.
wave (mpdaf.obj.WaveCoord) Wavelength coordinates
unit (str) Possible data unit type. None by default.

Create a CubeList object.

Parameters:

files : list of str

List of cubes fits filenames

scalelist: list of float

(optional) list of scales to be applied to each cube

Attributes Summary

checkers

Methods Summary

check_compatibility() Checks if all cubes are compatible.
check_dim() Checks if all cubes have same dimensions.
check_wcs() Checks if all cubes have same world coordinates.
combine([nmax, nclip, nstop, var, mad, header]) combines cubes in a single data cube using sigma clipped mean.
info([verbose]) Print information.
median([header]) Combines cubes in a single data cube using median.
pycombine([nmax, nclip, var, nstop, nl, header])
pymedian([header])
save_combined_cube(data[, var, method, ...])

Attributes Documentation

checkers = ('check_dim', 'check_wcs')

Methods Documentation

check_compatibility()[source]

Checks if all cubes are compatible.

check_dim()[source]

Checks if all cubes have same dimensions.

check_wcs()[source]

Checks if all cubes have same world coordinates.

combine(nmax=2, nclip=5.0, nstop=2, var='propagate', mad=False, header=None)[source]

combines cubes in a single data cube using sigma clipped mean.

Parameters:

nmax : integer

maximum number of clipping iterations

nclip : float or (float,float)

Number of sigma at which to clip. Single clipping parameter or lower / upper clipping parameters.

nstop : integer

If the number of not rejected pixels is less than this number, the clipping iterations stop.

var : str

propagate, stat_mean, stat_one

  • propagate: the variance is the sum of the variances of the N individual exposures divided by N**2.
  • stat_mean: the variance of each combined pixel is computed as the variance derived from the comparison of the N individual exposures divided N-1.
  • stat_one: the variance of each combined pixel is computed as the variance derived from the comparison of the N individual exposures.

mad : boolean

Use MAD (median absolute deviation) statistics for sigma-clipping

Returns:

out : Cube, mpdaf.obj.Cube, astropy.table

cube, expmap, statpix

  • cube will contain the merged cube
  • expmap will contain an exposure map data cube which counts the number of exposures used for the combination of each pixel.
  • statpix is a table that will give the number of Nan pixels and rejected pixels per exposures (columns are FILENAME, NPIX_NAN and NPIX_REJECTED)
info(verbose=False)[source]

Print information.

median(header=None)[source]

Combines cubes in a single data cube using median.

Returns:

out : Cube, mpdaf.obj.Cube, Table

cube, expmap, statpix

  • cube will contain the merged cube
  • expmap will contain an exposure map data cube which counts the number of exposures used for the combination of each pixel.
  • statpix is a table that will give the number of Nan pixels pixels per exposures (columns are FILENAME and NPIX_NAN)
pycombine(nmax=2, nclip=5.0, var='propagate', nstop=2, nl=None, header=None)[source]
pymedian(header=None)[source]
save_combined_cube(data, var=None, method='', keywords=None, expnb=None, unit=None, header=None)[source]