Hide keyboard shortcuts

Hot-keys on this page

r m x p   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

1# This file is part of astro_metadata_translator. 

2# 

3# Developed for the LSST Data Management System. 

4# This product includes software developed by the LSST Project 

5# (http://www.lsst.org). 

6# See the LICENSE file at the top-level directory of this distribution 

7# for details of code ownership. 

8# 

9# Use of this source code is governed by a 3-clause BSD-style 

10# license that can be found in the LICENSE file. 

11 

12"""Properties calculated by this package. 

13 

14Defines all properties in one place so that both `ObservationInfo` and 

15`MetadataTranslator` can use them. In particular, the translator 

16base class can use knowledge of these properties to predefine translation 

17stubs with documentation attached, and `ObservationInfo` can automatically 

18define the getter methods. 

19 

20""" 

21 

22__all__ = ("PROPERTIES", ) 

23 

24import astropy.coordinates 

25import astropy.time 

26import astropy.units 

27 

28 

29# Dict of properties to tuple where tuple is: 

30# - description of property 

31# - Python type of property as a string (suitable for docstrings) 

32PROPERTIES = {"telescope": ("Full name of the telescope.", "str", str), 

33 "instrument": ("The instrument used to observe the exposure.", "str", str), 

34 "location": ("Location of the observatory.", "astropy.coordinates.EarthLocation", 

35 astropy.coordinates.EarthLocation), 

36 "exposure_id": ("Unique (with instrument) integer identifier for this observation.", "int", 

37 int), 

38 "visit_id": ("""ID of the Visit this Exposure is associated with. 

39 

40Science observations should essentially always be 

41associated with a visit, but calibration observations 

42may not be.""", "int", int), 

43 "physical_filter": ("The bandpass filter used for this observation.", "str", str), 

44 "datetime_begin": ("Time of the start of the observation.", "astropy.time.Time", 

45 astropy.time.Time), 

46 "datetime_end": ("Time of the end of the observation.", "astropy.time.Time", 

47 astropy.time.Time), 

48 "exposure_time": ("Duration of the exposure with shutter open (seconds).", 

49 "astropy.units.Quantity", astropy.units.Quantity), 

50 "dark_time": ("Duration of the exposure with shutter closed (seconds).", 

51 "astropy.units.Quantity", astropy.units.Quantity), 

52 "boresight_airmass": ("Airmass of the boresight of the telescope.", "float", float), 

53 "boresight_rotation_angle": ("Angle of the instrument in boresight_rotation_coord frame.", 

54 "astropy.coordinates.Angle", astropy.coordinates.Angle), 

55 "boresight_rotation_coord": ("Coordinate frame of the instrument rotation angle" 

56 " (options: sky, unknown).", "str", str), 

57 "detector_num": ("Unique (for instrument) integer identifier for the sensor.", "int", int), 

58 "detector_name": ("Name of the detector within the instrument (might not be unique" 

59 " if there are detector groups).", 

60 "str", str), 

61 "detector_unique_name": ("Unique name of the detector within the focal plane, generally" 

62 " combining detector_group with detector_name.", 

63 "str", str), 

64 "detector_serial": ("Serial number/string associated with this detector.", "str", str), 

65 "detector_group": ("Collection name of which this detector is a part. " 

66 "Can be None if there are no detector groupings.", "str", str), 

67 "detector_exposure_id": ("Unique integer identifier for this detector in this exposure.", 

68 "int", int), 

69 "object": ("Object of interest or field name.", "str", str), 

70 "temperature": ("Temperature outside the dome.", "astropy.units.Quantity", 

71 astropy.units.Quantity), 

72 "pressure": ("Atmospheric pressure outside the dome.", "astropy.units.Quantity", 

73 astropy.units.Quantity), 

74 "relative_humidity": ("Relative humidity outside the dome.", "float", float), 

75 "tracking_radec": ("Requested RA/Dec to track.", "astropy.coordinates.SkyCoord", 

76 astropy.coordinates.SkyCoord), 

77 "altaz_begin": ("Telescope boresight azimuth and elevation at start of observation.", 

78 "astropy.coordinates.AltAz", astropy.coordinates.AltAz), 

79 "science_program": ("Observing program (survey or proposal) identifier.", "str", str), 

80 "observation_type": ("Type of observation (currently: science, dark, flat, bias, focus).", 

81 "str", str), 

82 "observation_id": ("Label uniquely identifying this observation " 

83 "(can be related to 'exposure_id').", 

84 "str", str), 

85 "observation_reason": ("Reason this observation was taken, or its purpose ('science' and " 

86 "'calibration' are common values)", 

87 "str", str), 

88 "exposure_group": ("Label to use to associate this exposure with others " 

89 "(can be related to 'exposure_id').", 

90 "str", str), 

91 }