NEID
Level 2
- class rvdata.instruments.neid.level2.NEIDRV2
Bases:
RV2Read a NEID Level 2 file and convert it to the EPRV L2 standard format Python object.
This class extends the RV2 base class to handle the reading of NEID Level 2 files and converts them into a standardized EPRV Level 2 data format. Relevant extensions are taken from the NEID FITS file and stored as attributes of the data standard Python object.
- _read(hdul: fits.HDUList) None
Reads the input FITS HDU list, extracts specific extensions related to the science data for different chips and fibers, and stores them in a standardized format.
The method processes data from different fibers depending on the NEID observation mode. There are three traces (SCI/SKY/CAL) for HR mode and two traces (SCI/SKY) for HE mode.
- extensions
A dictionary containing all the created extensions (e.g., INSTRUMENT_HEADER, TRACE1_FLUX, EXPMETER) where the keys are the extension names and the values are the data type (e.g., ImageHDU, BinTableHDU).
- Type:
dict
- headers
A dictionary containing metadata headers relevant for each extension. These are largely taken from the input NEID FITS file, but some metadata is added in the translator (e.g., the instrument RV era).
- Type:
dict
- data
A dictionary containing the data entries for each extension. These are largely directly taken from the input NEID FITS file, but some are reorganized (e.g., exposure meter data).
- Type:
dict
Notes
To construct an RVData Level 2 object, only a NEID Level 2 FITS file is required. The classmethod from_fits should be used to instantiate the object from these files. The _read method is not intended to be called directly by users.
Example
>>> from rvdata.instruments.neid.level2 import NEIDRV2 >>> hdul = fits.open('neidL2_YYYYMMDDTHHMMSS.fits') >>> neid_rv2_obj = NEIDRV2.from_fits("neidL2_YYYYMMDDTHHMMSS.fits", instrument="NEID") >>> neid_rv2_obj.to_fits("neid_L2_standard.fits")