def testGeofon(self): def is_the_haiti_event(ev): assert near(ev.magnitude, 7.2, 0.001) assert near(ev.lat, 18.37, 0.001) assert near(ev.lon, -72.55, 0.001) assert near(ev.depth, 17000., 1.) assert ev.region == 'Haiti Region' cat = catalog.Geofon() tmin = util.ctimegm('2010-01-12 21:50:00') tmax = util.ctimegm('2010-01-13 03:17:00') names = cat.get_event_names(time_range=(tmin, tmax), nmax=10, magmin=5.) assert len(names) > 0 ident = None for name in names: ev = cat.get_event(name) if ev.magnitude >= 7: is_the_haiti_event(ev) ident = ev.name assert ident is not None cat.flush() ev = cat.get_event(ident) is_the_haiti_event(ev)
def __init__(self, magmin=None, distmin=None, distmax=None, depthmin=None, depthmax=None, catalog=None): ''' Automatically download events from *catalog*. :param magmin: minimum magnitude :param distmin: minimum distance :param distamx: maximum distance :param depthmin: minimum depth :param depthmax: maximum depth :param catalog: instance of :py:class:`pyrocko.catalog.Earthquake` subclass. Default is Geofon catalog. ''' EventSelector.__init__(self) self.catalog = catalog or pyrocko_catalog.Geofon() self.magmin = magmin self.distmin = distmin self.distmax = distmax self.depthmin = depthmin self.depthmax = depthmax self.events = None
def load_gfz_event_list(filename): from pyrocko import catalog cat = catalog.Geofon() elist = [] f = open(filename, 'r') for line in f: e = cat.get_event(line.strip()) elist.append(e) f.close() return elist
def setup(self): self.catalogs = { 'Geofon': catalog.Geofon(), 'USGS/NEIC PDE': catalog.USGS('pde'), 'USGS/NEIC US': catalog.USGS('us'), 'Global-CMT': catalog.GlobalCMT(), 'Kinherd': catalog.Kinherd(), } catkeys = sorted(self.catalogs.keys()) self.set_name('Catalog Search') self.add_parameter(Choice('Catalog', 'catalog', catkeys[0], catkeys)) self.add_parameter(Param('Min Magnitude', 'magmin', 0, 0, 10)) self.set_live_update(False)
def catalog_search(options, conf, event_names): conf = conf['catalog_search_config'] gcmt = catalog.Geofon() for event in gcmt.iter_events(time_range=conf.timerange('time_range'), magmin=conf.minimum_magnitude): if conf.has('maximum_magnitude'): if conf.maximum_magnitude < event.magnitude: continue if conf.has('event_filter'): if not conf.event_filter(event): continue dump_event_infos(conf, make_event_name(event), event)
def call(self): '''Main work routine of the snuffling.''' # get time range visible in viewer viewer = self.get_viewer() tmin, tmax = viewer.get_time_range() # download event information from GEOFON web page # 1) get list of event names geofon = catalog.Geofon() event_names = geofon.get_event_names(time_range=(tmin, tmax), magmin=self._magmin) # 2) get event information and add a marker in the snuffler window for event_name in event_names: event = geofon.get_event(event_name) marker = EventMarker(event) self.add_markers([marker])
def testGeofon(self): cat = catalog.Geofon() tmin = util.ctimegm('2010-01-12 21:50:00') tmax = util.ctimegm('2010-01-13 03:17:00') names = cat.get_event_names( time_range=(tmin,tmax)) assert len(names) > 0 for name in names: ev = cat.get_event(name) if ev.magnitude >= 7: assert near(ev.magnitude, 7.2, 0.001) assert near(ev.lat, 18.37, 0.001) assert near(ev.lon, -72.55, 0.001) assert near(ev.depth, 17000., 1.) assert ev.region == 'Haiti Region'
from collections import defaultdict import numpy as num from pyrocko import trace, util, io, cake, catalog, automap, pile, model from pyrocko import orthodrome, weeding from pyrocko.client import fdsn from pyrocko.io import resp, enhanced_sacpz as epz, stationxml from beat import utility from beat import heart km = 1000. g_sites_available = sorted(fdsn.g_site_abbr.keys()) geofon = catalog.Geofon() usgs = catalog.USGS(catalog=None) gcmt = catalog.GlobalCMT() tfade_factor = 1.0 ffade_factors = 0.5, 1.5 fdsn.g_timeout = 60. class starfill(object): def __getitem__(self, k): return '*' def nice_seconds_floor(s):
def GeofonEventWebservice(searchparameter): cat = catalog.Geofon() getevents(searchparameter, cat)