Version | Author | Date | PypeIt |
---|---|---|---|
1.0 | Joe Hennawi | 25 Jan 2021 | 1.1.1 |
The sensitivity function in PypeIt is defined to be the function Sλ satisfying
where
Fλ is the specific energy flux in units of
Nλ is the specific photon flux with units
PypeIt spec1d files contain
Nλ must be determined from
via
where Δt is the exposure time and
After flux calibration, flux calibrated spectra (i.e. Fλ) are reported in the spec1d files as e.g. OPT_FLAM
and BOX_FLAM
for optimal and boxcar extractions, respectively, in units of fluxing
for additional details.
Flux calibration of PypeIt spectra is expressed via the "spectroscopic zeropoint", which, by analogy with the imaging zeropoint, is defined to be:
With this definition we see that an astronomical source with a flat spectrum in frequency ν, i.e.
From the definition of the spectroscopic zeropoint above, it follows that
where ZPCONST = 40.09 is a dimensionless number defined by
In practice PypeIt fits and stores the spectroscopic zerpoints and uses the equation above to compute Fλ from Nλ and vice-versa.
The sensitivity function script pypeit_sensfunc
produces a QA plot showing the the zeropoint fit, as shown below. For echelle observations this zeropoint QA is shown for each order.
The zeropoint is closely related to the spectroscopic throughput. The number of counts per pixel in a spectrum of an object with flux Fλ
where A is the effective aperture of the telescope, T(λ) is the spectroscopic throughput,
Based on this equation and the definintions above it follows that the spectroscopic throughput can be written
Note T(λ) is clearly dimensionless given the units of Sλ:
In addition to the zeropoint QA shown above, the sensitivity function script pypeit_sensfunc
also produces a QA plot showing throughput curve(s), computed directly from the spectroscopic zeropoints.
Note that we have defined the spectroscopic throughput above to be that of the telescope + instrument system, but NOT include the attenuation caused by the Earth's atmosphere. Also, the zeropoints, sensitivity functions, and PypeIt flux calibration algorithms in general do not attempt to remove the impact of slit losses. In the limit where your standard star observations and science observations have exactly the same seeing, the flux calibration will be perfect. In the more realistic scenario where they differ, this will manifest as a wavelength dependent systematic error in the flux calibration, with the direction of the error depending on the relative seeing between the standard star and science observations. In future versions we hope to implement a better treatment of slit losses. For the time being we recommend that users that require very accurate flux calibration force PypeIt flux calibrated spectra to agree with photometry. This can be done using the filter parameter option for 1D coadding (see coadd1dpar
), which can be set in the .coadd1d file which is used to guide 1D coaddition with the pypeit_coadd1d
script (see coadd1d
).