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__all__ = ['getColMap', 'ColMapDict'] 

2 

3 

4def getColMap(opsdb): 

5 """Get the colmap dictionary, if you already have a database object. 

6 

7 Parameters 

8 ---------- 

9 opsdb : lsst.sims.maf.db.Database or lsst.sims.maf.db.OpsimDatabase 

10 

11 Returns 

12 ------- 

13 dictionary 

14 """ 

15 try: 

16 version = opsdb.opsimVersion 

17 version = 'opsim' + version.lower() 

18 except AttributeError: 

19 version = 'barebones' 

20 colmap = ColMapDict(version) 

21 return colmap 

22 

23 

24def ColMapDict(dictName=None): 

25 

26 if dictName is None: 

27 dictName = 'FBS' 

28 dictName = dictName.lower() 

29 

30 if dictName == 'fbs' or dictName == 'opsimfbs': 

31 colMap = {} 

32 colMap['ra'] = 'fieldRA' 

33 colMap['dec'] = 'fieldDec' 

34 colMap['raDecDeg'] = True 

35 colMap['mjd'] = 'observationStartMJD' 

36 colMap['exptime'] = 'visitExposureTime' 

37 colMap['visittime'] = 'visitTime' 

38 colMap['alt'] = 'altitude' 

39 colMap['az'] = 'azimuth' 

40 colMap['lst'] = 'observationStartLST' 

41 colMap['filter'] = 'filter' 

42 colMap['fiveSigmaDepth'] = 'fiveSigmaDepth' 

43 colMap['night'] = 'night' 

44 colMap['slewtime'] = 'slewTime' 

45 colMap['slewdist'] = 'slewDistance' 

46 colMap['seeingEff'] = 'seeingFwhmEff' 

47 colMap['seeingGeom'] = 'seeingFwhmGeom' 

48 colMap['skyBrightness'] = 'skyBrightness' 

49 colMap['moonDistance'] = 'moonDistance' 

50 colMap['fieldId'] = 'fieldId' 

51 colMap['proposalId'] = 'proposalId' 

52 colMap['slewactivities'] = {} 

53 colMap['metadataList'] = ['airmass', 'normairmass', 'seeingEff', 'skyBrightness', 

54 'fiveSigmaDepth', 'HA', 'moonDistance', 'solarElong'] 

55 colMap['metadataAngleList'] = ['rotSkyPos'] 

56 colMap['note'] = 'note' 

57 

58 elif dictName == 'opsimv4': 

59 colMap = {} 

60 colMap['ra'] = 'fieldRA' 

61 colMap['dec'] = 'fieldDec' 

62 colMap['raDecDeg'] = True 

63 colMap['mjd'] = 'observationStartMJD' 

64 colMap['exptime'] = 'visitExposureTime' 

65 colMap['visittime'] = 'visitTime' 

66 colMap['alt'] = 'altitude' 

67 colMap['az'] = 'azimuth' 

68 colMap['lst'] = 'observationStartLST' 

69 colMap['filter'] = 'filter' 

70 colMap['fiveSigmaDepth'] = 'fiveSigmaDepth' 

71 colMap['night'] = 'night' 

72 colMap['slewtime'] = 'slewTime' 

73 colMap['slewdist'] = 'slewDistance' 

74 colMap['seeingEff'] = 'seeingFwhmEff' 

75 colMap['seeingGeom'] = 'seeingFwhmGeom' 

76 colMap['skyBrightness'] = 'skyBrightness' 

77 colMap['moonDistance'] = 'moonDistance' 

78 colMap['fieldId'] = 'fieldId' 

79 colMap['proposalId'] = 'proposalId' 

80 # slew speeds table 

81 colMap['slewSpeedsTable'] = 'SlewMaxSpeeds' 

82 # slew states table 

83 colMap['slewStatesTable'] = 'SlewFinalState' 

84 # slew activities list 

85 colMap['slewActivitiesTable'] = 'SlewActivities' 

86 # Slew columns 

87 colMap['Dome Alt Speed'] = 'domeAltSpeed' 

88 colMap['Dome Az Speed'] = 'domeAzSpeed' 

89 colMap['Tel Alt Speed'] = 'telAltSpeed' 

90 colMap['Tel Az Speed'] = 'telAzSpeed' 

91 colMap['Rotator Speed'] = 'rotatorSpeed' 

92 colMap['Tel Alt'] = 'telAlt' 

93 colMap['Tel Az'] = 'telAz' 

94 colMap['Rot Tel Pos'] = 'rotTelPos' 

95 colMap['Dome Alt'] = 'domeAlt' 

96 colMap['Dome Az'] = 'domeAz' 

97 colMap['slewactivities'] = {'Dome Alt': 'domalt', 

98 'Dome Az': 'domaz', 

99 'Dome Settle': 'domazsettle', 

100 'Tel Alt': 'telalt', 

101 'Tel Az': 'telaz', 

102 'Tel Rot': 'telrot', 

103 'Tel Settle': 'telsettle', 

104 'TelOptics CL': 'telopticsclosedloop', 

105 'TelOptics OL': 'telopticsopenloop', 

106 'Readout': 'readout', 

107 'Filter': 'filter'} 

108 colMap['metadataList'] = ['airmass', 'normairmass', 'seeingEff', 'skyBrightness', 

109 'fiveSigmaDepth', 'HA', 'moonDistance', 'solarElong'] 

110 colMap['metadataAngleList'] = ['rotSkyPos'] 

111 

112 elif dictName == 'opsimv3': 

113 colMap = {} 

114 colMap['ra'] = 'fieldRA' 

115 colMap['dec'] = 'fieldDec' 

116 colMap['raDecDeg'] = False 

117 colMap['mjd'] = 'expMJD' 

118 colMap['exptime'] = 'visitExpTime' 

119 colMap['visittime'] = 'visitTime' 

120 colMap['alt'] = 'altitude' 

121 colMap['az'] = 'azimuth' 

122 colMap['lst'] = 'lst' 

123 colMap['filter'] = 'filter' 

124 colMap['fiveSigmaDepth'] = 'fiveSigmaDepth' 

125 colMap['night'] = 'night' 

126 colMap['slewtime'] = 'slewTime' 

127 colMap['slewdist'] = 'slewDist' 

128 colMap['seeingEff'] = 'FWHMeff' 

129 colMap['seeingGeom'] = 'FWHMgeom' 

130 colMap['skyBrightness'] = 'filtSkyBrightness' 

131 colMap['moonDistance'] = 'dist2Moon' 

132 colMap['fieldId'] = 'fieldID' 

133 colMap['proposalId'] = 'propID' 

134 # slew speeds table 

135 colMap['slewSpeedsTable'] = 'SlewMaxSpeeds' 

136 # slew states table 

137 colMap['slewStatesTable'] = 'SlewStates' 

138 # Slew activities list 

139 colMap['slewActivitiesTable'] = 'SlewActivities' 

140 colMap['Dome Alt Speed'] = 'domeAltSpeed' 

141 colMap['Dome Az Speed'] = 'domeAzSpeed' 

142 colMap['Tel Alt Speed'] = 'telAltSpeed' 

143 colMap['Tel Az Speed'] = 'telAzSpeed' 

144 colMap['Rotator Speed'] = 'rotatorSpeed' 

145 colMap['Tel Alt'] = 'telAlt' 

146 colMap['Tel Az'] = 'telAz' 

147 colMap['Rot Tel Pos'] = 'rotTelPos' 

148 colMap['Dome Alt'] = 'domAlt' 

149 colMap['Dome Az'] = 'domAz' 

150 colMap['slewactivities'] = {'Dome Alt': 'DomAlt', 

151 'Dome Az': 'DomAz', 

152 'Tel Alt': 'TelAlt', 

153 'Tel Az': 'TelAz', 

154 'Tel Rot': 'Rotator', 

155 'Settle': 'Settle', 

156 'TelOptics CL': 'TelOpticsCL', 

157 'TelOptics OL': 'TelOpticsOL', 

158 'Readout': 'Readout', 

159 'Filter': 'Filter'} 

160 colMap['metadataList'] = ['airmass', 'normairmass', 'seeingEff', 'skyBrightness', 

161 'fiveSigmaDepth', 'HA', 'moonDistance', 'solarElong'] 

162 colMap['metadataAngleList'] = ['rotSkyPos'] 

163 

164 elif dictName == 'barebones': 

165 colMap = {} 

166 colMap['ra'] = 'ra' 

167 colMap['dec'] = 'dec' 

168 colMap['raDecDeg'] = True 

169 colMap['mjd'] = 'mjd' 

170 colMap['exptime'] = 'exptime' 

171 colMap['visittime'] = 'exptime' 

172 colMap['alt'] = 'alt' 

173 colMap['az'] = 'az' 

174 colMap['filter'] = 'filter' 

175 colMap['fiveSigmaDepth'] = 'fivesigmadepth' 

176 colMap['night'] = 'night' 

177 colMap['slewtime'] = 'slewtime' 

178 colMap['slewdist'] = None 

179 colMap['seeingGeom'] = 'seeing' 

180 colMap['seeingEff'] = 'seeing' 

181 colMap['metadataList'] = ['airmass', 'normairmass', 'seeingEff', 'skyBrightness', 

182 'fiveSigmaDepth', 'HA'] 

183 colMap['metadataAngleList'] = ['rotSkyPos'] 

184 

185 else: 

186 raise ValueError(f'No built in column dict with name {dictMap}') 

187 

188 return colMap