Changeset 1213 for SHX


Ignore:
Timestamp:
06.01.2017 11:52:08 (3 years ago)
Author:
klaus
Message:

ml estimator returns dmperkm; changed debug output; small other fixes

Location:
SHX/trunk/SeismicHandler
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • SHX/trunk/SeismicHandler/cmdscripts/DETMAG.SHC

    r1212 r1213  
    88sdef magn 
    99sdef corrmagn 
     10sdef dmperkm 
    1011 
    1112param set origin_time #1 
     
    1516 
    1617phase clear_all 
     18magnitude clear_all 
    1719@THEOPHASE LOCAL ALL Pg,Sg,Pn,Sn 
    1820@MAGNITUDE DETERMINE ml ALL Pg,Sg,Pn,Sn 12 
    19 magnitude estimator ml all &magn &corrmagn 
     21magnitude estimator ml all &magn &corrmagn ;; &dmperkm 
    2022 
    21 echo detmag #1 #2 #3 "magn "corrmagn 
     23echo detmag #1 #2 #3 "magn "corrmagn "dmperkm 
    2224 
    2325return 
  • SHX/trunk/SeismicHandler/cmdscripts/READ_GERMAN_STATIONS.SHC

    r1212 r1213  
    1010fdsnws |"lat|,|"lon|,|6.| * * ?h? #1 #2 /addr=eth /excludenets=z3,s 
    1111fdsnws |"lat|,|"lon|,|6.| * * ?h? #1 #2 /addr=lmu 
    12 fdsnws |"lat|,|"lon|,|6.| * * ?h? #1 #2 /addr=resif 
     12fdsnws |"lat|,|"lon|,|6.| * * ?h? #1 #2 /addr=resif /excludenets=z3 
    1313fdsnws |"lat|,|"lon|,|6.| * * ?h? #1 #2 /addr=orfeus 
    14 fdsnws |"lat|,|"lon|,|6.| * * ?h? #1 #2 /addr=gfz 
     14fdsnws |"lat|,|"lon|,|6.| * * ?h? #1 #2 /addr=gfz /excludenets=z3 
    1515chanselect hh,eh,bh ,00,10,11 
    1616meta all complete /addr=gfz 
  • SHX/trunk/SeismicHandler/commands/magnitude.py

    r1212 r1213  
    110110     Delete ml magnitude on station gr.gra1. 
    111111    """ 
    112     numberOfParameters = [1,2,3,4,5,6] 
     112    numberOfParameters = [1,2,3,4,5,6,7] 
    113113    parameterQueries = [ 
    114114        { 
     
    298298                        degdist ) 
    299299                    if m == None: 
    300                         print "dbg: problem with mag (sta,start,end,degdist):",\ 
    301                             trc.stats.station, stime, etime, degdist 
     300                        #print "dbg: problem with mag (sta,start,end,degdist):",\ 
     301                        #    trc.stats.station, stime, etime, degdist 
    302302                        continue 
    303303                    if mmax == None or m > mmax: 
     
    323323            else: 
    324324                set_infodisplay( "determined %d %s values" % (magcnt,magtype) ) 
     325            print "dbg: determined %d %s values" % (magcnt,magtype) 
    325326        elif subcmd == 'estimator': 
    326327            ap = AnalysisPar() 
     
    347348                        stalist.append( sname ) 
    348349            me = MlEstimator() 
    349             magest, corrmag = me.estimateMl( reslist ) 
    350             magest, corrmag = me.estimateMl( reslist, magnstart=magest ) 
     350            magest, corrmag, dmperkm = me.estimateMl( reslist ) 
     351            magest, corrmag, dmperkm = me.estimateMl( reslist, magnstart=magest ) 
     352            if magest == None: 
     353                print "dbg: estimator got no magnitude, had %d points" % len(reslist) 
     354                return 
    351355            if len(self.parameters) > 3: 
    352356                magsymb = self.parameters[3][1:] 
     
    362366                picfile = self.parameters[5].lower() 
    363367                me.plot( picfile ) 
     368            if len(self.parameters) > 6: 
     369                magsymb = self.parameters[6][1:] 
     370                self.symbols.set( magsymb, dmperkm ) 
    364371        else: 
    365372            raise ShxError( 
     
    436443            hlist.append( t ) 
    437444        if len(hlist) != 2: 
    438             print "No magnitude for %s: got %d traces" \ 
    439                 % (trc.stats.station,len(hlist)) 
     445            #print "No magnitude for %s: got %d traces" \ 
     446            #    % (trc.stats.station,len(hlist)) 
    440447            return None 
    441448        ampl = [] 
     
    608615            magnstart = self.magnApprox( values ) 
    609616            if magnstart == None: 
    610                 return (None,None) 
     617                print "dbg: estimator: start magnitude failed" 
     618                return (None,None,None) 
    611619        mindist = 30. 
    612620        maxdist = self.rangestart + (magnstart-1.)*self.rangeinc 
     621        if (maxdist-mindist) < 80.: 
     622            print "dbg: estimator: fixed small distance range", maxdist 
     623            maxdist = mindist + 80. 
    613624        # filter out outliers with magn > 3*stddev 
    614625        allmags = np.array( zip(*values)[2] ) 
     
    629640            else: 
    630641                mv.append( magn ) 
     642        if len(dv) < 7: 
     643            print "dbg: estimator: had only %d in distance window:" % len(dv), mindist, maxdist 
     644            return (None,None,None) 
    631645        dmperkm, zeromag = np.polyfit( np.array(dv), np.array(mv), 1 ) 
    632646        corrmag = zeromag-self.secondOrderCorrection(zeromag,dmperkm) 
    633647        self.plotdata = (values,mindist,maxdist,zeromag,dmperkm,corrmag) 
    634         return (zeromag,corrmag) 
     648        return (zeromag,corrmag,dmperkm) 
    635649             
    636650    # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
Note: See TracChangeset for help on using the changeset viewer.