Exemple #1
0
    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)
Exemple #2
0
    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
Exemple #3
0
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
Exemple #4
0
    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)
Exemple #5
0
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)
Exemple #6
0
    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])
Exemple #7
0
 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'
Exemple #8
0
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):
Exemple #9
0
def GeofonEventWebservice(searchparameter):

    cat = catalog.Geofon()
    getevents(searchparameter, cat)