mangadap.dapfits module¶
Defines a class used to interface with the final maps files produced by the MaNGA Data Analysis Pipeline (DAP).
Todo
Allow DAPFits to read/access both the MAPS and the LOGCUBE files, not just the former.
Copyright © 2019, SDSS-IV/MaNGA Pipeline Group
-
class
mangadap.dapfits.
DAPCubeBitMask
[source]¶ Bases:
mangadap.util.dapbitmask.DAPBitMask
Class used to flag/interpret bits in DAP model LOGCUBE files.
The defined bits are listed at MANGA_DAPSPECMASK.
Todo
Force read IDLUTILS version as opposed to internal one?
-
cfg_root
= 'dap_cube_bits'¶
-
class
mangadap.dapfits.
DAPMapsBitMask
[source]¶ Bases:
mangadap.util.dapbitmask.DAPBitMask
Class used to flag/interpret bits in DAP MAPS files.
The defined bits are listed at MANGA_DAPPIXMASK.
Todo
Force read IDLUTILS version as opposed to internal one?
-
cfg_root
= 'dap_maps_bits'¶
-
class
mangadap.dapfits.
DAPQualityBitMask
[source]¶ Bases:
mangadap.util.dapbitmask.DAPBitMask
Class used to flag/interpret global quality bit.
The defined bits are listed at MANGA_DAPQUAL.
Todo
Force read IDLUTILS version as opposed to internal one?
-
cfg_root
= 'dap_quality_bits'¶
-
mangadap.dapfits.
add_snr_metrics_to_header
(hdr, cube, r_re)[source]¶ For all valid spaxels within 1 Re < R < 1.5 Re calculate the median S/N and combined S/N (including covariance) in the griz bands.
- Adds the following keywords (8) to the header:
SNR?MED: Median S/N within 1-1.5 Re in each of the griz bands.
SNR?RING: The combined S/N of all spaxels within 1-1.5 Re in the griz bands, incuding covariance
The inclusion of covariance is based on the exact calculation of the correlation matrix at the flux-weighted center of each band, and assuming no change in the correlation between the response-weighted correlation within the broad band.
- Parameters
hdr (astropy.io.fits.Header) – Header object to edit
cube (
mangadap.datacube.datacube.DataCube
) – Datacuber_re (numpy.ndarray) – Flattened array with the semi-major axis radius in units of the effective radius for all spaxels in the datacube. Shape should be (Nx*Ny,), where the shape of the datacube is (Nx,Ny,Nwave).
- Returns
The edited header object.
- Return type
- Raises
FileNotFoundError – Raised if any of the response function files cannot be found.
-
mangadap.dapfits.
combine_binid_extensions
(cube, binned_spectra, stellar_continuum, emission_line_moments, emission_line_model, spectral_indices, dtype=None)[source]¶ Combine the bin IDs from the different analysis steps into a single multichannel extension.
-
mangadap.dapfits.
confirm_dap_types
(cube, rdxqa, binned_spectra, stellar_continuum, emission_line_moments, emission_line_model, spectral_indices)[source]¶
-
class
mangadap.dapfits.
construct_cube_file
(cube, metadata, binned_spectra=None, stellar_continuum=None, emission_line_model=None, dapver=None, analysis_path=None, directory_path=None, output_file=None, clobber=True, loggers=None, quiet=False, single_precision=False)[source]¶ Bases:
object
Construct a DAP cube file based on the input data.
Set as a class for coherency reasons, but should not be used as an object!
Should force all intermediate objects to be provided.
-
_get_data_mask
(binned_spectra, binned_spectra_3d_hdu)[source]¶ - For the binned spectra:
consolidate ANY flag except NO_STDDEV from binned_spectra into IGNORED; done use SpatiallyBinnedSpectra.do_not_fit_flags
propagate NONE_IN_STACK from binned_spectra into FLUXINVALID
propagate IVARINVALID and FORESTAR
-
_get_emission_line_model_mask
(emission_line_model, emission_line_model_3d_hdu)[source]¶ - For the emission-line models:
propagate FORESTAR
propagate ARTIFACT
consolidate DIDNOTUSE, FORESTAR, LOW_SNR, ARTIFACT, OUTSIDE_RANGE, TPL_PIXELS, TRUNCATED, PPXF_REJECT, INVALID_ERROR into FITIGNORED
-
_get_stellar_continuum_mask
(stellar_continuum, stellar_continuum_3d_hdu)[source]¶ - For the stellar continuum models:
propagate FORESTAR
propagate INVALID_ERROR into IVARINVALID
propagate ARTIFACTs
consolidate DIDNOTUSE, FORESTAR, LOW_SNR, ARTIFACT, OUTSIDE_RANGE, EML_REGION, TPL_PIXELS, TRUNCATED, PPXF_REJECT, INVALID_ERROR, NO_FIT into FITIGNORED
consolidate FIT_FAILED into FITFAILED
-
_include_no_model_mask
(mask)[source]¶ Assign the NOMODEL bit to spectral regions outside of the fitted spectral range.
Modeled off of StellarContiuumModel.reset_continuum_mask_window.
-
_set_paths
(directory_path, dapver, analysis_path, output_file, binned_spectra, stellar_continuum, emission_line_model)[source]¶ Set the paths relevant to the map file.
-
binned_data_cube
(prihdr, binned_spectra, binned_spectra_3d_hdu)[source]¶ Constructs the ‘FLUX’, ‘IVAR’, ‘MASK’, ‘LSF’, ‘WAVE’, and ‘REDCORR’ model cube extensions, and begins the construction of the ‘MASK’.
Returns the primary header, a list of ImageHDUs, and the mask array.
-
model_cubes
(prihdr, binned_spectra, stellar_continuum, stellar_continuum_3d_hdu, emission_line_model, emission_line_model_3d_hdu)[source]¶ Constructs the ‘MODEL’, ‘MODEL_MASK’, ‘EMLINE’, ‘STELLAR’, and ‘STELLAR_MASK’ model cube extensions, adds the model information to the header, and appends data to the mask.
-
-
class
mangadap.dapfits.
construct_maps_file
(cube, metadata, rdxqa=None, binned_spectra=None, stellar_continuum=None, emission_line_moments=None, emission_line_model=None, spectral_indices=None, redshift=None, dapver=None, analysis_path=None, directory_path=None, output_file=None, clobber=True, loggers=None, quiet=False, single_precision=False)[source]¶ Bases:
object
Construct a DAP MAPS file.
Set as a class to enforce a namespace. Should not be used as an object!
Should force all intermediate objects to be provided.
-
_emission_line_model_mask_to_map_mask
(emission_line_model, elf_mask, for_dispersion=False)[source]¶ Propagate and consolidate the emission-line moment masks to the map pixel mask.
INSUFFICIENT_DATA propagated to NOVALUE
FIT_FAILED, UNDEFINED_COVAR propagated to FITFAILED
NEAR_BOUND copied to NEARBOUND
UNDEFINED_SIGMA propagated to UNRELIABLE
-
_emission_line_moment_mask_to_map_mask
(emission_line_moments, elm_mask)[source]¶ Propagate and consolidate the emission-line moment masks to the map pixel mask.
DIDNOTUSE, FORESTAR propagated from already existing mask (self.bin_mask)
MAIN_EMPTY, BLUE_EMPTY, RED_EMPTY, UNDEFINED_BANDS propagated to NOVALUE
MAIN_JUMP, BLUE_JUMP, RED_JUMP, JUMP_BTWN_SIDEBANDS propagated to FITFAILED
MAIN_INCOMP, BLUE_INCOMP, RED_INCOMP propagated to UNRELIABLE
NO_ABSORPTION_CORRECTION propagated to NOCORRECTION
DIVBYZERO propagated to MATHERROR
Second moments not provided so no need to include UNDEFINED_MOM2
-
_set_paths
(directory_path, dapver, analysis_path, output_file, binned_spectra, stellar_continuum, emission_line_model)[source]¶ Set the paths relevant to the map file.
-
_spectral_index_mask_to_map_mask
(spectral_indices, si_mask)[source]¶ Propagate and consolidate the spectral index masks to the map pixel mask.
DIDNOTUSE, FORESTAR propagated from already existing mask (self.bin_mask)
MAIN_EMPTY, BLUE_EMPTY, RED_EMPTY, UNDEFINED_BANDS propagated to NOVALUE
MAIN_INCOMP, BLUE_INCOMP, RED_INCOMP propagated to UNRELIABLE
NO_DISPERSION_CORRECTION propagated to NOCORRECTION
DIVBYZERO propagated to MATHERROR
Need to further assess *_INCOMP to see if these lead to bad values (BADVALUE).
-
_stellar_continuum_mask_to_map_mask
(stellar_continuum, sc_mask, for_dispersion=False)[source]¶ sc_mask constains the reconstructed map of the masks in each stellar continuum fit (using the stellar continuum bitmask).
Propagate and consolidate the stellar-continuum masks to the map pixel mask.
- DIDNOTUSE, FORESTAR propagated from already existing mask
(self.bin_mask)
LOW_SNR, NO_FIT, INSUFFICIENT_DATA propagated to NOVALUE
FIT_FAILED, NEAR_BOUND propagated to FITFAILED and NEARBOUND
- NEGATIVE_WEIGHTS consolidated into UNRELIABLE; if
dispersion=True, include BAD_SIGMA in this
-
binned_spectra_maps
(prihdr, binned_spectra)[source]¶ Constructs the ‘BIN_LWSKYCOO’, ‘BIN_LWELLCOO’, ‘BIN_AREA’, ‘BIN_FAREA’, ‘BIN_MFLUX’, ‘BIN_MFLUX_IVAR’, ‘BIN_MFLUX_MASK’, and ‘BIN_SNR’ map extensions.
-
emission_line_model_maps
(prihdr, emission_line_model)[source]¶ Construct the ‘EMLINE_GFLUX’, ‘EMLINE_GFLUX_IVAR’, ‘EMLINE_GFLUX_MASK’, ‘EMLINE_GEW’, ‘EMLINE_GEW_CNT’, ‘EMLINE_GEW_IVAR’, ‘EMLINE_GEW_MASK’, ‘EMLINE_GVEL’, ‘EMLINE_GVEL_IVAR’, ‘EMLINE_GVEL_MASK’, ‘EMLINE_GSIGMA’, ‘EMLINE_GSIGMA_IVAR’, ‘EMLINE_GSIGMA_MASK’, ‘EMLINE_INSTSIGMA’, ‘EMLINE_TPLSIGMA’, ‘EMLINE_GA’, ‘EMLINE_GANR’, ‘EMLINE_FOM’, ‘EMLINE_LFOM’ map extensions.
-
emission_line_moment_maps
(prihdr, emission_line_moments)[source]¶ Construct the ‘EMLINE_SFLUX’, ‘EMLINE_SFLUX_IVAR’, ‘EMLINE_SFLUX_MASK’, ‘EMLINE_SEW’, ‘EMLINE_SEW_IVAR’, and ‘EMLINE_SEW_MASK’ maps extensions.
-
reduction_assessment_maps
(prihdr, rdxqa)[source]¶ Constructs the ‘SPX_SKYCOO’, ‘SPX_ELLCOO’, ‘SPX_MFLUX’, ‘SPX_MFLUX_IVAR’, and ‘SPX_SNR’ map extensions.
Todo
Add the spaxel correlation data.
-