Spectrum1D API

class aspired.spectral_reduction.SpectrumOneD(spec_id: Union[<sphinx.ext.autodoc.importer._MockObject object at 0x7f7990743910>, list, int] = None, verbose: bool = True, logger_name: str = 'SpectrumOneD', log_level: str = 'INFO', log_file_folder: str = 'default', log_file_name: str = None)[source]

Base class of a 1D spectral object to hold the information of each extracted spectrum and the raw headers if was provided during the data reduction. The FITS or CSV file output are all done here.

Initialise the object with a logger.

Parameters:
  • spec_id (int (Default: None)) – The ID corresponding to the spectrum_oned object. Note that this ID is unique in each reduction only.
  • verbose (boolean (Default: True)) – Set to False to suppress all verbose warnings, except for critical failure.
  • logger_name (str (Default: SpectrumOneD)) – This will set the name of the logger, if the name is used already, it will reference to the existing logger. This will be the first part of the default log file name unless log_file_name is provided.
  • log_level (str (Default: 'INFO')) – Four levels of logging are available, in decreasing order of information and increasing order of severity: (1) DEBUG, (2) INFO, (3) WARNING, (4) ERROR and (5) CRITICAL. WARNING means that there is suboptimal operations in some parts of that step. ERROR means that the requested operation cannot be performed, but the software can handle it by either using the default setting or skipping the operation. CRITICAL means that the requested operation cannot be resolved without human interaction, this is most usually coming from missing data.
  • log_file_folder (None or str (Default: "default")) – Folder in which the file is save, set to default to save to the current path.
  • log_file_name (None or str (Default: None)) – File name of the log, set to None to self.logger.warning to screen only.
add_airmass(airmass: float)[source]

Add the airmass when the observation was carried out. This value can be different from the one in the header as this can be overwritten by an user input, while the header value is raw.

Parameters:airmass (float) – The effective airmass during the exposure.
add_aperture(widthdn: int, widthup: int, sepdn: int, sepup: int, skywidthdn: int, skywidthup: int)[source]

The size of the aperture in which the spectrum is extracted. This is merely the limit where extraction is performed, it does not hold the information of the weighting:

            .................................   ^
Sky         .................................   |   skywidthup
            .................................   v
            .................................     ^
            .................................     | sepup
            .................................     v
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   ^
            ---------------------------------   |   widthup
Spectrum    =================================   v ^
            ---------------------------------     | widthdn
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~     v
            .................................   ^
            .................................   |   sepdn
            .................................   v
            .................................     ^
Sky         .................................     | skywidthdn
            .................................     v
Parameters:
  • widthdn (real positive number) – The aperture size on the bottom side of the spectrum.
  • widthup (real positive number) – The aperture size on the top side of the spectrum.
  • sepdn (real positive number) – The gap between the spectrum and the sky region on the bottom side of the spectrum.
  • sepup (real positive number) – The gap between the spectrum and the sky region on the top side of the spectrum.
  • skywidthdn (real positive number) – The sky region on the bottom side of the spectrum.
  • skywidthup (real positive number) – The sky region on the top side of the spectrum.
add_arc_header(header: Union[<sphinx.ext.autodoc.importer._MockObject object at 0x7f7990f2d1f0>, list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990743a90>])[source]

Add a header for the arc that it is wavelength calibrated against. Typically put the header of the raw 2D spectral image of the arc here. Some automated operations rely on reading from the header.

Parameters:header (astropy.io.fits.Header object) –
add_arc_spec(arc_spec: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767070>])[source]

Add the extracted 1D spectrum of the arc.

Parameters:arc_spec (1-d array) – The photoelectron count of the spectrum of the arc lamp.
add_atlas_wavelength_range(min_atlas_wavelength: float, max_atlas_wavelength: float)[source]

Add the allowed range of wavelength calibration.

Parameters:
  • min_atlas_wavelength (float) – The minimum wavelength of the atlas.
  • max_atlas_wavelength (float) – The maximum wavelength of the atlas.
add_atm_ext(atm_ext: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748430>])[source]

Add the atmospheric extinction correction factor in the native wavelengths.

Parameters:atm_ext (list or numpy.ndarray) – The atmospheric absorption corrected flux at each extracted column of pixels.
add_atm_ext_resampled(atm_ext_resampled: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748b80>])[source]

Add the atmospheric extinction correction factor in the resampled wavelengths.

Parameters:atm_ext_resampled (list or numpy.ndarray) – The atmospheric absorption corrected flux at the resampled wavelengths.
add_calibrator(calibrator: <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990f2db20>)[source]

Add a RASCAL Calibrator object.

Parameters:calibrator (rascal.Calibrator()) – A RASCAL Calibrator object.
add_calibrator_properties(num_pix: int, effective_pixel: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f79907673d0>], plotting_library: str)[source]

Add the properties of the RASCAL Calibrator.

Parameters:
  • num_pix (int) – The number of pixels in the dispersion direction
  • effective_pixel (list or numpy array) – The pixel position of the trace in the dispersion direction. This should be provided if you wish to override the default range(num_pix), for example, in the case of accounting for chip gaps (10 pixels) in a 3-CCD setting, you should provide [0,1,2,…90, 100,101,…190, 200,201,…290]
  • plotting_library (string) – Choose between matplotlib and plotly.
add_count(count: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f79907439d0>], count_err: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990743d60>] = None, count_sky: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990743df0>] = None)[source]

Add the photoelectron counts and the associated optional uncertainty and sky counts.

Parameters:
  • count (1-d array) – The summed count at each column along the trace.
  • count_err (1-d array) – the uncertainties of the count values
  • count_sky (1-d array) – The integrated sky values along each column, suitable for subtracting from the output of ap_extract
add_count_continuum(count_continuum: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748040>])[source]

Add the continuum count value (should be the same size as count).

Parameters:count_continuum (list or 1-d array) – The photoelectron count of the continuum.
add_count_resampled(count_resampled: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767c10>], count_err_resampled: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767ca0>], count_sky_resampled: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767d30>])[source]

Add the photoelectron counts of the resampled spectrum which has an evenly distributed wavelength spacing.

Parameters:
  • count_resampled (list or 1d-array) – The resampled photoelectron count.
  • count_err_resampled (list or 1d-array) – The uncertainty of the resampled photoelectron count.
  • count_sky_resampled (list or 1d-array) – The background sky level of the resampled photoelectron count.
add_count_resampled_continuum(count_resampled_continuum: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748100>])[source]

Add the continuum count_resampled value (should be the same size as count_resampled).

Parameters:count_resampled_continuum (list or 1-d array) – The photoelectron count of the continuum at the resampled wavelength.
add_effective_pixel(effective_pixel: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767100>])[source]

Add the pixel list, which contain the effective pixel values that has accounted for chip gaps and non-integer pixel value.

Parameters:effective_pixel (1-d array) – The effective position of the pixel.
add_exptime(exptime: float)[source]

Add the exposure time of the spectral image. This value can be different from the one in the header as this can be overwritten by an user input, while the header value is raw.

Parameters:exptime (float) – The exposure time of the input image.
add_fit_coeff(fit_coeff: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767340>])[source]

Add the polynomial co-efficients of the pixel-to-wavelength function. Note that this overwrites the wavelength calibrated fit coefficients.

Parameters:fit_coeff (list or 1-d array) – The set of coefficients of the pixel-wavelength function.
add_fit_output_final(fit_coeff: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767460>], matched_peaks: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f79907674f0>], matched_atlas: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767580>], rms: float, residual: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767610>], peak_utilisation: float, atlas_utilisation: float)[source]

Add the final accepted polynomial solution.

Parameters:
  • fit_coeff (list) – Set the baseline of the least square fit. If no fits outform this set of polynomial coefficients, this will be used as the best fit.
  • matched_peaks (list) – List of matched peaks
  • matched_atlas (list) – List of matched atlas lines
  • rms (float) – The root-mean-squared of the fit
  • residual (list) – The residual of each fitted peak
  • peak_utilisation (float) – The fraction of the input peaks used in the fit
  • atlas_utilisation (float) – The fraction of the input atlas used in the fit
add_fit_output_rascal(fit_coeff: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f79907676a0>], matched_peaks: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767730>], matched_atlas: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f79907677c0>], rms: float, residual: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767850>], peak_utilisation: float, atlas_utilisation: float)[source]

Add the RASCAL polynomial solution.

Parameters:
  • fit_coeff (list) – Set the baseline of the least square fit. If no fits outform this set of polynomial coefficients, this will be used as the best fit.
  • matched_peaks (list) – List of matched peaks
  • matched_atlas (list) – List of matched atlas lines
  • rms (float) – The root-mean-squared of the fit
  • residual (list) – The residual of each fitted peak
  • peak_utilisation (float) – The fraction of the input peaks used in the fit
  • atlas_utilisation (float) – The fraction of the input atlas used in the fit
add_fit_output_refine(fit_coeff: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f79907678e0>], matched_peaks: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767970>], matched_atlas: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767a00>], rms: float, residual: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f79931b17c0>], peak_utilisation: float, atlas_utilisation: float)[source]

Add the refined RASCAL polynomial solution.

Parameters:
  • fit_coeff (list) – Set the baseline of the least square fit. If no fits outform this set of polynomial coefficients, this will be used as the best fit.
  • matched_peaks (list) – List of matched peaks
  • matched_atlas (list) – List of matched atlas lines
  • rms (float) – The root-mean-squared of the fit
  • residual (list) – The residual of each fitted peak
  • peak_utilisation (float) – The fraction of the input peaks used in the fit
  • atlas_utilisation (float) – The fraction of the input atlas used in the fit
add_fit_type(fit_type: str)[source]

Add the kind of polynomial used for fitting the pixel-to-wavelength function.

Parameters:fit_type (str) – The type of polynomial for fitting the pixel-wavelength function.
add_flux(flux: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f79907482b0>], flux_err: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748340>], flux_sky: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f79907483d0>])[source]

Add the flux and the associated uncertainty and sky background in the raw pixel sampling.

Parameters:
  • flux (list or numpy.ndarray) – The flux at each extracted column of pixels.
  • flux_err (list or numpy.ndarray) – The uncertainty in flux at each extracted column of pixels.
  • flux_sky (list or numpy.ndarray) – The flux of the background sky at each extracted column of pixels.
add_flux_atm_ext_corrected(flux: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f79907484c0>], flux_err: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748550>], flux_sky: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f79907485e0>])[source]

Add the atmospheric extinction corrected flux and the associated uncertainty and sky background in the raw pixel sampling.

Parameters:
  • flux (list or numpy.ndarray) – The atmospheric absorption corrected flux at each extracted column of pixels.
  • flux_err (list or numpy.ndarray) – The atmospheric absorption corrected uncertainty in flux at each extracted column of pixels.
  • flux_sky (list or numpy.ndarray) – The atmospheric absorption corrected flux of the background sky at each extracted column of pixels.
add_flux_atm_ext_telluric_corrected(flux: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748850>], flux_err: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f79907488e0>], flux_sky: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748970>])[source]

Add the atmospheric extinction and telluric corrected flux and the associated uncertainty and sky background in the raw pixel sampling.

Parameters:
  • flux (list or numpy.ndarray) – The atmospheric absorption corrected flux at each extracted column of pixels.
  • flux_err (list or numpy.ndarray) – The atmospheric absorption corrected uncertainty in flux at each extracted column of pixels.
  • flux_sky (list or numpy.ndarray) – The atmospheric absorption corrected flux of the background sky at each extracted column of pixels.
add_flux_continuum(flux_continuum: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748190>])[source]

Add the continuum flux value (should be the same size as flux).

Parameters:flux_continuum (list or 1-d array) – The flux of the continuum.
add_flux_resampled(flux_resampled: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748760>], flux_err_resampled: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748a60>], flux_sky_resampled: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748af0>])[source]

Add the flux and the associated uncertainty and sky background of the resampled spectrum.

Parameters:
  • flux (list or numpy.ndarray) – The flux at the resampled wavelenth.
  • flux_err (list or numpy.ndarray) – The uncertainty in flux at the resampled wavelenth.
  • flux_sky (list or numpy.ndarray) – The flux of the background sky at the resampled wavelenth.
add_flux_resampled_atm_ext_corrected(flux: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748c10>], flux_err: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748ca0>], flux_sky: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748d30>])[source]

Add the flux and the associated uncertainty and sky background of the resampled spectrumg.

Parameters:
  • flux (list or numpy.ndarray) – The atmospheric absorption corrected flux at each extracted column of pixels.
  • flux_err (list or numpy.ndarray) – The atmospheric absorption corrected uncertainty in flux at each extracted column of pixels.
  • flux_sky (list or numpy.ndarray) – The atmospheric absorption corrected flux of the background sky at each extracted column of pixels.
add_flux_resampled_atm_ext_telluric_corrected(flux: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f799074f040>], flux_err: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f799074f0d0>], flux_sky: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f79915fd640>])[source]

Add the flux and the associated uncertainty and sky background of the resampled spectrum.

Parameters:
  • flux (list or numpy.ndarray) – The atmospheric absorption and telluric corrected flux at each extracted column of pixels.
  • flux_err (list or numpy.ndarray) – The atmospheric absorption and telluric corrected uncertainty in flux at each extracted column of pixels.
  • flux_sky (list or numpy.ndarray) – The atmospheric absorption and telluric corrected flux of the background sky at each extracted column of pixels.
add_flux_resampled_telluric_corrected(flux: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748e50>], flux_err: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748f10>], flux_sky: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748f70>])[source]

Add the flux and the associated uncertainty and sky background of the resampled spectrum.

Parameters:
  • flux (list or numpy.ndarray) – The telluric corrected flux at each extracted column of pixels.
  • flux_err (list or numpy.ndarray) – The telluric corrected uncertainty in flux at each extracted column of pixels.
  • flux_sky (list or numpy.ndarray) – The telluric corrected flux of the background sky at each extracted column of pixels.
add_flux_telluric_corrected(flux: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748670>], flux_err: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748700>], flux_sky: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f79907487c0>])[source]

Add the telluric flux and the associated uncertainty and sky background in the raw pixel sampling.

Parameters:
  • flux (list or numpy.ndarray) – The atmospheric absorption corrected flux at each extracted column of pixels.
  • flux_err (list or numpy.ndarray) – The atmospheric absorption corrected uncertainty in flux at each extracted column of pixels.
  • flux_sky (list or numpy.ndarray) – The atmospheric absorption corrected flux of the background sky at each extracted column of pixels.
add_gain(gain: float)[source]

Add the gain value of the spectral image. This value can be different from the one in the header as this can be overwritten by an user input, while the header value is raw.

Parameters:gain (float) – The gain value of the detector.
add_hough_properties(num_slopes: int, xbins: int, ybins: int, min_wavelength: float, max_wavelength: float, range_tolerance: float, linearity_tolerance: float)[source]

Add the hough transform configuration of the RASCAL Calibrator.

Parameters:
  • num_slopes (int) – Number of slopes to consider during Hough transform
  • xbins (int) – Number of bins for Hough accumulation
  • ybins (int) – Number of bins for Hough accumulation
  • min_wavelength (float) – Minimum wavelength of the spectrum.
  • max_wavelength (float) – Maximum wavelength of the spectrum.
  • range_tolerance (float) – Estimation of the error on the provided spectral range e.g. 3000-5000 with tolerance 500 will search for solutions that may satisfy 2500-5500
  • linearity_tolerance (float) – A toleranceold (Ansgtroms) which defines some padding around the range tolerance to allow for non-linearity. This should be the maximum expected excursion from linearity.
add_line_spread_profile(line_spread_profile: <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990743eb0>)[source]

Add the empirical line spread profile as measured.

Parameters:profile_func (a fitted astropy.modeling.Fittable1DModel) – The fitted trace profile.
add_line_spread_profile_upsampled(line_spread_profile_upsampled: <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990743f40>)[source]

Add the empirical line spread profile as measured from the upsampled image.

Parameters:profile_func (a fitted astropy.modeling.Fittable1DModel) – The fitted trace profile.
add_literature_standard(wave_literature: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767ee0>], flux_literature: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767f70>])[source]

Add the literature wavelength and flux values of the standard star used for calibration.

Parameters:
  • wave_literature (list or 1-d array) – The wavelength values of the literature standard used.
  • flux_literature (list or 1-d array) – The flux values of the literature standard used.
add_min_atlas_distance(min_atlas_distance: float)[source]

Add the minimum allowed line distance (only consider lines that passed the minimum intensity threshold) that were used for wavelength calibration.

Parameters:min_atlas_distance (float) – Minimum wavelength separation between neighbouring lines.
add_min_atlas_intensity(min_atlas_intensity: float)[source]

Add the minimum allowed line intensity (theoretical NIST value) that were used for wavelength calibration.

Parameters:min_atlas_intensity (float) – The minimum line strength used to get the atlas.
add_peaks(peaks: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767190>])[source]

Add the pixel values (int) where arc lines are located.

Parameters:peaks (1-d array) – The pixel value of the identified peaks.
add_peaks_refined(peaks_refined: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767220>])[source]

Add the refined pixel values (float) where arc lines are located.

Parameters:peaks (1-d array) – The pixel value of the refined peak positions.
add_peaks_wave(peaks_wave: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f79907672b0>])[source]

Add the wavelength (Angstrom) of the arc lines.

Parameters:peaks (1-d array) – The wavelength value of the peaks.
add_pixel_mapping_itp(pixel_mapping_itp: Callable)[source]

Add the interpolated callable function that convert raw pixel values into effective pixel values.

Parameters:pixel_mapping_itp (callable function) – The mapping function for raw-effective pixel position.
add_profile(profile: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990743970>])[source]

Add the extraction profile (generated from the profile_func).

Parameters:profile (1-d array) – The weight function of the extraction profile.
add_profile_func(profile_func: Callable)[source]

Add the fitted trace profile.

Parameters:profile_func (a fitted astropy.modeling.Fittable1DModel) – The fitted trace profile.
add_ransac_properties(sample_size: int, top_n_candidate: int, linear: bool, filter_close: bool, ransac_tolerance: float, candidate_weighted: bool, hough_weight: float, minimum_matches: int, minimum_peak_utilisation: float, minimum_fit_error: float)[source]

Add the RANSAC properties of the RASCAL Calibrator.

Parameters:
  • sample_size (int) – Number of pixel-wavelength hough pairs to be used for each arc line being picked.
  • top_n_candidate (int) – Top ranked lines to be fitted.
  • linear (bool) – True to use the hough transformed gradient, otherwise, use the known polynomial.
  • filter_close (bool) – Remove the pairs that are out of bounds in the hough space.
  • ransac_tolerance (float) – The distance criteria (Angstroms) to be considered an inlier to a fit. This should be close to the size of the expected residuals on the final fit (e.g. 1A is typical)
  • candidate_weighted (bool) – Set to True to down-weight pairs that are far from the fit.
  • hough_weight (float or None) – Set to use the hough space to weigh the fit. The theoretical optimal weighting is unclear. The larger the value, the heavily it relies on the overdensity in the hough space for a good fit.
  • minimum_matches (int) – Minimum number of matches to accept the solution.
  • minimum_peak_utilisation (float) – Minimum percentage of peaks used in the solution.
  • minimum_fit_error (float) – Minimum fitting error. Probably only useful in simulated noiseless case.
add_readnoise(readnoise: float)[source]

Add the readnoise value of the spectral image. This value can be different from the one in the header as this can be overwritten by an user input, while the header value is raw.

Parameters:readnoise (float) – The read noise value of the detector.
add_seeing(seeing: float)[source]

Add the seeing when the observation was carried out. This value can be different from the one in the header as this can be overwritten by an user input, while the header value is raw.

Parameters:seeing (float) – The effective seeing of the observation.
add_sensitivity(sensitivity: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767dc0>])[source]

Add the sensitivity values for each pixel (the list from dividing the literature standard by the photoelectron count).

Parameters:sensitivity (list or 1-d array) – The sensitivity at the effective pixel.
add_sensitivity_func(sensitivity_func: Callable)[source]

Add the callable function of the sensitivity curve.

Parameters:sensitivity_func (callable function) – The sensitivity curve as a function of wavelength.
add_sensitivity_resampled(sensitivity_resampled: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767e50>])[source]

Add the sensitivity after the spectrum is resampled.

Parameters:sensitivity (list or 1-d array) – The sensitivity in the reasmpled space.
add_smoothing(smooth: bool, **kwargs)[source]

Add the SG smoothing parameters for computing the sensitivity curve.

Parameters:
  • smooth (bool) – Indicate if smoothing was applied.
  • kwargs (dict) – Other keyword arguments passed to the lowess smoothing function
add_spectrum_header(header: Union[<sphinx.ext.autodoc.importer._MockObject object at 0x7f7990f2d1f0>, list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990743640>])[source]

Add a header for the spectrum. Typically put the header of the raw 2D spectral image of the science target(s) here. Some automated operations rely on reading from the header.

Parameters:header (astropy.io.fits.Header object) –
add_standard_header(header: Union[<sphinx.ext.autodoc.importer._MockObject object at 0x7f7990f2d1f0>, list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990743a00>])[source]

Add a header for the standard star that it is flux calibrated against. The, if opted for, automatic atmospheric extinction correction is applied based on the airmass found in this header. Typically put the header of the raw 2D spectral image of the standard star here. Some automated operations rely on reading from the header.

Parameters:header (astropy.io.fits.Header object) –
add_standard_star(library: str, target: str)[source]

Add the name of the standard star and its source.

Parameters:
  • library (str) – The name of the colelction of standard stars.
  • target (str) – The name of the standard star.
add_telluric_factor(telluric_factor: float)[source]

Add the Telluric factor.

Parameters:telluric_factor (float) – The multiplier to the telluric profile that minimises the sum of the deviation of corrected spectrum from the continuum spectrum.
add_telluric_func(telluric_func: Callable)[source]

Add the Telluric interpolated function.

Parameters:telluric (Callable function) – A callable function to interpolate the telluric features [0, 1]
add_telluric_nudge_factor(telluric_nudge_factor: float)[source]

Add the Telluric nudge factor.

Parameters:telluric_nudge_factor (float) – The multiplier to the telluric profile that minimises the sum of the deviation of corrected spectrum from the continuum spectrum.
add_telluric_profile(telluric_profile: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748220>])[source]

Add the Telluric profile - relative intensity at each pixel.

Parameters:telluric_profile (list or numpy.ndarray) – The relative intensity of the telluric absorption strength [0, 1]
add_telluric_profile_resampled(telluric_profile_resampled: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990748dc0>])[source]

Add the telluric absorption profile in the resampled wavelengths.

Parameters:telluric_profile_resampled (list or numpy.ndarray) – The atmospheric absorption corrected flux at each extracted column of pixels.
add_trace(trace: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990743b50>], trace_sigma: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990743be0>], effective_pixel: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990743c70>] = None)[source]

Add the trace of the spectrum.

Parameters:
  • trace (list or numpy.ndarray (N)) – The spatial pixel value (can be sub-pixel) of the trace at each spectral position.
  • trace_sigma (list or numpy.ndarray (N)) – Standard deviation of the Gaussian profile of a trace
  • effective_pixel (list or numpy array (Default: None)) – The pixel position of the trace in the dispersion direction. This should be provided if you wish to override the default range (num_pix), for example, in the case of accounting for chip gaps (10 pixels) in a 3-CCD setting, you should provide [0,1,2,…90, 100,101,…190, 200,201,…290]
add_variances(var: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990743e80>])[source]

Add the weight map of the extraction.

Parameters:var (2-d array) – The weigh map of the input image for extraction.
add_wavelength(wave: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767af0>])[source]

Add the wavelength of each effective pixel.

Parameters:wave (list or 1d-array) – The wavelength values at each effective pixel.
add_wavelength_resampled(wave_resampled: Union[list, <sphinx.ext.autodoc.importer._MockObject object at 0x7f7990767b80>])[source]

Add the wavelength of the resampled spectrum which has an evenly distributed wavelength spacing.

Parameters:wave (list or 1d-array) – The resampled wavelength values.
add_weather_condition(pressure: float, temperature: float, relative_humidity: float)[source]

Add the pressure, temperature and relative humidity when the spectral image was taken. These value can be different from the ones in the header as this can be overwritten by an user input, while the header value is raw.

Parameters:
  • pressure (float) – The air pressure during the observation (in pascal).
  • temperature (float) – The temperature during the observation (in Kelvin).
  • relative_hhumidity (float) – The relative humidity during the observation (between 0 and 1).
create_arc_lines_fits()[source]

Create an ImageHDU for the spectrum of the arc lamp.

create_arc_spec_fits()[source]

Create an ImageHDU for the spectrum of the arc lamp.

create_atm_ext_fits()[source]

Create an ImageHDU for the atmospheric extinction corrected flux calibrated spectrum at the resampled wavelength.

create_atm_ext_resampled_fits()[source]

Create an ImageHDU for the atmospheric extinction corrected flux calibrated spectrum at the resampled wavelength.

create_count_fits()[source]

Create an ImageHDU for the extracted spectrum in photoelectron counts.

create_count_resampled_fits()[source]

Create an ImageHDU for the extracted spectrum in photoelectron count at the resampled wavelengths.

create_fits(output: str = '*', recreate: bool = True, empty_primary_hdu: bool = True, return_hdu_list: bool = False)[source]

Create a HDU list, with a choice of any combination of the data, see below the ‘output’ parameters for details.

Parameters:
  • output (String) –

    Type of data to be saved, the order is fixed (in the order of the following description), but the options are flexible. The input strings are delimited by “+”:

    trace: 2 HDUs
    Trace, and trace width (pixel)
    count: 3 HDUs
    Count, uncertainty, and sky (pixel)
    weight_map: 1 HDU
    Weight (pixel)
    arc_spec: 1 HDU
    1D arc spectrum
    arc_lines: 2 HDUs
    arc line position (pixel), and arc line effective position (pixel)
    wavecal_coefficients: 1 HDU
    Polynomial coefficients for wavelength calibration
    wavelength: 1 HDU
    Wavelength of each pixel
    wavelength_resampled: 1 HDU
    Wavelength of each resampled position
    count_resampled: 3 HDUs
    Resampled Count, uncertainty, and sky (wavelength)
    sensitivity: 1 HDU
    Sensitivity (pixel)
    flux: 3 HDUs
    Flux, uncertainty, and sky (pixel)
    atm_ext: 1 HDU
    Atmospheric extinction correction factor
    flux_atm_ext_corrected: 3 HDUs
    Atmospheric extinction corrected flux, uncertainty, and sky (pixel)
    telluric_profile: 1 HDU
    Telluric absorption profile
    flux_telluric_corrected: 3 HDUs
    Telluric corrected flux, uncertainty, and sky (pixel)
    flux_atm_ext_telluric_corrected: 3 HDUs
    Atmospheric extinction and telluric corrected flux, uncertainty, and sky (pixel)
    sensitivity_resampled: 1 HDU
    Sensitivity (wavelength)
    flux_resampled: 4 HDUs
    Flux, uncertainty, and sky (wavelength)
    atm_ext_resampled: 1 HDU
    Atmospheric extinction correction factor
    flux_resampled_atm_ext_corrected: 3 HDUs
    Atmospheric extinction corrected flux, uncertainty, and sky (wavelength)
    telluric_profile_resampled: 1 HDU
    Telluric absorption profile
    flux_resampled_telluic_corrected: 3 HDUs
    Telluric corrected flux, uncertainty, and sky (wavelength)
    flux_resampled_atm_ext_telluric_corrected: 3 HDUs
    Atmospheric extinction and telluric corrected flux, uncertainty, and sky (wavelength)
  • recreate (boolean (Default: False)) – Set to True to overwrite the FITS data and header.
  • empty_primary_hdu (boolean (Default: True)) – Set to True to leave the Primary HDU blank.
  • return_hdu_list (boolean (Default: False)) – Set to True to return the HDU List.
create_flux_atm_ext_corrected_fits()[source]

Create an ImageHDU for the atmospheric extinction corrected flux calibrated spectrum at each native pixel.

create_flux_atm_ext_telluric_corrected_fits()[source]

Create an ImageHDU for the atmospheric extinction corrected flux calibrated spectrum at each native pixel.

create_flux_fits()[source]

Create an ImageHDU for the flux calibrated spectrum at each native pixel.

create_flux_resampled_atm_ext_corrected_fits()[source]

Create an ImageHDU for the atmospheric extinction corrected flux calibrated spectrum at the resampled wavelength.

create_flux_resampled_atm_ext_telluric_corrected_fits()[source]

Create an ImageHDU for the atmospheric extinction corrected flux calibrated spectrum at the resampled wavelength.

create_flux_resampled_fits()[source]

Create an ImageHDU for the flux calibrated spectrum at the resampled wavelength.

create_flux_resampled_telluric_corrected_fits()[source]

Create an ImageHDU for the atmospheric extinction corrected flux calibrated spectrum at the resampled wavelength.

create_flux_telluric_corrected_fits()[source]

Create an ImageHDU for the telluric corrected flux calibrated spectrum at each native pixel.

create_sensitivity_fits()[source]

Create an ImageHDU for the sensitivity at each of the native pixel.

create_sensitivity_resampled_fits()[source]

Create an ImageHDU for the sensitivity at the resampled wavelength.

create_telluric_profile_fits()[source]

Create an ImageHDU for the Telluric absorption profile at resampled wavelength.

create_telluric_profile_resampled_fits()[source]

Create an ImageHDU for the Telluric absorption profile at resampled wavelength.

create_trace_fits()[source]

Create an ImageHDU for the trace.

create_wavecal_fits()[source]

Create an ImageHDU for the polynomial coeffcients of the pixel-wavelength mapping function.

create_wavelength_fits()[source]

Create an ImageHDU for the wavelength at each of the native pixel.

create_wavelength_resampled_fits()[source]

Create an ImageHDU for the wavelength at each resampled position.

create_weight_map_fits()[source]

Create an ImageHDU for the extraction profile weight function.

merge(spectrum_oned, overwrite: bool = False)[source]

This function copies all the info from the supplied spectrum_oned to this one, including the spec_id.

Parameters:
  • spectrum_oned (SpectrumOneD object) – The source SpectrumOneD to be deep copied over.
  • overwrite (boolean (Default: False)) – Set to True to overwrite all the data in this SpectrumOneD.
modify_arc_lines_header(idx: int, method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 1 Peaks (pixel) Peaks (sub-pixel)
modify_arc_spec_header(idx: int, method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 Arc spectrum
modify_atm_ext_header(method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 Atmospheric Extinction
modify_atm_ext_resampled_header(method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 Atmospheric Extinction
modify_count_header(idx: int, method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 1 2 Photoelectron count Photoelectron count uncertainty Photoelectron count (sky)
modify_count_resampled_header(idx: int, method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 1 2 Photoelectron count Photoelectron count uncertainty Photoelectron count (sky)
modify_flux_atm_ext_corrected_header(idx: int, method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 1 2 Flux Flux uncertainty Flux (sky)
modify_flux_atm_ext_telluric_corrected_header(idx: int, method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 1 2 Flux Flux uncertainty Flux (sky)
modify_flux_header(idx: int, method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 1 2 Flux Flux uncertainty Flux (sky)
modify_flux_resampled_atm_ext_corrected_header(idx: int, method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 1 2 Flux Flux uncertainty Flux (sky)
modify_flux_resampled_atm_ext_telluric_corrected_header(idx: int, method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 1 2 Flux Flux uncertainty Flux (sky)
modify_flux_resampled_header(idx: int, method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 1 2 Flux Flux Uncertainty Flux Sky
modify_flux_resampled_telluric_corrected_header(idx: int, method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 1 2 Flux Flux uncertainty Flux (sky)
modify_flux_telluric_corrected_header(idx: int, method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 1 2 Flux Flux uncertainty Flux (sky)
modify_sensitivity_header(method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 Sensitivity
modify_sensitivity_resampled_header(method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 Sensitivity_resampled
modify_telluric_profile_header(method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 Telluric Absorption Profile
modify_telluric_profile_resampled_header(method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 Telluric Absorption Profile
modify_trace_header(idx: int, method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 1 Trace (pixel) Trace width (pixel)
modify_wavecal_header(method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None wavelength fits only has one ImageHDU so the idx is always 0

HDU Data
0 Best fit coefficients
modify_wavelength_header(method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None wavelength fits only has one ImageHDU so the idx is always 0

HDU Data
0 Wavelength value at each extracted pixel
modify_wavelength_resampled_header(method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None wavelength fits only has one ImageHDU so the idx is always 0

HDU Data
0 Wavelength value at each resampled position
modify_weight_map_header(method: str, *args)[source]

for method ‘set’, it takes keyword, value=None, comment=None, before=None, after=None

HDU Data
0 Variance
remove_airmass()[source]

Remove the airmass value.

remove_arc_header()[source]

Remove the arc_header.

remove_arc_spec()[source]

Remove the 1D spectrum of the arc.

remove_arc_spec_fits()[source]

Remove the arc_spec FITS HDUList.

remove_atlas_wavelength_range()[source]

Remove the atlas wavelength range.

remove_atm_ext()[source]

Remove the atmospheric extinction correction factor in the native wavelengthss.

remove_atm_ext_fits()[source]

Remove the atm_ext FITS HDUList.

remove_atm_ext_resampled()[source]

Remove the atmospheric extinction correction factor in the resampled wavelengths.

remove_atm_ext_resampled_fits()[source]

Remove the atm_ext_resampled FITS HDUList.

remove_calibrator()[source]

Remove the Calibrator.

remove_calibrator_properties()[source]

Remove the properties of the RASCAL Calibrator as recorded in ASPIRED. This does NOT remove the calibrator properites INSIDE the calibrator.

remove_count()[source]

Remove the count, count_err and count_sky.

remove_count_continuum()[source]

Remove the continuum count values.

remove_count_fits()[source]

Remove the count FITS HDUList.

remove_count_resampled()[source]

Remove the photoelectron counts of the resampled spectrum.

remove_count_resampled_continuum()[source]

Remove the continuum count_resampled values.

remove_count_resampled_fits()[source]

Remove the count_resampled FITS HDUList.

remove_effective_pixel()[source]

Remove the pixel list.

remove_exptime()[source]

Remove the exptime value.

remove_fit_coeff()[source]

Remove the polynomial co-efficients of the pixel-to-wavelength function.

remove_fit_output_final()[source]

Remove the accepted polynomial solultion.

remove_fit_output_rascal()[source]

Remove the RASCAL polynomial solution.

remove_fit_output_refine()[source]

Remove the refined RASCAL polynomial solution.

remove_fit_type()[source]

Remove the chosen type of polynomial.

remove_flux()[source]

Remove the flux, uncertainty of flux, and background sky flux.

remove_flux_atm_ext_corrected()[source]

Remove the atmospheric absorption corrected flux, uncertainty of flux, and background sky flux in the raw pixel sampling.

remove_flux_atm_ext_corrected_fits()[source]

Remove the flux_resampled_atm_ext_corrected FITS HDUList.

remove_flux_atm_ext_telluric_corrected()[source]

Remove the atmospheric absorption and telluric corrected flux, uncertainty of flux, and background sky flux in the raw pixel sampling.

remove_flux_atm_ext_telluric_corrected_fits()[source]

Remove the flux_resampled_atm_ext_telluric_corrected FITS HDUList.

remove_flux_continuum()[source]

Remove the continuum flux values.

remove_flux_fits()[source]

Remove the flux FITS HDUList.

remove_flux_resampled()[source]

Remove the flux, uncertainty of flux, and background sky flux of the resampled spectrum.

remove_flux_resampled_atm_ext_corrected()[source]

Remove the atmospheric absorption corrected flux, uncertainty of flux, and background sky flux of the resampled spectrum.

remove_flux_resampled_atm_ext_corrected_fits()[source]

Remove the flux_resampled_atm_ext_corrected FITS HDUList.

remove_flux_resampled_atm_ext_telluric_corrected()[source]

Remove the atmospheric absorption and telluric corrected flux, uncertainty of flux, and background sky flux of the resampled spectrum.

remove_flux_resampled_atm_ext_telluric_corrected_fits()[source]

Remove the flux_resampled_atm_ext_telluric_corrected FITS HDUList.

remove_flux_resampled_fits()[source]

Remove the flux_resampled FITS HDUList.

remove_flux_resampled_telluric_corrected()[source]

Remove the atmospheric absorption corrected flux, uncertainty of flux, and background sky flux of the resampled spectrum.

remove_flux_resampled_telluric_corrected_fits()[source]

Remove the flux_resampled_telluric_corrected FITS HDUList.

remove_flux_telluric_corrected()[source]

Remove the telluric corrected flux, uncertainty of flux, and background sky flux in the raw pixel sampling.

remove_flux_telluric_corrected_fits()[source]

Remove the flux_resampled_telluric_corrected FITS HDUList.

remove_gain()[source]

Remove the gain value.

remove_hough_properties()[source]

Remove the hough transform configuration of the RASCAL Calibrator. This does NOT remove the hough transform configuration INSIDE the calibrator.

remove_line_spread_profile()[source]

Remove the fitted trace profile.

remove_line_spread_profile_upsampled()[source]

Remove the fitted trace profile.

remove_literature_standard()[source]

Remove the literature wavelength and flux values of the standard star used for calibration

remove_min_atlas_distance()[source]

Remove the minimum distance between lines to be accepted.

remove_min_atlas_intensity()[source]

Remove the minimum atlas intensity.

remove_peaks()[source]

Remove the list of peaks.

remove_peaks_refined()[source]

Remove the list of refined peaks.

remove_peaks_wave()[source]

Remove the list of wavelengths of the arc lines.

remove_pixel_mapping_itp()[source]

Remove the interpolation function that maps the pixel values to the effective pixel value.

remove_profile()[source]

Remove the extraction profile.

remove_profile_func()[source]

Remove the fitted trace profile.

remove_ransac_properties()[source]

Remove the RANSAC properties of the RASCAL Calibrator.

remove_readnoise()[source]

Remove the readnoise value.

remove_seeing()[source]

Remove the seeing value.

remove_sensitivity()[source]

Remove the sensitivity values.

remove_sensitivity_func()[source]

Remove the sensitivity curve function.

remove_sensitivity_resampled()[source]

Remove the sensitivity after the spectrum is resampled.

remove_sensitivity_resampled_fits()[source]

Remove the sensitivity_resampled FITS HDUList.

remove_smoothing()[source]

Remove the smoothing parameters for computing the sensitivity curve.

remove_spectrum_header()[source]

Remove the FITS header of the target.

remove_standard_header()[source]

Remove the FITS header of the standard.

remove_standard_star()[source]

Remove the name of the standard star and its source.

remove_telluric_factor()[source]

Remove the Telluric factor.

remove_telluric_func()[source]

Remove the Telluric interpolated function.

remove_telluric_nudge_factor()[source]

Remove the Telluric nudge factor.

remove_telluric_profile()[source]

Remove the Telluric profile.

remove_telluric_profile_fits()[source]

Remove the telluric_profile FITS HDUList.

remove_telluric_profile_resampled()[source]

Remove the telluric absorption profile in the resampled wavelengthss.

remove_telluric_profile_resampled_fits()[source]

Remove the telluric_profile_resampled FITS HDUList.

remove_trace()[source]

Remove the trace, trace_sigma and len_trace, also remove the effective_pixel and the interpolation function that maps the pixel values to the effective pixel values.

remove_trace_fits()[source]

Remove the trace FITS HDUList.

remove_variances()[source]

Remove the variances.

remove_wavecal_fits()[source]

Remove the wavecal FITS HDUList.

remove_wavelength()[source]

Remove the wavelength of each effective pixel.

remove_wavelength_fits()[source]

Remove the wavelength FITS HDUList.

remove_wavelength_resampled()[source]

Add the resampled wavelength.

remove_wavelength_resampled_fits()[source]

Remove the resampled wavelength FITS HDUList.

remove_weather_condition()[source]

Remove the Pressure, Temperature and Humidity.

remove_weight_map_fits()[source]

Remove the weight_map FITS HDUList.

save_csv(output: str, filename: str, overwrite: bool = False, recreate: bool = True, create_folder: bool = False)[source]

Save the reduced data to disk, with a choice of any combination of the 5 sets of data, see below the ‘output’ parameters for details.

Parameters:
  • output (String) –

    Type of data to be saved, the order is fixed (in the order of the following description), but the options are flexible. The input strings are delimited by “+”,

    trace: 2 HDUs
    Trace, and trace width (pixel)
    count: 3 HDUs
    Count, uncertainty, and sky (pixel)
    weight_map: 1 HDU
    Weight (pixel)
    arc_spec: 1 HDU
    1D arc spectrum
    arc_lines: 2 HDUs
    Arc line position (pixel), and arc line effective position (pixel)
    wavecal: 1 HDU
    Polynomial coefficients for wavelength calibration
    wavelength: 1 HDU
    Wavelength of each pixel
    wavelength_resampled: 1 HDU
    Wavelength of each resampled position
    count_resampled: 3 HDUs
    Resampled Count, uncertainty, and sky (wavelength)
    sensitivity: 1 HDU
    Sensitivity (pixel)
    flux: 3 HDUs
    Flux, uncertainty, and sky (pixel)
    atm_ext: 1 HDU
    Atmospheric extinction correction factor
    flux_atm_ext_corrected: 3 HDUs
    Atmospheric extinction corrected flux, uncertainty, and sky (pixel)
    telluric_profile: 1 HDU
    Telluric absorption profile
    flux_telluric_corrected: 3 HDUs
    Telluric corrected flux, uncertainty, and sky (pixel)
    flux_atm_ext_telluric_corrected: 3 HDUs
    Atmospheric extinction and telluric corrected flux, uncertainty, and sky (pixel)
    sensitivity_resampled: 1 HDU
    Sensitivity (wavelength)
    flux_resampled: 4 HDUs
    Flux, uncertainty, and sky (wavelength)
    atm_ext_resampled: 1 HDU
    Atmospheric extinction correction factor
    flux_resampled_atm_ext_corrected: 3 HDUs
    Atmospheric extinction corrected flux, uncertainty, and sky (wavelength)
    telluric_profile_resampled: 1 HDU
    Telluric absorption profile
    flux_resampled_telluic_corrected: 3 HDUs
    Telluric corrected flux, uncertainty, and sky (wavelength)
    flux_resampled_atm_ext_telluric_corrected: 3 HDUs
    Atmospheric extinction and telluric corrected flux, uncertainty, and sky (wavelength)
  • filename (String) – Disk location to be written to. Default is at where the process/subprocess is execuated.
  • overwrite (boolean) – Default is False.
  • recreate (boolean (Default: False)) – Set to True to overwrite the FITS data and header.
  • create_folder (boolean (Default: False)) – Create folder if not exist. Use with caution.
save_fits(output: str, filename: str, overwrite: bool = False, recreate: bool = True, empty_primary_hdu: bool = True, create_folder: bool = False)[source]

Save the reduced data to disk, with a choice of any combination of the data, see below the ‘output’ parameters for details.

Parameters:
  • output (String) –

    Type of data to be saved, the order is fixed (in the order of the following description), but the options are flexible. The input strings are delimited by “+”,

    trace: 2 HDUs
    Trace, and trace width (pixel)
    count: 3 HDUs
    Count, uncertainty, and sky (pixel)
    weight_map: 1 HDU
    Weight (pixel)
    arc_spec: 1 HDU
    1D arc spectrum
    arc_lines: 2 HDUs
    Arc line position (pixel), and arc line effective position (pixel)
    wavecal: 1 HDU
    Polynomial coefficients for wavelength calibration
    wavelength: 1 HDU
    Wavelength of each pixel
    wavelength_resampled: 1 HDU
    Wavelength of each resampled position
    count_resampled: 3 HDUs
    Resampled Count, uncertainty, and sky (wavelength)
    sensitivity: 1 HDU
    Sensitivity (pixel)
    flux: 3 HDUs
    Flux, uncertainty, and sky (pixel)
    atm_ext: 1 HDU
    Atmospheric extinction correction factor
    flux_atm_ext_corrected: 3 HDUs
    Atmospheric extinction corrected flux, uncertainty, and sky (pixel)
    telluric_profile: 1 HDU
    Telluric absorption profile
    flux_telluric_corrected: 3 HDUs
    Telluric corrected flux, uncertainty, and sky (pixel)
    flux_atm_ext_telluric_corrected: 3 HDUs
    Atmospheric extinction and telluric corrected flux, uncertainty, and sky (pixel)
    sensitivity_resampled: 1 HDU
    Sensitivity (wavelength)
    flux_resampled: 4 HDUs
    Flux, uncertainty, and sky (wavelength)
    atm_ext_resampled: 1 HDU
    Atmospheric extinction correction factor
    flux_resampled_atm_ext_corrected: 3 HDUs
    Atmospheric extinction corrected flux, uncertainty, and sky (wavelength)
    telluric_profile_resampled: 1 HDU
    Telluric absorption profile
    flux_resampled_telluic_corrected: 3 HDUs
    Telluric corrected flux, uncertainty, and sky (wavelength)
    flux_resampled_atm_ext_telluric_corrected: 3 HDUs
    Atmospheric extinction and telluric corrected flux, uncertainty, and sky (wavelength)
  • filename (str) – Filename for the output, all of them will share the same name but will have different extension.
  • overwrite (boolean) – Default is False.
  • recreate (boolean (Default: False)) – Set to True to overwrite the FITS data and header.
  • empty_primary_hdu (boolean (Default: True)) – Set to True to leave the Primary HDU blank (Default: True)
  • create_folder (boolean (Default: False)) – Create folder if not exist. Use with caution.