Exemplo n.º 1
0
    def disambigue_sdr(self):
        r2d = 180. / math.pi
        d2r = 1. / r2d

        sdr = 'strike', 'dip', 'slip-rake'
        strike, dip, rake = [self._params[k] for k in sdr]
        (alpha, beta, gamma) = (dip * d2r, strike * d2r, -rake * d2r)
        (alpha, beta, gamma) = moment_tensor.unique_euler(alpha, beta, gamma)
        self._params['dip'] = alpha * r2d
        self._params['strike'] = beta * r2d
        self._params['slip-rake'] = -gamma * r2d
Exemplo n.º 2
0
    def disambigue_sdr(self):
        r2d = 180./math.pi
        d2r = 1./r2d

        sdr = 'strike', 'dip', 'slip-rake'
        strike, dip, rake = [ self._params[k] for k in sdr ]
        (alpha, beta, gamma) = (dip*d2r, strike*d2r, -rake*d2r)
        (alpha, beta, gamma) = moment_tensor.unique_euler(alpha,beta,gamma)
        self._params['dip']    = alpha*r2d
        self._params['strike'] = beta*r2d
        self._params['slip-rake']   = -gamma*r2d
Exemplo n.º 3
0
def beachball(source, filename, **conf_overrides):
    
    if 'strike' in source.keys() and 'dip' in source.keys() and 'slip-rake' in source.keys():
       
        r2d = 180./math.pi
        d2r = 1./r2d

        strike, dip, rake = source['strike'], source['dip'], source['slip-rake']        
        dip, strike, mrake = [r2d*xx for xx in moment_tensor.unique_euler(dip*d2r, strike*d2r, -rake*d2r)]
        rake = -mrake
                
        return beachball_mt(None, filename,  sdr=(strike,dip,rake), **conf_overrides)
    
    else:
        return []