[cig-commits] r11860 - cs/portal/trunk/seismo/SeismoWebPortal

leif at geodynamics.org leif at geodynamics.org
Wed Apr 23 17:02:35 PDT 2008


Author: leif
Date: 2008-04-23 17:02:35 -0700 (Wed, 23 Apr 2008)
New Revision: 11860

Modified:
   cs/portal/trunk/seismo/SeismoWebPortal/cmt.py
Log:
Fixed a bug found by Dr. Tromp during event search.  Sometimes there
is no space between the name and the year in the PDE line:

PDEW2007  1 13 19 37 32.70  47.0500  155.5300  10.0 5.6 4.7 EAST OF KURIL ISLANDS
    ^
vs.
MLI 1976  1  1  1 29 39.60 -28.6100 -177.6400  59.0 6.2 0.0 KERMADEC ISLANDS REGION                 

This bombed the CMT parser.


Modified: cs/portal/trunk/seismo/SeismoWebPortal/cmt.py
===================================================================
--- cs/portal/trunk/seismo/SeismoWebPortal/cmt.py	2008-04-23 20:28:18 UTC (rev 11859)
+++ cs/portal/trunk/seismo/SeismoWebPortal/cmt.py	2008-04-24 00:02:35 UTC (rev 11860)
@@ -86,20 +86,21 @@
             if len(tokens) == 1:
                 if tokens[0]:
                     cmtSolution = CMTSolution()
-                    tokens = tokens[0].split()
-                    cmtSolution.dataSource = tokens[0]
-                    cmtSolution.year = int(tokens[1])
-                    cmtSolution.month = int(tokens[2])
-                    cmtSolution.day = int(tokens[3])
-                    cmtSolution.hour = int(tokens[4])
-                    cmtSolution.minute = int(tokens[5])
-                    cmtSolution._second = float(tokens[6])
-                    cmtSolution.sourceLatitude = float(tokens[7])
-                    cmtSolution.sourceLongitude = float(tokens[8])
-                    cmtSolution.sourceDepth = float(tokens[9])
-                    cmtSolution.sourceMB = float(tokens[10])
-                    cmtSolution.sourceMs = float(tokens[11])
-                    cmtSolution.regionName = ' '.join(tokens[12:])
+                    pde = tokens[0].lstrip()
+                    cmtSolution.dataSource = pde[0:4].strip()
+                    cmtSolution.year = int(pde[4:8])
+                    tokens = pde[8:].split()
+                    cmtSolution.month = int(tokens[0])
+                    cmtSolution.day = int(tokens[1])
+                    cmtSolution.hour = int(tokens[2])
+                    cmtSolution.minute = int(tokens[3])
+                    cmtSolution._second = float(tokens[4])
+                    cmtSolution.sourceLatitude = float(tokens[5])
+                    cmtSolution.sourceLongitude = float(tokens[6])
+                    cmtSolution.sourceDepth = float(tokens[7])
+                    cmtSolution.sourceMB = float(tokens[8])
+                    cmtSolution.sourceMs = float(tokens[9])
+                    cmtSolution.regionName = ' '.join(tokens[10:])
             elif len(tokens) == 2:
                 attrName = tokens[0]
                 s = attrName.split()
@@ -164,7 +165,7 @@
         return """<img class=beachball width=49 height=49 src="http://www.seismology.harvard.edu/cgi-bin/webCMTgif/form?mrr=%(mrr)s&mtt=%(mtt)s&mpp=%(mpp)s&mrt=%(mrt)s&mrp=%(mrp)s&mtp=%(mtp)s">""" % mt
 
     def __str__(self):
-        return """%(dataSource)s %(year)04d %(month)2d %(day)2d %(hour)2d %(minute)2d %(_second)5.2f %(sourceLatitude)8.4f %(sourceLongitude)9.4f %(sourceDepth)5.1f %(sourceMB)3.1f %(sourceMs)3.1f %(regionName)s
+        return """%(dataSource)-04s%(year)04d %(month)2d %(day)2d %(hour)2d %(minute)2d %(_second)5.2f %(sourceLatitude)8.4f %(sourceLongitude)9.4f %(sourceDepth)5.1f %(sourceMB)3.1f %(sourceMs)3.1f %(regionName)s
 event name: %(eventName)11s
 time shift: %(timeShift)11.4f
 half duration: %(halfDuration)8.4f



More information about the cig-commits mailing list