write_fits_spec¶
- synphot.specio.write_fits_spec(filename, wavelengths, fluxes, pri_header={}, ext_header={}, overwrite=False, trim_zero=True, pad_zero_ends=True, precision=None, epsilon=0.00032, wave_col='WAVELENGTH', flux_col='FLUX', wave_unit=Unit('Angstrom'), flux_unit=Unit('FLAM'))[source]¶
Write FITS spectrum.
Warning
If data is being written out as single-precision but wavelengths are in double-precision, some rows may be omitted.
- Parameters:
- filenamestr
Output spectrum filename.
- wavelengths, fluxesarray-like or
Quantity
Wavelength and flux of the spectrum.
- pri_header, ext_headerdict
Metadata to be added to primary and given extension FITS header, respectively. Do not use this to define column names and units.
- overwritebool
Overwrite existing file. Defaults to
False
.- trim_zerobool
Remove rows with zero-flux. Default is
True
.- pad_zero_endsbool
Pad each end of the spectrum with a row of zero flux like
synphot.spectrum.BaseSpectrum.taper()
. This is unnecessary if input is already tapered.- precision{
None
, ‘single’, ‘double’} Precision of values in output file. Use native flux precision by default.
- epsilonfloat
Single-precision \(\epsilon\) value, taken from IRAF SYNPHOT FAQ. This is the minimum separation in wavelengths necessary for SYNPHOT to read the entries as distinct single-precision numbers. This is only used if
precision='single'
but data are in double-precision. Default from the FAQ is 0.00032.- wave_col, flux_colstr
Wavelength and flux column names (case-insensitive).
- wave_unit, flux_unitstr or
Unit
Wavelength and flux units, which default to Angstrom and FLAM, respectively. These are only used if wavelengths and fluxes are not in astropy quantities.
- Raises:
- synphot.exceptions.SynphotError
Wavelengths and fluxes have difference shapes or value precision is not supported.