[Shake-dev] Re: [Fwd: Re: Solution: regression distances and plotregr?]

Peter Lombard lombard at seismo.berkeley.edu
Thu Mar 8 01:54:09 GMT 2007


Jack,

Your explanation help clarify things for me; thanks.

I tried an experiment. I ran the plotregr program on the original station data
but with the depth set to 166.6, ten times the actual depth. I expected to see
that the shape of the regression curve woould change at this depth, but that
the data would not move on the plot. That would convince me that the
regression depends on depth, but that the distance value returned by the
Small_seg regression module is independent of source depth. And that is what
you see in the "pga_regr_deep" deep plot, attached.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pga_regr_deep.gif
Type: image/gif
Size: 777204 bytes
Desc: not available
Url : http://geohazards.usgs.gov/pipermail/shake-dev/attachments/20070307/4e2c2721/attachment.gif 
-------------- next part --------------

Also attached is the regression plot for the depth as resported, 16.6 Km.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pga_regr.gif
Type: image/gif
Size: 777204 bytes
Desc: not available
Url : http://geohazards.usgs.gov/pipermail/shake-dev/attachments/20070307/4e2c2721/attachment-0001.gif 
-------------- next part --------------

The shape of the "pga_regr_deep" plot got me thinking: if the regression drops
so low at close plotted distances compared to the data, what if I do the above
experiment at a depth shallowere than 166 km? So I tried it at 1.66 km; see
the attached "pga_regr_shallow" plot.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pga_regr_shallow.gif
Type: image/gif
Size: 777204 bytes
Desc: not available
Url : http://geohazards.usgs.gov/pipermail/shake-dev/attachments/20070307/4e2c2721/attachment-0002.gif 
-------------- next part --------------

This has the regression following the data more closely than for deeper
depths. What do seismologists think of this?

Note that I did not recompute the bias in any of these experiments. All I did
was to tell plotreg that the source depth was 1.66 or 166.6 (by editting the
<evid>/output/stationlist.xml file.)


---

I think I am convinced that plotreg is plotting both data and regression
values against the Joiner-Boore depth. That is good because it means the data
and regressions are being compared on an "equal basis", apples to apples. And
I think that means that when grind does its bias calculation, it is also
comparing station data and regression values using the same depth measure.

For people who expect to see the regression plotted in terms of its defined
distance measure (hypocentral distance for Small_Seg) it is confusing to see
the plot using a different distance measure. 

The difficulty, as Bruce pointed out, is that the regression modules don't
always make their "defining" distance measure available to external code. As
long as grind can compare data and regression values on an equal basis,
perhaps we should live with that limitiation. The reqression plots from
plotregr are not intendend to be published; thay are a tool to assisit in
evaluating ShakeMaps.

Pete


Jack Boatwright writes:
 > Pete,
 > 
 > Really, there is only one fault measure used in any of these calculations,
 > which is the
 > 3D distance from the station to the source.  Joyner-Boore calculate this
 > distance by using a fixed source depth, h, in the equation you quote below.
 > It's just that when they wrote the 1979 paper, they didn't want to be
 > bothered with assigning a source depth to each earthquake (centroid,
 > hypocentral, ...) and solved for a source depth that fit the whole data
 > set.  The Rjb is the closest horizontal distance to the surface projection
 > of the fault, but Rjb is always Pythag- orithmed to 3D distance in their
 > attenuation relation.  Another reason that Joyner & Boore could get away
 > with the single depth approximation was that they were looking at large
 > earthquakes, whose ruptures usually extended from 10 km depth or more to
 > the surface.
 > 
 > For moderate earthquakes, however, the rupture area is much smaller.  A
 > good rule of thumb is that a M4 event has a rupture length of a kilometer
 > or less.  Thus we expect that for these earthquakes source depth has a
 > stronger effect on attenuation.  Compare, for example, one of the shallow
 > Geysers events with the high near-field PGAs with one of the deep Livermore
 > events.  Generally, they have much different attenuations.
 > 
 > Remember that when Dave Wald modelled the Nisqually earthquake, he had to
 > go in and manually adjust the "fixed" source depth in the Joyner-Boore
 > formula to model the attenuation.  I think he ended up using h = 30 km or
 > so.
 > 
 > So the best approach would be to use the general distance term R =
 > sqrt(Rjb**2 + h**2).
 > Then for the Joyner-Boore attenuation relations in, HazusPGV, h is fixed to
 > whatever depth they have determined fits the data set best.  But if we use
 > Small_Seg for moderate earthquakes, then we use the actual source depth for
 > h.  This doesn't seem to be sufficient grounds for a big fight.
 > 
 > The only further question is how you want to plot the data in plotregr.
 > Dave Boore was impressed by your use of Rjb as the ordinate for the
 > Lafayette earthquake.  If you want to plot the small_seg attenuation curve,
 > however, it will not be a fixed function of Rjb, but will also vary in
 > shape with the source depth.  But that's okay.
 > 
 > 					take care,       Jack
 > 
 > 
 > 
 > At 1:58 PM -0800 3/7/07, Peter Lombard wrote:
 > >Peggy and Bruce,
 > >
 > >Bruce's fix should help us for events with M < 5.5. For larger events, we use
 > >Large_Seg.pm, another of Jack's regressions. Large_seg has similar problems:
 > >it uses hypocentral distance for PGA and PGV, distance to the projection of
 > >the hypocenter to the seismogenic(?) depth for PSA. And the depth is different
 > >for each of the three PSA periods.
 > >
 > >The more I look at ShakeMap codes, the more confused I get about distances
 > >used by regressions.
 > >
 > >Take the Small.pm regression for example. The comments at the top of the file
 > >say:
 > >
 > ># Regression form:
 > ># (same as  Boore, Joyner and Fumal, 1997, SRL, Volume 68, p. 128.
 > >#    log_10 (PGA,PSV) = B1 + B2(M-6) + B3(M-6)**2 - B5*ln(R) - Bv*ln(Vs/Va),
 > >#
 > >#    where R = sqrt(Rjb**2 + h**2)
 > >
 > >What does that tell me about which distance measure is used here?
 > >
 > >Then in the maximum() function there is this line:
 > >
 > >  my $Rjb = (defined $dist) ? $dist : dist_rjb($lat,$lon,$this);
 > >
 > >In other words, it uses Joiner-Boore distance unless it is given any other
 > >distance as an argument.
 > >
 > >But then it recomputes Rjb into some other distance measure in _psa_formula():
 > >
 > >  $R = sqrt($Rjb**2 + $c{h}**2);
 > >
 > >Here $c{h} = 6.0 for PGA, PGV, PSA. At least this is consistent with the
 > >comment at the top of the file. But it is really not clear to me that this is
 > >much better that the case of Small_Seg.pm.
 > >
 > >---
 > >
 > >It looks like I have opened a horrible can of worms, for which I
 > >apologise. Hopefully the exports, Bruce and Dave, can correct my confusion.
 > >
 > >Pete
 > >
 > >
 > >
 > >Peggy Hellweg writes:
 > > > Hi Bruce, Pete
 > > >
 > > > your suggestion for fixing it sounds good to me.
 > > >
 > > > Pete, may this help plotregr?
 > > >
 > > > Peggy
 > > >
 > > > -------- Original Message --------
 > > > Subject: Re: Solution: regression distances and plotregr?
 > > > Date: Wed, 7 Mar 2007 13:05:41 -0700
 > > > From: Jack Boatwright <boat at usgs.gov>
 > > > To: peggy at seismo.berkeley.edu, Peter Lombard <lombard at seismo.berkeley.edu>
 > > >
 > > > Fine.  NB- it works now.
 > > >
 > > >
 > > > At 12:03 PM -0800 3/7/07, Peggy Hellweg wrote:
 > > > >Hi Jack,
 > > > >
 > > > >is this an OK way to deal with the "regression distance problem" for
 > > > >Small_Seg?
 > > > >
 > > > >Peggy
 > > > >
 > > > >-------- Original Message --------
 > > > >Subject: Re: regression distances and plotregr
 > > > >Date: Wed, 7 Mar 2007 10:47:58 -0800
 > > > >From: Bruce Worden <bruce at gps.caltech.edu>
 > > > >To: Pete Lombard <lombard at seismo.berkeley.edu>,        Howard G Bundock
 > > > ><bundock at usgs.gov>
 > > > >CC: shake_dev at seismo.berkeley.edu, Peggy Hellweg
 > ><peggy at seismo.berkeley.edu>
 > > > >References: <17898.2102.936430.691029 at gargle.gargle.HOWL>
 > > > >
 > > > >Pete/Howard,
 > > > >
 > > > >I think I can fix Small_Seg to work for PGA and PGV (which means MMI,
 > > > >too) without much trouble.  The PSAs are the issue, but since this is
 > > > >a regression for small events, you probably don't need those.  For
 > > > >any event you wanted to run with -psa, you could use HazusPGV.
 > > > >
 > > > >Would that work for you?
 > > > >
 > > > >Bruce
 > > > >
 > > > >On Mar 3, 2007, at 3:43 PM, Peter Lombard wrote:
 > > > >
 > > > >> Bruce,
 > > > >>
 > > > >> I have found a problem in plotregr that I really don't know how to
 > > > >> solve. It
 > > > >> may also be a problem in grind; you will have to evaluate that!
 > > > >>
 > > > >> When I wrote plotregr, I intended it to plot the data values so
 > > > >> that they
 > > > >> could be directly compared with the regression for the event
 > > > >> magnitude. That
 > > > >> means that the event data should be plotted at the distance that the
 > > > >> regression module uses when it computes the regression values.
 > > > >>
 > > > >> Actual event data shows I have not achieved my goal. In NC, we use the
 > > > >> Small_Seg regression, which uses hypocentral distance for PGA and
 > > > >> PGV. A
 > > > >> recent event here had a hypocentral depth of 16.6 Km. A regression
 > > > >> plot
 > > > >> (attached) shows one station plotted at less than 4 km distance.
 > > > >> That's not
 > > > >> what I want.
 > > > >>
 > > > >> <pga_regr.gif>
 > > > >>
 > > > >> In plotregr, I try to use the distance function used by the
 > > > >> regression, using
 > > > >> the following code (borrowed from grind):
 > > > >>
 > > > >> #---------------------------------------------------------------------
 > > > >> --
 > > > >>     # Determine which regression to use, load it and create an object
 > > > >>     # Get functions for $DIST and $CUSTOM_SITECORR (custom distance
 > > > >> and
 > > > >>     # site correction functions)
 > > > >>
 > > > >> #---------------------------------------------------------------------
 > > > >> --
 > > > >>     my $regress = get_regression($src,$faultcoords);
 > > > >>     %amp_sd = $regress->sd();
 > > > >>
 > > > >>     $DIST = \&dist_rjb;
 > > > >>     $CUSTOM_SITECORR = undef;
 > > > >>
 > > > >>     if (defined $regress->{dist}) {
 > > > >> 	print "Using custom distance formula\n";
 > > > >> 	$DIST = $regress->{dist};
 > > > >>     }
 > > > >>
 > > > >> The problem is that most regressions don't provide access to the
 > > > >> function that
 > > > >> is used by the regression to compute distance. Some regression
 > > > >> modules use
 > > > >> different distance measures for the different PGA, PGV, PSA values.
 > > > >> Thus the
 > > > >> regressions' distance function needs an argument to specify for which
 > > > >> regression variable the distance is to be calculated.
 > > > >>
 > > > >> For the plotregr program, this leads to misleading plots at near
 > > > >> distances.
 > > > >>
 > > > >> Is this a problem for grind? Does it mean that the "wrong" distance
 > > > >> is being
 > > > >> used when comparing station data against the regression for the bias
 > > > >> computation?
 > > > >>
 > > > >> Or is am I mistaken in my understanding of how ShakeMap works?
 > > > >>
 > > > >> Pete
 > > > >
 > > > >
 > > > >--
 > > > >
 > > > >------------------------------------------------------------------
 > > > >Dr. Peggy Hellweg		University of California, Berkeley
 > > > >peggy at seismo.berkeley.edu 	Berkeley Seismological Laboratory
 > > > >Phone: 510-643-9449		213 McCone Hall # 4760
 > > > >Fax:   510-643-5811		Berkeley, CA  94720-4760
 > > > >
 > > > >There is no problem so great or grave that it cannot be much
 > > > >        diminished by a nice cup of tea. -- Bernard-Paul Heroux
 > > >
 > > >
 > > >
 > > >
 > > > --
 > > >
 > > > ------------------------------------------------------------------
 > > > Dr. Peggy Hellweg		University of California, Berkeley
 > > > peggy at seismo.berkeley.edu 	Berkeley Seismological Laboratory
 > > > Phone: 510-643-9449		213 McCone Hall # 4760
 > > > Fax:   510-643-5811		Berkeley, CA  94720-4760
 > > >
 > > > There is no problem so great or grave that it cannot be much
 > > >         diminished by a nice cup of tea. -- Bernard-Paul Heroux
 > > >
 > 
 > 
 > 



More information about the Shake-dev mailing list