Skip to content
Snippets Groups Projects
Commit fe209273 authored by Hal Simpson's avatar Hal Simpson
Browse files

moved to geomagio

parent 82d010b0
No related branches found
No related tags found
No related merge requests found
"""Factory that loads metadata for an observatory"""
# default metadata for the 14 USGS observatories.
DEFAULT_METADATA = {
'BDT': {
'metadata': {
'station_name': 'Boulder Test',
'agency_name': 'United States Geological Survey (USGS)',
'geodetic_latitude': '40.137',
'geodetic_longitude': '254.764',
'elevation': '1682',
'sensor_orientation': 'HDZF',
'sensor_sampling_rate': 0.01,
'declination_base': 5527,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45) ',
'filter_comments': ['Vector 1-minute values are computed' +
' from 1-second values using the INTERMAGNET gaussian' +
' filter centered on the minute. Scalar 1-minute values' +
' are computed from 1-second values using the' +
' INTERMAGNET gaussian filter centered on the minute. ']
},
'second': {
'data_interval_type': 'Average 1-Second'
}
}
},
'BOU': {
'metadata': {
'station_name': 'Boulder',
'agency_name': 'United States Geological Survey (USGS)',
'geodetic_latitude': '40.137',
'geodetic_longitude': '254.764',
'elevation': '1682',
'sensor_orientation': 'HDZF',
'sensor_sampling_rate': 0.01,
'declination_base': 5527,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45) ',
'filter_comments': ['Vector 1-minute values are computed' +
' from 1-second values using the INTERMAGNET gaussian' +
' filter centered on the minute. Scalar 1-minute values' +
' are computed from 1-second values using the' +
' INTERMAGNET gaussian filter centered on the minute. ']
},
'second': {
'data_interval_type': 'Average 1-Second'
}
}
},
'BRW': {
'metadata': {
'station_name': 'Barrow',
'agency_name': 'United States Geological Survey (USGS)',
'geodetic_latitude': '71.322',
'geodetic_longitude': '203.378',
'elevation': '12',
'sensor_orientation': 'HDZF',
'sensor_sampling_rate': 0.01,
'declination_base': 16000,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'data_interval_type': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45) ',
'filter_comments': ['Vector 1-minute values are computed' +
' from 1-second values using the INTERMAGNET gaussian' +
' filter centered on the minute. Scalar 1-minute values' +
' are computed from 1-second values using the' +
' INTERMAGNET gaussian filter centered on the minute. ']
},
'second': {
'data_interval_type': 'Average 1-Second'
}
}
},
'BSL': {
'metadata': {
'station_name': 'Stennis Space Center',
'agency_name': 'United States Geological Survey (USGS)',
'geodetic_latitude': '30.350',
'geodetic_longitude': '270.365',
'elevation': '8',
'sensor_orientation': 'HDZF',
'sensor_sampling_rate': 0.01,
'declination_base': 1530,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45) ',
'filter_comments': ['Vector 1-minute values are computed' +
' from 1-second values using the INTERMAGNET gaussian' +
' filter centered on the minute. Scalar 1-minute values' +
' are computed from 1-second values using the' +
' INTERMAGNET gaussian filter centered on the minute. ']
},
'second': {
'data_interval_type': 'Average 1-Second'
}
}
},
'CMO': {
'metadata': {
'station_name': 'College',
'agency_name': 'United States Geological Survey (USGS)',
'geodetic_latitude': '64.874',
'geodetic_longitude': '212.140',
'elevation': '197',
'sensor_orientation': 'HDZF',
'sensor_sampling_rate': 0.01,
'declination_base': 16876,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
}
},
'DED': {
'metadata': {
'station_name': 'Deadhorse',
'agency_name': 'United States Geological Survey (USGS)',
'geodetic_latitude': '70.356',
'geodetic_longitude': '211.207',
'elevation': '10',
'sensor_orientation': 'HDZF',
'sensor_sampling_rate': 0.01,
'declination_base': 13200,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45) ',
'filter_comments': ['Vector 1-minute values are computed' +
' from 1-second values using the INTERMAGNET gaussian' +
' filter centered on the minute. Scalar 1-minute values' +
' are computed from 1-second values using the' +
' INTERMAGNET gaussian filter centered on the minute. ']
},
'second': {
'data_interval_type': 'Average 1-Second'
}
}
},
'FRD': {
'metadata': {
'station_name': 'Fredericksburg',
'agency_name': 'United States Geological Survey (USGS)',
'geodetic_latitude': '38.205',
'geodetic_longitude': '282.627',
'elevation': '69',
'sensor_orientation': 'HDZF',
'sensor_sampling_rate': 0.01,
'declination_base': 210942,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45) ',
'filter_comments': ['Vector 1-minute values are computed' +
' from 1-second values using the INTERMAGNET gaussian' +
' filter centered on the minute. Scalar 1-minute values' +
' are computed from 1-second values using the' +
' INTERMAGNET gaussian filter centered on the minute. ']
},
'second': {
'data_interval_type': 'Average 1-Second'
}
}
},
'FRN': {
'metadata': {
'station_name': 'Fresno',
'agency_name': 'United States Geological Survey (USGS)',
'geodetic_latitude': '37.091',
'geodetic_longitude': '240.282',
'elevation': '331',
'sensor_orientation': 'HDZF',
'sensor_sampling_rate': 0.01,
'declination_base': 9250,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45) ',
'filter_comments': ['Vector 1-minute values are computed' +
' from 1-second values using the INTERMAGNET gaussian' +
' filter centered on the minute. Scalar 1-minute values' +
' are computed from 1-second values using the' +
' INTERMAGNET gaussian filter centered on the minute. ']
},
'second': {
'data_interval_type': 'Average 1-Second'
}
}
},
'GUA': {
'metadata': {
'station_name': 'Guam',
'agency_name': 'United States Geological Survey (USGS)',
'geodetic_latitude': '13.588',
'geodetic_longitude': '144.867',
'elevation': '140',
'sensor_orientation': 'HDZF',
'sensor_sampling_rate': 0.01,
'declination_base': 1157,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45) ',
'filter_comments': ['Vector 1-minute values are computed' +
' from 1-second values using the INTERMAGNET gaussian' +
' filter centered on the minute. Scalar 1-minute values' +
' are computed from 1-second values using the' +
' INTERMAGNET gaussian filter centered on the minute. ']
},
'second': {
'data_interval_type': 'Average 1-Second'
}
}
},
'HON': {
'metadata': {
'station_name': 'Honolulu',
'agency_name': 'United States Geological Survey (USGS)',
'geodetic_latitude': '21.316',
'geodetic_longitude': '202.000',
'elevation': '4',
'sensor_orientation': 'HDZF',
'sensor_sampling_rate': 0.01,
'declination_base': 6920,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45) ',
'filter_comments': ['Vector 1-minute values are computed' +
' from 1-second values using the INTERMAGNET gaussian' +
' filter centered on the minute. Scalar 1-minute values' +
' are computed from 1-second values using the' +
' INTERMAGNET gaussian filter centered on the minute. ']
},
'second': {
'data_interval_type': 'Average 1-Second'
}
}
},
'NEW': {
'metadata': {
'station_name': 'Newport',
'agency_name': 'United States Geological Survey (USGS)',
'geodetic_latitude': '48.265',
'geodetic_longitude': '242.878',
'elevation': '770',
'sensor_orientation': 'HDZF',
'sensor_sampling_rate': 0.01,
'declination_base': 12133,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45) ',
'filter_comments': ['Vector 1-minute values are computed' +
' from 1-second values using the INTERMAGNET gaussian' +
' filter centered on the minute. Scalar 1-minute values' +
' are computed from 1-second values using the' +
' INTERMAGNET gaussian filter centered on the minute. ']
},
'second': {
'data_interval_type': 'Average 1-Second'
}
}
},
'SHU': {
'metadata': {
'station_name': 'Shumagin',
'agency_name': 'United States Geological Survey (USGS)',
'geodetic_latitude': '55.348',
'geodetic_longitude': '199.538',
'elevation': '80',
'sensor_orientation': 'HDZF',
'sensor_sampling_rate': 0.01,
'declination_base': 13974,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45) ',
'filter_comments': ['Vector 1-minute values are computed' +
' from 1-second values using the INTERMAGNET gaussian' +
' filter centered on the minute. Scalar 1-minute values' +
' are computed from 1-second values using the' +
' INTERMAGNET gaussian filter centered on the minute. ']
},
'second': {
'data_interval_type': 'Average 1-Second'
}
}
},
'SIT': {
'metadata': {
'station_name': 'Sitka',
'agency_name': 'United States Geological Survey (USGS)',
'geodetic_latitude': '57.058',
'geodetic_longitude': '224.674',
'elevation': '24',
'sensor_orientation': 'HDZF',
'sensor_sampling_rate': 0.01,
'declination_base': 16523,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45) ',
'filter_comments': ['Vector 1-minute values are computed' +
' from 1-second values using the INTERMAGNET gaussian' +
' filter centered on the minute. Scalar 1-minute values' +
' are computed from 1-second values using the' +
' INTERMAGNET gaussian filter centered on the minute. ']
},
'second': {
'data_interval_type': 'Average 1-Second'
}
}
},
'SJG': {
'metadata': {
'station_name': 'San Juan',
'agency_name': 'United States Geological Survey (USGS)',
'geodetic_latitude': '18.113',
'geodetic_longitude': '293.849',
'elevation': '424',
'sensor_orientation': 'HDZF',
'sensor_sampling_rate': 0.01,
'declination_base': 209800,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45) ',
'filter_comments': ['Vector 1-minute values are computed' +
' from 1-second values using the INTERMAGNET gaussian' +
' filter centered on the minute. Scalar 1-minute values' +
' are computed from 1-second values using the' +
' INTERMAGNET gaussian filter centered on the minute. ']
},
'second': {
'data_interval_type': 'Average 1-Second'
}
}
},
'TUC': {
'metadata': {
'station_name': 'Tucson',
'agency_name': 'United States Geological Survey (USGS)',
'geodetic_latitude': '32.174',
'geodetic_longitude': '249.267',
'elevation': '946',
'sensor_orientation': 'HDZF',
'sensor_sampling_rate': 0.01,
'declination_base': 7258,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45) ',
'filter_comments': ['Vector 1-minute values are computed' +
' from 1-second values using the INTERMAGNET gaussian' +
' filter centered on the minute. Scalar 1-minute values' +
' are computed from 1-second values using the' +
' INTERMAGNET gaussian filter centered on the minute. ']
},
'second': {
'data_interval_type': 'Average 1-Second'
}
}
},
'BLC': {
'metadata': {
'station_name': 'Bake Lake',
'agency_name': 'Geological Survey of Canada (GSC)',
'geodetic_latitude': '64.300',
'geodetic_longitude': '264.000',
'elevation': '0',
'sensor_orientation': 'XYZF',
'reported': 'XYZF',
'sensor_sampling_rate': 0.01,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45)'
},
'second': {
'data_interval_type': ''
}
}
},
'BRD': {
'metadata': {
'station_name': 'Brandon',
'agency_name': 'Geological Survey of Canada (GSC)',
'geodetic_latitude': '49.600',
'geodetic_longitude': '262.900',
'elevation': '0',
'sensor_orientation': 'XYZF',
'reported': 'XYZF',
'sensor_sampling_rate': 0.01,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45)'
},
'second': {
'data_interval_type': ''
}
}
},
'CBB': {
'metadata': {
'station_name': 'Cambridge Bay',
'agency_name': 'Geological Survey of Canada (GSC)',
'geodetic_latitude': '69.200',
'geodetic_longitude': '255.000',
'elevation': '0',
'sensor_orientation': 'XYZF',
'reported': 'XYZF',
'sensor_sampling_rate': 0.01,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45)'
},
'second': {
'data_interval_type': ''
}
}
},
'EUA': {
'metadata': {
'station_name': 'Eureka',
'agency_name': 'Geological Survey of Canada (GSC)',
'geodetic_latitude': '55.300',
'geodetic_longitude': '282.300',
'elevation': '0',
'sensor_orientation': 'XYZF',
'reported': 'XYZF',
'sensor_sampling_rate': 0.01,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45)'
},
'second': {
'data_interval_type': ''
}
}
},
'FCC': {
'metadata': {
'station_name': 'Fort Churchill',
'agency_name': 'Geological Survey of Canada (GSC)',
'geodetic_latitude': '58.800',
'geodetic_longitude': '265.900',
'elevation': '0',
'sensor_orientation': 'XYZF',
'reported': 'XYZF',
'sensor_sampling_rate': 0.01,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45)'
},
'second': {
'data_interval_type': ''
}
}
},
'HAD': {
'metadata': {
'station_name': 'Hartland',
'agency_name': 'British Geological Survey (BGS)',
'geodetic_latitude': '51.000',
'geodetic_longitude': '355.500',
'elevation': '0',
'sensor_orientation': 'HDZF',
'reported': 'HDZF',
'sensor_sampling_rate': 0.01,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45)'
},
'second': {
'data_interval_type': ''
}
}
},
'HER': {
'metadata': {
'station_name': 'Hermanus',
'agency_name': 'National Research Foundation',
'geodetic_latitude': '-34.400',
'geodetic_longitude': '19.200',
'elevation': '0',
'sensor_orientation': 'HDZF',
'reported': 'HDZF',
'sensor_sampling_rate': 0.01,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45)'
},
'second': {
'data_interval_type': ''
}
}
},
'IQA': {
'metadata': {
'station_name': 'Iqaluit',
'agency_name': 'Geological Survey of Canada (GSC)',
'geodetic_latitude': '63.800',
'geodetic_longitude': '291.500',
'elevation': '0',
'sensor_orientation': 'XYZF',
'reported': 'XYZF',
'sensor_sampling_rate': 0.01,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45)'
},
'second': {
'data_interval_type': ''
}
}
},
'MEA': {
'metadata': {
'station_name': 'Meanook',
'agency_name': 'Geological Survey of Canada (GSC)',
'geodetic_latitude': '54.600',
'geodetic_longitude': '246.700',
'elevation': '0',
'sensor_orientation': 'XYZF',
'reported': 'XYZF',
'sensor_sampling_rate': 0.01,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45)'
},
'second': {
'data_interval_type': ''
}
}
},
'OTT': {
'metadata': {
'station_name': 'Ottowa',
'agency_name': 'Geological Survey of Canada (GSC)',
'geodetic_latitude': '45.400',
'geodetic_longitude': '284.500',
'elevation': '0',
'sensor_orientation': 'XYZF',
'reported': 'XYZF',
'sensor_sampling_rate': 0.01,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45)'
},
'second': {
'data_interval_type': ''
}
}
},
'RES': {
'metadata': {
'station_name': 'Resolute Bay',
'agency_name': 'Geological Survey of Canada (GSC)',
'geodetic_latitude': '74.700',
'geodetic_longitude': '265.100',
'elevation': '0',
'sensor_orientation': 'XYZF',
'reported': 'XYZF',
'sensor_sampling_rate': 0.01,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45)'
},
'second': {
'data_interval_type': ''
}
}
},
'SNK': {
'metadata': {
'station_name': 'Sanikiluaq',
'agency_name': 'Geological Survey of Canada (GSC)',
'geodetic_latitude': '62.400',
'geodetic_longitude': '245.500',
'elevation': '0',
'sensor_orientation': 'XYZF',
'reported': 'XYZF',
'sensor_sampling_rate': 0.01,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45)'
},
'second': {
'data_interval_type': ''
}
}
},
'STJ': {
'metadata': {
'station_name': 'Saint John\'s',
'agency_name': 'Geological Survey of Canada (GSC)',
'geodetic_latitude': '47.600',
'geodetic_longitude': '307.300',
'elevation': '0',
'sensor_orientation': 'XYZF',
'reported': 'XYZF',
'sensor_sampling_rate': 0.01,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45)'
},
'second': {
'data_interval_type': ''
}
}
},
'VIC': {
'metadata': {
'station_name': 'Victoria',
'agency_name': 'Geological Survey of Canada (GSC)',
'geodetic_latitude': '48.600',
'geodetic_longitude': '236.600',
'elevation': '0',
'sensor_orientation': 'XYZF',
'reported': 'XYZF',
'sensor_sampling_rate': 0.01,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45)'
},
'second': {
'data_interval_type': ''
}
}
},
'YKC': {
'metadata': {
'station_name': 'Yellow Knife',
'agency_name': 'Geological Survey of Canada (GSC)',
'geodetic_latitude': '62.400',
'geodetic_longitude': '245.500',
'elevation': '0',
'sensor_orientation': 'XYZF',
'reported': 'XYZF',
'sensor_sampling_rate': 0.01,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45)'
},
'second': {
'data_interval_type': ''
}
}
}
}
DEFAULT_INTERVAL_SPECIFIC = {
'minute': {'data_interval_type': 'filtered 1-minute (00:15-01:45) '},
'second': {'data_interval_type': 'Average 1-Second'}
}
class ObservatoryMetadata(object):
"""Helper class for providing all the metadata needed for a geomag
timeseries.
Notes
-----
Currently the only method is set_metadata. Eventually this will probably
pull from a database, or maybe a config file.
"""
def __init__(self, metadata=None, interval_specific=None):
self.metadata = metadata or DEFAULT_METADATA
self.interval_specific = interval_specific or \
DEFAULT_INTERVAL_SPECIFIC
def set_metadata(self, stats, observatory, channel, type, interval):
"""Set timeseries metadata (aka a traces stats)
Parameters
----------
stats : obspy.core.trace.stats
the class associated with a given obspy trace, which contains
it's metadata
observatory : string
the observatory code to look up.
channel : str
single character channel {H, E, D, Z, F}
type : {'variation', 'quasi-definitive'}
data type.
interval : {'minute', 'second'}
data interval.
Returns
-------
obspy.core.trace.stats
the combined stats and the default metadata.
"""
stats['channel'] = channel
stats['data_interval'] = interval
stats['data_type'] = type
# copy in standard metadata
metadata = self.metadata[observatory]['metadata']
for key in metadata:
stats[key] = metadata[key]
# copy in interval specific metadata
interval_specific = self.interval_specific
if 'interval_specific' in self.metadata[observatory]:
interval_specific = \
self.metadata[observatory]['interval_specific']
# stats['data_interval_type'] = data_interval_type[interval]
for key in interval_specific[interval]:
stats[key] = interval_specific[interval][key]
"""Tests for ObservatoryMetadata.py"""
from ObservatoryMetadata import ObservatoryMetadata
from nose.tools import assert_equals
import obspy.core
METADATA = {
'BOU': {
'metadata': {
'station_name': 'Boulder',
'agency_name': 'United States Geological Survey (USGS)',
'geodetic_latitude': '-90',
'geodetic_longitude': '-180',
'elevation': '-1000',
'sensor_orientation': 'HDZF',
'sensor_sampling_rate': '0.01 second',
'declination_base': 20000,
'is_gin': False,
'is_intermagnet': False,
'conditions_of_use': 'The Conditions of Use for data provided' +
' through INTERMAGNET and acknowledgement templates' +
' can be found at www.intermagnet.org'
},
'interval_specific': {
'minute': {
'data_interval_type': 'filtered 1-minute (00:15-01:45) ',
'filter_comments': ['Vector 1-minute values are computed' +
' from 1-second values using the INTERMAGNET gaussian' +
' filter centered on the minute. Scalar 1-minute values' +
' are computed from 1-second values using the' +
' INTERMAGNET gaussian filter centered on the minute. ']
},
'second': {
'data_interval_type': 'Average 1-Second'
}
}
}
}
DATA_INTERVAL_TYPE = {
'minute': {'data_interval_type': 'filtered 1-minute (00:29-01:30) '},
'second': {'data_interval_type': 'filtered 1-Second'}
}
def test_set_metadata():
"""geomagio.edge.ObservatoryMetadata_test.test_set_metadata()
"""
# Test set_metadata by passing in a stats class, and looking
# for parameters that are both passed in, and aquired from the default
# metadata.
observatorymetadata = ObservatoryMetadata()
stats = obspy.core.Stats()
stats.channel = 'MVH'
stats.location = 'R0'
stats.data_interval = 'second'
stats.data_type = 'quasi-definitive'
observatorymetadata.set_metadata(stats, 'BOU', 'MVH',
'quasi-definitive', 'second')
assert_equals(stats['declination_base'], 5527)
# Test custom metadata
stats = obspy.core.Stats()
observatorymetadata = ObservatoryMetadata(METADATA, DATA_INTERVAL_TYPE)
observatorymetadata.set_metadata(stats, 'BOU', 'MVH',
'quasi-definitive', 'second')
assert_equals(stats['declination_base'], 20000)
print stats
assert_equals(stats['data_interval_type'], 'Average 1-Second')
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment