MegaPrimeTranslator#
- class astro_metadata_translator.MegaPrimeTranslator(header, filename=None)#
Bases:
FitsTranslatorMetadata translator for CFHT MegaPrime standard headers.
- Parameters:
filename (
str|ParseResult|ResourcePath|Path|None, default:None)
Attributes Summary
All the valid properties for this translator including extensions.
Default resource path root to use to locate header correction files.
Name of this translation class
Supports the MegaPrime instrument.
Methods Summary
determine_translatable_headers(filename[, ...])Given a file return all the headers usable for metadata translation.
observing_date_to_offset(observing_date)Return the offset to use when calculating the observing day.
Return value of altaz_begin from headers.
Airmass of the boresight of the telescope.
Angle of the instrument in boresight_rotation_coord frame.
Coordinate frame of the instrument rotation angle (options: sky, unknown).
Duration of the exposure with shutter closed (seconds).
Calculate start time of observation.
Calculate end time of observation.
Return value of detector_exposure_id from headers.
Collection name of which this detector is a part.
Return value of detector_name from headers.
Return value of detector_num from headers.
Serial number/string associated with this detector.
Unique (with instrument) integer identifier for this observation.
Actual duration of the exposure (seconds).
Requested duration of the exposure (seconds).
Calculate the observatory location.
Object of interest or field name.
Return the lifetime exposure number.
Label uniquely identifying this observation (can be related to 'exposure_id').
Calculate the observation type.
The bandpass filter used for this observation.
Return value of pressure from headers.
Relative humidity outside the dome.
Observing program (survey or proposal) identifier.
Temperature outside the dome.
Calculate the tracking RA/Dec for this observation.
ID of the Visit this Exposure is associated with.
Attributes Documentation
- all_properties: dict[str, PropertyDefinition] = {'altaz_begin': <astro_metadata_translator.properties.PropertyDefinition object>, 'altaz_end': <astro_metadata_translator.properties.PropertyDefinition object>, 'boresight_airmass': <astro_metadata_translator.properties.PropertyDefinition object>, 'boresight_rotation_angle': <astro_metadata_translator.properties.PropertyDefinition object>, 'boresight_rotation_coord': <astro_metadata_translator.properties.PropertyDefinition object>, 'can_see_sky': <astro_metadata_translator.properties.PropertyDefinition object>, 'dark_time': <astro_metadata_translator.properties.PropertyDefinition object>, 'datetime_begin': <astro_metadata_translator.properties.PropertyDefinition object>, 'datetime_end': <astro_metadata_translator.properties.PropertyDefinition object>, 'detector_exposure_id': <astro_metadata_translator.properties.PropertyDefinition object>, 'detector_group': <astro_metadata_translator.properties.PropertyDefinition object>, 'detector_name': <astro_metadata_translator.properties.PropertyDefinition object>, 'detector_num': <astro_metadata_translator.properties.PropertyDefinition object>, 'detector_serial': <astro_metadata_translator.properties.PropertyDefinition object>, 'detector_unique_name': <astro_metadata_translator.properties.PropertyDefinition object>, 'exposure_group': <astro_metadata_translator.properties.PropertyDefinition object>, 'exposure_id': <astro_metadata_translator.properties.PropertyDefinition object>, 'exposure_time': <astro_metadata_translator.properties.PropertyDefinition object>, 'exposure_time_requested': <astro_metadata_translator.properties.PropertyDefinition object>, 'focus_z': <astro_metadata_translator.properties.PropertyDefinition object>, 'group_counter_end': <astro_metadata_translator.properties.PropertyDefinition object>, 'group_counter_start': <astro_metadata_translator.properties.PropertyDefinition object>, 'has_simulated_content': <astro_metadata_translator.properties.PropertyDefinition object>, 'instrument': <astro_metadata_translator.properties.PropertyDefinition object>, 'location': <astro_metadata_translator.properties.PropertyDefinition object>, 'object': <astro_metadata_translator.properties.PropertyDefinition object>, 'observation_counter': <astro_metadata_translator.properties.PropertyDefinition object>, 'observation_id': <astro_metadata_translator.properties.PropertyDefinition object>, 'observation_reason': <astro_metadata_translator.properties.PropertyDefinition object>, 'observation_type': <astro_metadata_translator.properties.PropertyDefinition object>, 'observing_day': <astro_metadata_translator.properties.PropertyDefinition object>, 'observing_day_offset': <astro_metadata_translator.properties.PropertyDefinition object>, 'physical_filter': <astro_metadata_translator.properties.PropertyDefinition object>, 'pressure': <astro_metadata_translator.properties.PropertyDefinition object>, 'relative_humidity': <astro_metadata_translator.properties.PropertyDefinition object>, 'science_program': <astro_metadata_translator.properties.PropertyDefinition object>, 'telescope': <astro_metadata_translator.properties.PropertyDefinition object>, 'temperature': <astro_metadata_translator.properties.PropertyDefinition object>, 'tracking_radec': <astro_metadata_translator.properties.PropertyDefinition object>, 'visit_id': <astro_metadata_translator.properties.PropertyDefinition object>}#
All the valid properties for this translator including extensions.
- default_resource_root: str | None = 'corrections/CFHT'#
Default resource path root to use to locate header correction files.
- name: str | None = 'MegaPrime'#
Name of this translation class
- supported_instrument: str | None = 'MegaPrime'#
Supports the MegaPrime instrument.
Methods Documentation
- classmethod determine_translatable_headers(filename, primary=None)#
Given a file return all the headers usable for metadata translation.
MegaPrime files are multi-extension FITS with a primary header and each detector stored in a subsequent extension. MegaPrime uses
INHERIT=Ftherefore the primary header will always be ignored if given.- Parameters:
filename (
strorlsst.resources.ResourcePathExpression) – Path to a file in a format understood by this translator.primary (
dict-like, optional) – The primary header obtained by the caller. This is sometimes already known, for example if a system is trying to bootstrap without already knowing what data is in the file. Will be ignored.
- Yields:
headers (iterator of
dict-like) – Each detector header in turn. The supplied header will never be included.- Return type:
Notes
This translator class is specifically tailored to raw MegaPrime data and is not designed to work with general FITS files. The normal paradigm is for the caller to have read the first header and then called
determine_translatoron the result to work out which translator class to then call to obtain the real headers to be used for translation.
- classmethod observing_date_to_offset(observing_date)#
Return the offset to use when calculating the observing day.
- Parameters:
observing_date (
astropy.time.Time) – The date of the observation. Unused.- Returns:
offset – The offset to apply. The offset is always 0 seconds. In Hawaii UTC rollover is at 2pm local time.
- Return type:
- to_altaz_begin()#
Return value of altaz_begin from headers.
Telescope boresight azimuth and elevation at start of observation.
- Returns:
The translated property.
- Return type:
- to_boresight_airmass()#
Airmass of the boresight of the telescope.
- Returns:
Translated value derived directly from a single header.
- Return type:
- Parameters:
self (
MetadataTranslator)
- to_boresight_rotation_angle()#
Angle of the instrument in boresight_rotation_coord frame.
- Returns:
Translated property that is fixed to a single value by the translator.
- Return type:
- Parameters:
self (
MetadataTranslator)
- to_boresight_rotation_coord()#
Coordinate frame of the instrument rotation angle (options: sky, unknown).
- Returns:
Translated property that is fixed to a single value by the translator.
- Return type:
- Parameters:
self (
MetadataTranslator)
- to_dark_time()#
Duration of the exposure with shutter closed (seconds).
- Returns:
Translated value derived directly from a single header.
- Return type:
- Parameters:
self (
MetadataTranslator)
- to_datetime_begin()#
Calculate start time of observation.
Uses FITS standard
MJD-BEGorDATE-BEG, in conjunction with theTIMESYSheader. Will fallback to usingMJD-OBSorDATE-OBSif the-BEGvariants are not found.- Returns:
start_time – Time corresponding to the start of the observation. Returns
Noneif no date can be found.- Return type:
- to_datetime_end()#
Calculate end time of observation.
Uses FITS standard
MJD-ENDorDATE-END, in conjunction with theTIMESYSheader.- Returns:
start_time – Time corresponding to the end of the observation.
- Return type:
- to_detector_exposure_id()#
Return value of detector_exposure_id from headers.
Unique integer identifier for this detector in this exposure.
- Returns:
The translated property.
- Return type:
- to_detector_group()#
Collection name of which this detector is a part. Can be None if there are no detector groupings.
- Returns:
Translated property that is fixed to a single value by the translator.
- Return type:
- Parameters:
self (
MetadataTranslator)
- to_detector_name()#
Return value of detector_name from headers.
Name of the detector within the instrument (might not be unique if there are detector groups).
- Returns:
The translated property.
- Return type:
- to_detector_num()#
Return value of detector_num from headers.
Unique (for instrument) integer identifier for the sensor.
- Returns:
The translated property.
- Return type:
- to_detector_serial()#
Serial number/string associated with this detector.
- Returns:
Translated value derived directly from a single header.
- Return type:
- Parameters:
self (
MetadataTranslator)
- to_exposure_id()#
Unique (with instrument) integer identifier for this observation.
- Returns:
Translated value derived directly from a single header.
- Return type:
- Parameters:
self (
MetadataTranslator)
- to_exposure_time()#
Actual duration of the exposure (seconds).
- Returns:
Translated value derived directly from a single header.
- Return type:
- Parameters:
self (
MetadataTranslator)
- to_exposure_time_requested()#
Requested duration of the exposure (seconds).
- Returns:
Translated value derived directly from a single header.
- Return type:
- Parameters:
self (
MetadataTranslator)
- to_location()#
Calculate the observatory location.
- Returns:
location – An object representing the location of the telescope.
- Return type:
- to_object()#
Object of interest or field name.
- Returns:
Translated value derived directly from a single header.
- Return type:
- Parameters:
self (
MetadataTranslator)
- to_observation_counter()#
Return the lifetime exposure number.
- Returns:
sequence – The observation counter.
- Return type:
- to_observation_id()#
Label uniquely identifying this observation (can be related to ‘exposure_id’).
- Returns:
Translated value derived directly from a single header.
- Return type:
- Parameters:
self (
MetadataTranslator)
- to_observation_type()#
Calculate the observation type.
- Returns:
typ – Observation type. Normalized to standard set.
- Return type:
- to_physical_filter()#
The bandpass filter used for this observation.
- Returns:
Translated value derived directly from a single header.
- Return type:
- Parameters:
self (
MetadataTranslator)
- to_pressure()#
Return value of pressure from headers.
Atmospheric pressure outside the dome.
- Returns:
The translated property.
- Return type:
- to_relative_humidity()#
Relative humidity outside the dome.
- Returns:
Translated value derived directly from a single header.
- Return type:
- Parameters:
self (
MetadataTranslator)
- to_science_program()#
Observing program (survey or proposal) identifier.
- Returns:
Translated value derived directly from a single header.
- Return type:
- Parameters:
self (
MetadataTranslator)
- to_temperature()#
Temperature outside the dome.
- Returns:
Translated value derived directly from a single header.
- Return type:
- Parameters:
self (
MetadataTranslator)
- to_tracking_radec()#
Calculate the tracking RA/Dec for this observation.
Currently will be
Nonefor geocentric apparent coordinates. Additionally, can beNonefor non-science observations.The method supports multiple versions of header defining tracking coordinates.
- Returns:
coords – The tracking coordinates.
- Return type:
- to_visit_id()#
ID of the Visit this Exposure is associated with.
Science observations should essentially always be associated with a visit, but calibration observations may not be.
- Returns:
Translated value derived directly from a single header.
- Return type:
- Parameters:
self (
MetadataTranslator)