|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.opensha.sha.imr.AbstractIMR
org.opensha.sha.imr.AttenuationRelationship
org.opensha.sha.imr.attenRelImpl.BJF_1997_AttenRel
public class BJF_1997_AttenRel
Title: BJF_1997_AttenRel
Description: This implements the Attenuation Relationship developed by Boore, Joyner & Fumal (1997, Seismological Research Letters, vol 68, num 1, pp 128-153)
Supported Intensity-Measure Parameters:
Other Independent Parameters:
| Field Summary | |
|---|---|
protected Hashtable |
coefficients
Hashtable of coefficients for the supported intensityMeasures |
protected static Double |
DISTANCE_JB_WARN_MAX
|
protected static Double |
DISTANCE_JB_WARN_MIN
Joyner-Boore Distance parameter |
static String |
FLT_TYPE_REVERSE
|
static String |
FLT_TYPE_STRIKE_SLIP
|
static String |
FLT_TYPE_UNKNOWN
|
protected static Double |
MAG_WARN_MAX
|
protected static Double |
MAG_WARN_MIN
|
static String |
NAME
|
static String |
SHORT_NAME
|
protected static Double |
VS30_WARN_MAX
|
protected static Double |
VS30_WARN_MIN
|
| Fields inherited from class org.opensha.sha.imr.AbstractIMR |
|---|
eqkRupture, eqkRuptureParams, EXCEED_PROB_DEFAULT, EXCEED_PROB_INFO, EXCEED_PROB_MAX, EXCEED_PROB_MIN, EXCEED_PROB_NAME, exceedProbParam, im, intensityMeasureChanged, listener, otherParams, propagationEffectParams, site, siteParams, supportedIMParams, url_info_string, XML_METADATA_IMT_NAME, XML_METADATA_NAME, XML_METADATA_SITE_PARAMETERS_NAME |
| Fields inherited from interface org.opensha.commons.metadata.XMLSaveable |
|---|
XML_METADATA_NAME |
| Constructor Summary | |
|---|---|
BJF_1997_AttenRel(ParameterChangeWarningListener listener)
No-Arg constructor. |
|
| Method Summary | |
|---|---|
URL |
getInfoURL()
This provides a URL where more info on this model can be obtained |
double |
getMean()
Calculates the mean of the exceedence probability distribution. |
String |
getName()
get the name of this IMR |
String |
getShortName()
Returns the Short Name of each AttenuationRelationship |
double |
getStdDev()
This returns the standard deviation (stdDev) of the intensity-measure level for the current set of parameters. |
protected void |
initCoefficients()
This creates the hashtable of coefficients for the supported intensityMeasures (im). |
protected void |
initEqkRuptureParams()
Creates the two Potential Earthquake parameters (magParam and fltTypeParam) and adds them to the eqkRuptureParams list. |
protected void |
initIndependentParamLists()
This creates the lists of independent parameters that the various dependent parameters (mean, standard deviation, exceedance probability, and IML at exceedance probability) depend upon. |
protected void |
initOtherParams()
Creates other Parameters that the mean or stdDev depends upon, such as the Component or StdDevType parameters. |
protected void |
initPropagationEffectParams()
Creates the single Propagation Effect parameter and adds it to the propagationEffectParams list. |
protected void |
initSiteParams()
Creates the Vs30 site parameter and adds it to the siteParams list. |
protected void |
initSupportedIntensityMeasureParams()
Creates the two supported IM parameters (PGA and SA), as well as the independenParameters of SA (periodParam and dampingParam) and adds them to the supportedIMParams list. |
void |
setEqkRupture(EqkRupture eqkRupture)
This sets the eqkRupture related parameters (magParam and fltTypeParam) based on the eqkRupture passed in. |
protected void |
setFaultTypeFromRake(double rake)
Determines the style of faulting from the rake angle (which comes from the eqkRupture object) and fills in the value of the fltTypeParam. |
void |
setParamDefaults()
This sets the defaults for all the parameters. |
protected void |
setPropagationEffectParams()
This calculates the Distance JB propagation effect parameter based on the current site and eqkRupture. |
void |
setSite(Site site)
This sets the site-related parameter (vs30Param) based on what is in the Site object passed in (the Site object must have a parameter with the same name as that in vs30Param). |
protected void |
updateCoefficients()
This function determines which set of coefficients in the HashMap are to be used given the current intensityMeasure (im) Parameter. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface java.lang.Comparable |
|---|
compareTo |
| Field Detail |
|---|
public static final String NAME
public static final String SHORT_NAME
public static final String FLT_TYPE_UNKNOWN
public static final String FLT_TYPE_STRIKE_SLIP
public static final String FLT_TYPE_REVERSE
protected static final Double VS30_WARN_MIN
protected static final Double VS30_WARN_MAX
protected static final Double MAG_WARN_MIN
protected static final Double MAG_WARN_MAX
protected static final Double DISTANCE_JB_WARN_MIN
protected static final Double DISTANCE_JB_WARN_MAX
protected Hashtable coefficients
| Constructor Detail |
|---|
public BJF_1997_AttenRel(ParameterChangeWarningListener listener)
| Method Detail |
|---|
protected void setFaultTypeFromRake(double rake)
throws InvalidRangeException
rake - in degrees
InvalidRangeException - If not valid rake angle
public void setEqkRupture(EqkRupture eqkRupture)
throws InvalidRangeException
setEqkRupture in interface IntensityMeasureRelationshipsetEqkRupture in class AbstractIMReqkRupture - The new eqkRupture value
InvalidRangeException - thrown if rake is out of bounds
public void setSite(Site site)
throws ParameterException
setSite in interface IntensityMeasureRelationshipsetSite in class AbstractIMRsite - The new site value which contains a Vs30 Parameter
ParameterException - Thrown if the Site object doesn't contain a
Vs30 parameterprotected void setPropagationEffectParams()
setPropagationEffectParams in class AttenuationRelationship
protected void updateCoefficients()
throws ParameterException
update instead of set, because set is so common
to java bean fields, i.e. getters and setters, that set() usually implies
passing in a new value to the java bean field. I prefer update or refresh
to functions that change internal values internally
ParameterException
public double getMean()
throws IMRException
double mean = b1 +
coeff.b2 * ( mag - 6 ) +
coeff.b3 * ( Math.pow( ( mag - 6 ), 2 ) ) +
coeff.b5 * ( Math.log( Math.pow( ( distanceJB * distanceJB + coeff.h * coeff.h ), 0.5 ) ) ) +
coeff.bv * ( Math.log( vs30 / coeff.va ) )
IMRException
public double getStdDev()
throws IMRException
ScalarIMR
IMRExceptionpublic void setParamDefaults()
IntensityMeasureRelationship
protected void initIndependentParamLists()
protected void initSiteParams()
initSiteParams in class AttenuationRelationshipprotected void initEqkRuptureParams()
initEqkRuptureParams in class AttenuationRelationshipprotected void initPropagationEffectParams()
initPropagationEffectParams in class AttenuationRelationshipprotected void initSupportedIntensityMeasureParams()
initSupportedIntensityMeasureParams in class AttenuationRelationshipprotected void initOtherParams()
initOtherParams in class AttenuationRelationshippublic String getName()
getName in interface NamedgetName in interface IntensityMeasureRelationshipgetName in class AbstractIMRpublic String getShortName()
protected void initCoefficients()
public URL getInfoURL()
throws MalformedURLException
getInfoURL in interface IntensityMeasureRelationshipgetInfoURL in class AbstractIMRMalformedURLException - if returned URL is not a valid URL.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||