PixTable¶
-
class
mpdaf.drs.
PixTable
(filename, xpos=None, ypos=None, lbda=None, data=None, dq=None, stat=None, origin=None, weight=None, primary_header=None, save_as_ima=True, wcs=Unit("pix"), wave=Unit("Angstrom"), unit_data=Unit("ct"))[source]¶ Bases:
object
PixTable class.
This class manages input/output for MUSE pixel table files. The FITS file is opened with memory mapping. Just the primary header and table dimensions are loaded. The methods
get_xpos
,get_ypos
,get_lambda
,get_data
,get_dq
,get_stat
andget_origin
must be used to get columns data.- Parameters
- filename
str
The FITS file name. None by default.
- filename
- Attributes
- filename
str
The FITS file name. None if any.
- primary_header
astropy.io.fits.Header
The primary header.
- nrows
int
Number of rows.
- nifu
int
Number of merged IFUs that went into this pixel table.
- wcs
astropy.units.Unit
Type of spatial coordinates of this pixel table (u.pix, u.deg or u.rad)
- wave
astropy.units.Unit
Type of spectral coordinates of this pixel table
- imabool
If True, pixtable is saved as multi-extension FITS image instead of FITS binary table.
- filename
Attributes Summary
If True, this pixel table was flux-calibrated.
Return the projection type.
If True, this pixel table was sky-subtracted.
Methods Summary
copy
(self)Copy PixTable object in a new one and returns it.
extract
(self[, filename, sky, lbda, ifu, …])Extracts a subset of a pixtable using the following criteria:
extract_from_mask
(self, mask)Return a new pixtable extracted with the given mask.
get_column
(self, name[, ksel])Load a column and return it.
get_data
(self[, ksel, unit])Load the data column and return it.
get_dq
(self[, ksel])Load the dq column and return it.
get_exp
(self)Load the exposure numbers and return it as a column.
get_keyword
(self, key[, default])Return the keyword value corresponding to key, adding the keyword prefix (
'HIERARCH ESO DRS MUSE PIXTABLE'
).get_lambda
(self[, ksel, unit])Load the lambda column and return it.
get_origin
(self[, ksel])Load the origin column and return it.
get_pos_sky
(self[, xpos, ypos])Return the absolute position on the sky in degrees/pixel.
get_row
(self, idx)Return a row of the pixtable, or rows if given a list of indices.
get_stat
(self[, ksel, unit])Load the stat column and return it.
get_weight
(self[, ksel])Load the weight column and return it.
get_xpos
(self[, ksel, unit])Load the xpos column and return it.
get_ypos
(self[, ksel, unit])Load the ypos column and return it.
info
(self)Print information.
mask_column
(self[, maskfile])Compute the mask column corresponding to a mask file.
origin2coords
(self, origin)Converts the origin value and returns (ifu, slice, ypix, xpix).
origin2ifu
(self, origin)Converts the origin value and returns the ifu number.
origin2slice
(self, origin)Converts the origin value and returns the slice number.
origin2xoffset
(self, origin[, ifu, sli])Converts the origin value and returns the x coordinates offset.
origin2xpix
(self, origin[, ifu, sli])Converts the origin value and returns the x coordinates.
origin2ypix
(self, origin)Converts the origin value and returns the y coordinates.
reconstruct_det_image
(self[, xstart, …])Reconstructs the image on the detector from the pixtable.
Reconstructs an image of wavelength values on the detector from the pixtable.
select_exp
(self, exp, col_exp)Return a mask corresponding to given exposure numbers.
select_ifus
(self, ifus[, origin])Return a mask corresponding to given ifus.
select_lambda
(self, lbda[, unit])Return a mask corresponding to the given wavelength range.
select_sky
(self, sky)Return a mask corresponding to the given aperture on the sky (center, size and shape)
select_slices
(self, slices[, origin])Return a mask corresponding to given slices.
select_stacks
(self, stacks[, origin])Return a mask corresponding to given stacks.
select_xpix
(self, xpix[, origin])Return a mask corresponding to given detector pixels.
select_ypix
(self, ypix[, origin])Return a mask corresponding to given detector pixels.
set_column
(self, name, data[, ksel])Set a column (or a part of it).
set_data
(self, data[, ksel, unit])Set data column (or a part of it).
set_dq
(self, dq[, ksel])Set dq column (or a part of it).
set_keyword
(self, key, val)Set the keyword value corresponding to key, adding the keyword prefix (
'HIERARCH ESO DRS MUSE PIXTABLE'
).set_lambda
(self, lbda[, ksel, unit])Set lambda column (or a part of it).
set_origin
(self, origin[, ksel])Set origin column (or a part of it).
set_stat
(self, stat[, ksel, unit])Set stat column (or a part of it).
set_weight
(self, weight[, ksel])Set weight column (or a part of it).
set_xpos
(self, xpos[, ksel, unit])Set xpos column (or a part of it).
set_ypos
(self, ypos[, ksel, unit])Set ypos column (or a part of it).
write
(self, filename[, save_as_ima])Save the object in a FITS file.
Attributes Documentation
-
fluxcal
¶ If True, this pixel table was flux-calibrated.
-
projection
¶ Return the projection type.
‘positioned’ for positioned pixtables
‘projected’ for reduced pixtables
-
skysub
¶ If True, this pixel table was sky-subtracted.
Methods Documentation
-
extract
(self, filename=None, sky=None, lbda=None, ifu=None, sl=None, xpix=None, ypix=None, exp=None, stack=None, method='and')[source]¶ Extracts a subset of a pixtable using the following criteria:
aperture on the sky (center, size and shape)
wavelength range
IFU numbers
slice numbers
detector pixels
exposure numbers
stack numbers
The arguments can be either single value or a list of values to select multiple regions.
- Parameters
- filename
str
The FITS filename used to save the resulted object.
- sky(
float
,float
,float
,char
) (y, x, size, shape) extract an aperture on the sky, defined by a center (y, x) in degrees/pixel, a shape (‘C’ for circular, ‘S’ for square) and size (radius or half side length) in arcsec/pixels.
- lbda(
float
,float
) (min, max) wavelength range in angstrom.
- ifu
int
orlist
IFU number.
- sl
int
orlist
Slice number on the CCD.
- xpix(
int
,int
) orlist
(min, max) pixel range along the X axis
- ypix(
int
,int
) orlist
(min, max) pixel range along the Y axis
- exp
list
ofint
List of exposure numbers
- stack
list
ofint
List of stack numbers
- method‘and’ or ‘or’
Logical operation used to merge the criteria
- filename
- Returns
- out
PixTable
- out
-
extract_from_mask
(self, mask)[source]¶ Return a new pixtable extracted with the given mask.
- Parameters
- mask
numpy.ndarray
Mask (array of bool).
- mask
- Returns
- out
PixTable
- out
-
get_column
(self, name, ksel=None)[source]¶ Load a column and return it.
- Parameters
- name
str
orattribute
Name of the column.
- ksel
output
ofnp.where
Elements depending on a condition.
- name
- Returns
- out
numpy.array
- out
-
get_data
(self, ksel=None, unit=None)[source]¶ Load the data column and return it.
- Parameters
- ksel
output
ofnp.where
Elements depending on a condition.
- unit
astropy.units.Unit
Unit of the returned data.
- ksel
- Returns
- out
numpy.array
- out
-
get_dq
(self, ksel=None)[source]¶ Load the dq column and return it.
- Parameters
- ksel
output
ofnp.where
Elements depending on a condition.
- ksel
- Returns
- out
numpy.array
- out
-
get_exp
(self)[source]¶ Load the exposure numbers and return it as a column.
- Returns
- out
numpy.memmap
- out
-
get_keyword
(self, key, default=None)[source]¶ Return the keyword value corresponding to key, adding the keyword prefix (
'HIERARCH ESO DRS MUSE PIXTABLE'
).
-
get_lambda
(self, ksel=None, unit=None)[source]¶ Load the lambda column and return it.
- Parameters
- ksel
output
ofnp.where
Elements depending on a condition.
- unit
astropy.units.Unit
Unit of the returned data.
- ksel
- Returns
- out
numpy.array
- out
-
get_origin
(self, ksel=None)[source]¶ Load the origin column and return it.
- Parameters
- ksel
output
ofnp.where
Elements depending on a condition.
- ksel
- Returns
- out
numpy.array
- out
-
get_pos_sky
(self, xpos=None, ypos=None)[source]¶ Return the absolute position on the sky in degrees/pixel.
- Parameters
- xpos
numpy.array
xpos values
- ypos
numpy.array
ypos values
- xpos
- Returns
- xpos_sky, ypos_sky
numpy.array
,numpy.array
- xpos_sky, ypos_sky
-
get_stat
(self, ksel=None, unit=None)[source]¶ Load the stat column and return it.
- Parameters
- ksel
output
ofnp.where
Elements depending on a condition.
- unit
astropy.units.Unit
Unit of the returned data.
- ksel
- Returns
- out
numpy.array
- out
-
get_weight
(self, ksel=None)[source]¶ Load the weight column and return it.
- Parameters
- ksel
output
ofnp.where
Elements depending on a condition.
- ksel
- Returns
- out
numpy.array
- out
-
get_xpos
(self, ksel=None, unit=None)[source]¶ Load the xpos column and return it.
- Parameters
- ksel
output
ofnp.where
Elements depending on a condition.
- unit
astropy.units.Unit
Unit of the returned data.
- ksel
- Returns
- out
numpy.array
- out
-
get_ypos
(self, ksel=None, unit=None)[source]¶ Load the ypos column and return it.
- Parameters
- ksel
output
ofnp.where
Elements depending on a condition.
- unit
astropy.units.Unit
Unit of the returned data.
- ksel
- Returns
- out
numpy.array
- out
-
mask_column
(self, maskfile=None)[source]¶ Compute the mask column corresponding to a mask file.
- Parameters
- maskfile
str
Path to a FITS image file with WCS information, used to mask out bright continuum objects present in the FoV. Values must be 0 for the background and >0 for objects.
- maskfile
- Returns
-
origin2coords
(self, origin)[source]¶ Converts the origin value and returns (ifu, slice, ypix, xpix).
-
origin2xoffset
(self, origin, ifu=None, sli=None)[source]¶ Converts the origin value and returns the x coordinates offset.
-
origin2xpix
(self, origin, ifu=None, sli=None)[source]¶ Converts the origin value and returns the x coordinates.
-
reconstruct_det_image
(self, xstart=None, ystart=None, xstop=None, ystop=None)[source]¶ Reconstructs the image on the detector from the pixtable.
The pixtable must concerns only one IFU, otherwise an exception is raised.
- Returns
- out
Image
- out
-
reconstruct_det_waveimage
(self)[source]¶ Reconstructs an image of wavelength values on the detector from the pixtable. The pixtable must concerns only one IFU, otherwise an exception is raised.
- Returns
- out
Image
- out
-
select_lambda
(self, lbda, unit=Unit("Angstrom"))[source]¶ Return a mask corresponding to the given wavelength range.
- Parameters
- lbda(
float
,float
) (min, max) wavelength range in angstrom.
- unit
astropy.units.Unit
Unit of the wavelengths in input.
- lbda(
- Returns
-
select_sky
(self, sky)[source]¶ Return a mask corresponding to the given aperture on the sky (center, size and shape)
-
set_column
(self, name, data, ksel=None)[source]¶ Set a column (or a part of it).
- Parameters
- name
str
orattribute
Name of the column.
- data
numpy.array
data values
- ksel
output
ofnp.where
Elements depending on a condition.
- name
-
set_data
(self, data, ksel=None, unit=None)[source]¶ Set data column (or a part of it).
- Parameters
- data
numpy.array
data values
- ksel
output
ofnp.where
Elements depending on a condition.
- unit
astropy.units.Unit
unit of the data column in input.
- data
-
set_dq
(self, dq, ksel=None)[source]¶ Set dq column (or a part of it).
- Parameters
- dq
numpy.array
dq values
- ksel
output
ofnp.where
Elements depending on a condition.
- dq
-
set_keyword
(self, key, val)[source]¶ Set the keyword value corresponding to key, adding the keyword prefix (
'HIERARCH ESO DRS MUSE PIXTABLE'
).
-
set_lambda
(self, lbda, ksel=None, unit=None)[source]¶ Set lambda column (or a part of it).
- Parameters
- lbda
numpy.array
lbda values
- ksel
output
ofnp.where
Elements depending on a condition.
- unit
astropy.units.Unit
unit of the lambda column in input.
- lbda
-
set_origin
(self, origin, ksel=None)[source]¶ Set origin column (or a part of it).
- Parameters
- origin
numpy.array
origin values
- ksel
output
ofnp.where
Elements depending on a condition.
- origin
-
set_stat
(self, stat, ksel=None, unit=None)[source]¶ Set stat column (or a part of it).
- Parameters
- stat
numpy.array
stat values
- ksel
output
ofnp.where
Elements depending on a condition.
- unit
astropy.units.Unit
unit of the stat column in input.
- stat
-
set_weight
(self, weight, ksel=None)[source]¶ Set weight column (or a part of it).
- Parameters
- weight
numpy.array
weight values
- ksel
output
ofnp.where
Elements depending on a condition.
- weight
-
set_xpos
(self, xpos, ksel=None, unit=None)[source]¶ Set xpos column (or a part of it).
- Parameters
- xpos
numpy.array
xpos values
- ksel
output
ofnp.where
Elements depending on a condition.
- unit
astropy.units.Unit
unit of the xpos column in input.
- xpos
-
set_ypos
(self, ypos, ksel=None, unit=None)[source]¶ Set ypos column (or a part of it).
- Parameters
- ypos
numpy.array
ypos values
- ksel
output
ofnp.where
Elements depending on a condition.
- unit
astropy.units.Unit
unit of the ypos column in input.
- ypos