> > |
Howto create FITS images/spectra to be VO-compatible
FITS format is a popular output used in astronomy for spectra and images. FITS recommendations when applied enable to make a clean mapping between FITS header and ObsCore DM.
Mapping FITS with ObsCore
Some Obscore items can be assigned by provider (i.e.: obsid, access_estimated_size, ..) and other can be detected in FITS using different keywords. We can classify them into 3 categories (ordered by relevance):
- WCS keywords
Available for different topics (position, electromagnetics band..). WCS is a serialisation based on FITS keywords that make a bijection between a simple set of values and the true values (see the official document: https://fits.gsfc.nasa.gov/fits_wcs.html ) An automated workflow requires all WCS keywords : i.e.: CRVAL, CTYPE, CRPIX, CDELT ,CUNIT, [CDi_j]
- NASA standards and extended keywords list
See https://fits.gsfc.nasa.gov/
- Other keywords in usage
Other keywords used FITS, not described by NASA
Proposed keywords grouped by topics
Obscore | Description | Mandatory | WCS possible | Automated assignment possible | NASA FITS standard keywords | NASA FITS exended keywords | Others keywords | dataproduct_type | Data product (file content) primary type | YES | | YES | | | | dataproduct_subtype | Data product specific type | | | | | | | calib_level | Calibration level of the observation | YES | | YES | | | | target_name | Object of interest | YES | | YES | OBJECT | OBJNAME | OBJECT, TARGET | target_class | Class of the Target object as in SSA | | | | | | | obs_id | Internal ID given by the ObsTAP service | YES | | YES | | OBS-ID | | obs_title | Brief description of dataset in free format | | | | | TITLE | | obs_collection | Name of the data collection | YES | | YES | | | | obs_creation_date | Date when the dataset was created | | | | | | | obs_creator_name | Name of the creator of the data | | | | | | | obs_creator_did | IVOA dataset identifier given by the creator | | | | | | | obs_release_date | Curation.releaseDateunitlessdateObservation release date (ISO 8601) | | | | | | | obs_publisher_did | ID for the Dataset given by the publisher. | YES | | YES | | | | publisher_id | IVOA-ID for the Publisher | | | | | | | bib_reference | Service bibliographic reference | | | | | | | data_rights | Public/Secure/Proprietary/ | | | | | | | access_url | URL used to access dataset | YES | | YES | | | | access_format | Content format of the dataset | YES | | YES | | | | access_estsize | Estimated size of dataset: in kilobytes | YES | | YES | | | | s_ra | Right ascension | YES | YES | | | RA, RA_NOM, RA_OBJ, RA_PNT, RA_SXS, RA_SCY,RA_SCZ | RA, RA2000, RAOBJ, RA1950 | s_dec | Declination | YES | YES | | | DEC, DEC_NOM, DEC_OBJ, DEC_PNT, DEC_SXS, DEC_SCY, DEC_SCZ | DEC, DEC2000, DEC1950, DE2000, DE1950, DEOBJ | s_fov | Estimated size of the covered region as the diameter of a containing circle | YES | YES | | | | FOV | s_region | Sky region covered by the data product (expressed in ICRS frame) | YES | YES | | | | REGION | s_resolution | Spatial resolution of data as FWHMof PSF | YES | YES | | | | | s_xel1 | Number of elementsalong the first coordinate of the spatial axis | YES | | YES (NAXIS) | | | | s_xel2 | Number of elementsalong the second coordinate of the spatial axis | YES | | YES (NAXIS) | | | | s_ucd | UCD for the nature of the spatial axis | | | | | | | s_unit | Unit used for spatial axis | | | | | | | s_resolution_min | Resolution min value on spatial axis (FHWM of PSF) | | | | | | | s_resolution_max | Resolution max value on spatial axis | | | | | | | s_calib_status | Type of calibration along the spatial axis | | | | | | | s_stat_error | Astrometric precision along the spatial axis | | | | | | | s_pixel_scale | Sampling period in world coordinate units along the spatial axis | | | | | | | t_xel | Number of elementsalong the time axis | YES | | | | | | t_refpos | Time Axis Reference Position as defined in STC REC | | | | | | | t_min | Start time inMJD | YES | | | DATE-OBS | TIME-OBS | TSTART, OBSSTART, OBS-DATE, DATE-OBS, DATEOBS, OBSDATE, MJDMJDOS, TIME | t_max | Stop time in MJD | YES | | | | TIME-END, DATE-END | TSTOP, OBSEND, ENDOBS, ENDDATE, DATEEND | t_exptime | Total exposure time | YES | | | | EXPOSURE, EXPTIME, TELAPSE, ELAPTIME, ONTIME, LIVETIME | EXPTIME, TEXP, OBSTIME, TIMEOBS | t_resolution | Temporal resolution FWHM | YES | | | | | | t_calib_status | Type of time coordinate calibration | | | | | | | t_stat_error | Time coord statistical error | | | | | | | em_xel | Number of elementsalong the spectral axis | YES | | YES (NAXIS) | | | | em_ucd | Nature of the spectral axis | | | | | | | em_unit | Units along the spectral axis | | | | | | | em_calib_status | Type of spectral coord calibration | | | | | | | em_min | start in spectral coordinates | YES | YES | | | | | em_max | stop in spectral coordinates | YES | YES | | | | | em_res_power | Value of the resolving power along the spectral axis. (R) | YES | YES | | | | | em_res_power_min | Resolving power min value on spectral axis | | | | | | | em_res_power_max | Resolving power max value on spectral axis | | | | | | | em_resolution | Value of Resolution along the spectral axis | | | | | | | em_stat_error | Spectral coord statistical error | | | | | | | o_ucd | Nature of the observable axis | YES | | | | | | o_unit | Units used for the observable values | | | | | | | o_calib_status | Typeof calibration for the observable coordinate | | | | | | | o_stat_error | Statistical error on the Observable axis | | | | | | | pol_xel | Number of elements along the polarization axis | YES | | | | | | pol_states | List of polarization states present in the data file | YES | | | | | POL, STOKES | instrument_name | The name of the instrument used for the observation | YES | | | INSTRUME | | INSTRUME | facility_name | Name of the facility used for this observation | YES | | | TELESCOP | | FACILITY, TELESCOP | dataproduct_subtype | Data product specific type | | | | | | |
Validator tools
Tools like the CDS fits validator (based on Saada) checks the VO-compatibility according to WCS and a keyword list based on the FITS extended keywords. http://cdsarc.unistra.fr/vizier.submit/fitsvalidator.html The service was built in the VizieR ingestion context. The background process is similar as the VizieR web service provided for authors.
FITS (Nasa) recomendations
Note: NASA FITS url: https://fits.gsfc.nasa.gov/fits_dictionary.html , HEASARC URL : https://heasarc.gsfc.nasa.gov/docs/fcg/ (idem than FITS)
| | | | | | | | | | | | | | | | Obscore | Description | Mandatory | WCS possible | Automated assignment possible | NASA FITS standard keywords | NASA FITS exended keywords | Others keywords | dataproduct_type | Data product (file content) primary type | YES | | YES | | | | dataproduct_subtype | Data product specific type | | | | | | | calib_level | Calibration level of the observation | YES | | YES | | | | target_name | Object of interest | YES | | YES | OBJECT | OBJNAME | OBJECT, TARGET | target_class | Class of the Target object as in SSA | | | | | | | obs_id | Internal ID given by the ObsTAP service | YES | | YES | | OBS-ID | | obs_title | Brief description of dataset in free format | | | | | TITLE | | obs_collection | Name of the data collection | YES | | YES | | | | obs_creation_date | Date when the dataset was created | | | | | | | obs_creator_name | Name of the creator of the data | | | | | | | obs_creator_did | IVOA dataset identifier given by the creator | | | | | | | obs_release_date | Curation.releaseDateunitlessdateObservation release date (ISO 8601) | | | | | | | obs_publisher_did | ID for the Dataset given by the publisher. | YES | | YES | | | | publisher_id | IVOA-ID for the Publisher | | | | | | | bib_reference | Service bibliographic reference | | | | | | | data_rights | Public/Secure/Proprietary/ | | | | | | | access_url | URL used to access dataset | YES | | YES | | | | access_format | Content format of the dataset | YES | | YES | | | | access_estsize | Estimated size of dataset: in kilobytes | YES | | YES | | | | s_ra | Right ascension | YES | YES | | | RA, RA_NOM, RA_OBJ, RA_PNT, RA_SXS, RA_SCY,RA_SCZ | RA, RA2000, RAOBJ, RA1950 | s_dec | Declination | YES | YES | | | DEC, DEC_NOM, DEC_OBJ, DEC_PNT, DEC_SXS, DEC_SCY, DEC_SCZ | DEC, DEC2000, DEC1950, DE2000, DE1950, DEOBJ | s_fov | Estimated size of the covered region as the diameter of a containing circle | YES | YES | | | | FOV | s_region | Sky region covered by the data product (expressed in ICRS frame) | YES | YES | | | | REGION | s_resolution | Spatial resolution of data as FWHMof PSF | YES | YES | | | | | s_xel1 | Number of elementsalong the first coordinate of the spatial axis | YES | | YES (NAXIS) | | | | s_xel2 | Number of elementsalong the second coordinate of the spatial axis | YES | | YES (NAXIS) | | | | s_ucd | UCD for the nature of the spatial axis | | | | | | | s_unit | Unit used for spatial axis | | | | | | | s_resolution_min | Resolution min value on spatial axis (FHWM of PSF) | | | | | | | s_resolution_max | Resolution max value on spatial axis | | | | | | | s_calib_status | Type of calibration along the spatial axis | | | | | | | s_stat_error | Astrometric precision along the spatial axis | | | | | | | s_pixel_scale | Sampling period in world coordinate units along the spatial axis | | | | | | | t_xel | Number of elementsalong the time axis | YES | | | | | | t_refpos | Time Axis Reference Position as defined in STC REC | | | | | | | t_min | Start time inMJD | YES | | | DATE-OBS | TIME-OBS | TSTART, OBSSTART, OBS-DATE, DATE-OBS, DATEOBS, OBSDATE, MJDMJDOS, TIME | t_max | Stop time in MJD | YES | | | | TIME-END, DATE-END | TSTOP, OBSEND, ENDOBS, ENDDATE, DATEEND | t_exptime | Total exposure time | YES | | | | EXPOSURE, EXPTIME, TELAPSE, ELAPTIME, ONTIME, LIVETIME | EXPTIME, TEXP, OBSTIME, TIMEOBS | t_resolution | Temporal resolution FWHM | YES | | | | | | t_calib_status | Type of time coordinate calibration | | | | | | | t_stat_error | Time coord statistical error | | | | | | | em_xel | Number of elementsalong the spectral axis | YES | | YES (NAXIS) | | | | em_ucd | Nature of the spectral axis | | | | | | | em_unit | Units along the spectral axis | | | | | | | em_calib_status | Type of spectral coord calibration | | | | | | | em_min | start in spectral coordinates | YES | YES | | | | | em_max | stop in spectral coordinates | YES | YES | | | | | em_res_power | Value of the resolving power along the spectral axis. (R) | YES | YES | | | | | em_res_power_min | Resolving power min value on spectral axis | | | | | | | em_res_power_max | Resolving power max value on spectral axis | | | | | | | em_resolution | Value of Resolution along the spectral axis | | | | | | | em_stat_error | Spectral coord statistical error | | | | | | | o_ucd | Nature of the observable axis | YES | | | | | | o_unit | Units used for the observable values | | | | | | | o_calib_status | Typeof calibration for the observable coordinate | | | | | | | o_stat_error | Statistical error on the Observable axis | | | | | | | pol_xel | Number of elements along the polarization axis | YES | | | | | | pol_states | List of polarization states present in the data file | YES | | | | | POL, STOKES | instrument_name | The name of the instrument used for the observation | YES | | | INSTRUME | | INSTRUME | facility_name | Name of the facility used for this observation | YES | | | TELESCOP | | FACILITY, TELESCOP | dataproduct_subtype | Data product specific type | | | | | | | |