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

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

from builtins import object 

import numpy as np 

 

__all__ = ["ObsMetadataBase"] 

 

class ObsMetadataBase(object): 

""" 

This class provides the InstanceCatalog with a way to write out parameters from its ObsMetadata object. 

""" 

def _get_nobj(self): 

return len(self.column_by_name('objId')) 

 

def get_expMJD(self): 

""" 

Returns the expMJD from obs_metadata (assumed to be TAI MJD exposure midpoint). 

""" 

n_records = self._get_nobj() 

mjd = [self.obs_metadata.mjd.TAI] * n_records 

return np.array(mjd) 

 

def get_rotSkyPos(self): 

""" 

Returns the rotSkyPos from obs_metadata (in degrees). 

""" 

n_records = self._get_nobj() 

rotSkyPos = [self.obs_metadata.rotSkyPos] * n_records 

return np.array(rotSkyPos) 

 

def get_bandpass(self): 

""" 

Returns the bandpass name from obs_metadata. 

""" 

n_records = self._get_nobj() 

bandpass = [self.obs_metadata.bandpass] * n_records 

return np.array(bandpass) 

 

def get_m5(self): 

""" 

Returns m5 from obs_metadata. 

""" 

n_records = self._get_nobj() 

m5 = [self.obs_metadata.m5[self.obs_metadata.bandpass]] * n_records 

return np.array(m5) 

 

def get_seeing(self): 

""" 

Returns the seeing from obs_metadata (in arcseconds). 

""" 

n_records = self._get_nobj() 

seeing = [self.obs_metadata.seeing[self.obs_metadata.bandpass]] * n_records 

return np.array(seeing) 

 

def get_fieldRA(self): 

""" 

Returns the field RA from obs_metadata (in degrees). 

""" 

n_records = self._get_nobj() 

ra = [self.obs_metadata.unrefractedRA] * n_records 

return np.array(ra) 

 

def get_fieldDec(self): 

""" 

Returns the field Dec from obs_metadata (in degrees). 

""" 

n_records = self._get_nobj() 

dec = [self.obs_metadata.unrefractedDec] * n_records 

return np.array(dec) 

 

def get_visitExpTime(self): 

""" 

Returns the visitExpTime (open shutter time) in seconds. 

""" 

n_records = self._get_nobj() 

try: 

visitExpTime = [self.obs_metadata.OpsimMetaData['visitExpTime']] * n_records 

except KeyError: 

# V4 future proofing. 

visitExpTime = [self.obs_metadata.OpsimMetaData['visitExposureTime']] * n_records 

return np.array(visitExpTime)