org.opensha.sha.earthquake.griddedForecast
Class STEP_CombineForecastModels

java.lang.Object
  extended by org.opensha.sha.earthquake.griddedForecast.GriddedHypoMagFreqDistForecast
      extended by org.opensha.sha.earthquake.griddedForecast.AfterShockHypoMagFreqDistForecast
          extended by org.opensha.sha.earthquake.griddedForecast.STEP_CombineForecastModels
All Implemented Interfaces:
java.io.Serializable, java.lang.Comparable<BaseERF>, java.util.EventListener, Named, ParameterChangeListener, BaseERF, HypoMagFreqDistAtMultLocsAPI

public class STEP_CombineForecastModels
extends AfterShockHypoMagFreqDistForecast

Title:

Description:

Copyright: Copyright (c) 2002

Company:

Version:
1.0
Author:
not attributable
See Also:
Serialized Form

Field Summary
 double addToMc
           
 double minForecastMag
           
 boolean useFixed_cValue
           
 
Fields inherited from class org.opensha.sha.earthquake.griddedForecast.AfterShockHypoMagFreqDistForecast
afterShocks, mainShock
 
Fields inherited from class org.opensha.sha.earthquake.griddedForecast.GriddedHypoMagFreqDistForecast
parameterChangeFlag, region
 
Fields inherited from interface org.opensha.sha.earthquake.BaseERF
NAME
 
Constructor Summary
STEP_CombineForecastModels(ObsEqkRupture mainshock, BackGroundRatesGrid backgroundRatesGrid, java.util.GregorianCalendar currentTime)
          STEP_AftershockForecast
 
Method Summary
 void calcTimeSpan()
          calcTimeSpan
 void calcTypeI_AftershockZone()
          calcTypeI_AftershockZone
 void calcTypeII_AfterShockZone(ObsEqkRupList aftershockList, GriddedRegion backGroundRatesGrid)
          This will calculate the appropriate afershock zone based on the availability of an external model, a circular Type I model, and a sausage shaped Type II model Type II is only calculated if more than 100 events are found in the circular Type II model.
 void createCombinedForecast()
          createCombinedForecast Combine the 3 forecasts into a single forecast using AIC weighting
 void createSequenceElement()
          createSequenceElement
 void createSpatialElement()
          createSpatialElement
 double get_addToMcConst()
          get_addToMcConst
 double get_AftershockZoneRadius()
          get_AftershockZoneRadius
 double get_deltaMag()
          get_deltaMag
 SimpleFaultData get_FaultModel()
          get_FaultModel
 java.util.ArrayList get_griddedMagFreqDistForecast()
          get_griddedMagFreqDistForecast
 double get_GridSpacing()
          get_GridSpacing
 boolean get_isPrimary()
          get_isPrimary
 boolean get_isSecondary()
          get_isSecondary
 boolean get_isStatic()
          get_isStatic
 double get_maxForecastMag()
          get_maxForecastMag
 double get_minForecastMag()
          get_minForecastMag
 boolean get_UsedInForecast()
          returns true is this model has been used in a forecast and should be retained.
 boolean get_useSeqAndSpatial()
          get_useSeqAndSpatial
 double getDaysSinceMainshockEnd()
          getDaysSinceMainshockEnd
 double getDaysSinceMainshockStart()
          getDaysSinceMainshockStart
 boolean getExistSeqElement()
          getExistSeqModel
 boolean getExistSpaElement()
          getExistSpaModel
 GenericAfterHypoMagFreqDistForecast getGenElement()
          getGenElement
 HypoMagFreqDistAtLoc[] getGriddedAIC_CombinedForecast()
          getGriddedAIC_CombinedForecast
 boolean getHasExternalFaultModel()
          getHasExternalFaultModel
 HypoMagFreqDistAtLoc getHypoMagFreqDistAtLoc(int ithLocation)
          getHypoMagFreqDistAtLoc this will return the AIC combined forecast at the location
 SequenceAfterHypoMagFreqDistForecast getSeqElement()
          getSeqElement
 SpatialAfterHypoMagFreqDistForecast getSpaElement()
          getSpaElement
 void set_addToMcConstant(double mcConst)
          set_addToMcConstant
 void set_AftershockZoneRadius()
          set_AftershockZoneRadius set the radius based on Wells and Coppersmith THIS USES A DIFFERENT RADIUS THAN I HAVE PREVIOUSLY USED! NEED TO ADD THE SUBSURFACE RUPTURE LENGTH REL TO WC1994
 void set_CurrentTime(java.util.GregorianCalendar currentTime)
           
 void set_deltaMag(double delta_mag)
          set_deltaMag the magnitude step for the binning of the forecasted magnitude
 void set_GridSpacing(double grid_spacing)
          set_GridSpacing
 void set_isPrimary(boolean isPrimary)
          set_isPrimary if true the sequence can be any model type (generic, sequence, sp.
 void set_isStatic(boolean isStatic)
          set_isStatic if true the sequence will take no more aftershocks
 void set_maxForecastMag(double max_forecastMag)
          set_maxForecastMag the maximum forecast magnitude
 void set_minForecastMag(double min_forecastMag)
          set_minForecastMag the minimum forecast magnitude
 void set_PreviousAftershocks(ObsEqkRupList previousAftershockList)
          set_PreviousAftershocks this will pass the aftershocks for this sequence that were saved in the last run of the code.
 void set_UsedInForecast(boolean used)
          set_UsedInForecast This will be set to true is any node in this model forecasts greater rates than the background the default is false.
 void set_useSeqAndSpatial()
          get_useSeqAndSpatial
 void setDaysSinceMainshock()
          setDaysSinceMainshock
 void setHasExternalFaultModel(boolean hasExternalFaultModel)
          setHasExternalFaultModel
 void setUseFixed_cVal(boolean fix_cVal)
          setUseFixed_cVal if true c will be fixed for the Omori calculations default is fixed
 
Methods inherited from class org.opensha.sha.earthquake.griddedForecast.AfterShockHypoMagFreqDistForecast
addToAftershockList, getAfterShocks, getAfterShockZone, getMainShock, setAfterShocks, setMainShock
 
Methods inherited from class org.opensha.sha.earthquake.griddedForecast.GriddedHypoMagFreqDistForecast
compareTo, getAdjustableParameterList, getAdjustableParamsIterator, getApplicableRegion, getIncludedTectonicRegionTypes, getName, getNumHypoLocs, getRegion, getTimeSpan, parameterChange, setParameter, setRegion, setTimeSpan, timeSpanChange, updateAndSaveForecast, updateForecast
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

minForecastMag

public double minForecastMag

useFixed_cValue

public boolean useFixed_cValue

addToMc

public double addToMc
Constructor Detail

STEP_CombineForecastModels

public STEP_CombineForecastModels(ObsEqkRupture mainshock,
                                  BackGroundRatesGrid backgroundRatesGrid,
                                  java.util.GregorianCalendar currentTime)
STEP_AftershockForecast

Method Detail

createSequenceElement

public void createSequenceElement()
createSequenceElement


createSpatialElement

public void createSpatialElement()
createSpatialElement


createCombinedForecast

public void createCombinedForecast()
createCombinedForecast Combine the 3 forecasts into a single forecast using AIC weighting


set_minForecastMag

public void set_minForecastMag(double min_forecastMag)
set_minForecastMag the minimum forecast magnitude


set_maxForecastMag

public void set_maxForecastMag(double max_forecastMag)
set_maxForecastMag the maximum forecast magnitude


set_deltaMag

public void set_deltaMag(double delta_mag)
set_deltaMag the magnitude step for the binning of the forecasted magnitude


set_GridSpacing

public void set_GridSpacing(double grid_spacing)
set_GridSpacing


setUseFixed_cVal

public void setUseFixed_cVal(boolean fix_cVal)
setUseFixed_cVal if true c will be fixed for the Omori calculations default is fixed


set_UsedInForecast

public void set_UsedInForecast(boolean used)
set_UsedInForecast This will be set to true is any node in this model forecasts greater rates than the background the default is false.

Parameters:
used -

set_addToMcConstant

public void set_addToMcConstant(double mcConst)
set_addToMcConstant


set_isStatic

public void set_isStatic(boolean isStatic)
set_isStatic if true the sequence will take no more aftershocks


set_isPrimary

public void set_isPrimary(boolean isPrimary)
set_isPrimary if true the sequence can be any model type (generic, sequence, sp. var) set_isPrimary controls both primary and secondary.


set_PreviousAftershocks

public void set_PreviousAftershocks(ObsEqkRupList previousAftershockList)
set_PreviousAftershocks this will pass the aftershocks for this sequence that were saved in the last run of the code.


set_AftershockZoneRadius

public void set_AftershockZoneRadius()
set_AftershockZoneRadius set the radius based on Wells and Coppersmith THIS USES A DIFFERENT RADIUS THAN I HAVE PREVIOUSLY USED! NEED TO ADD THE SUBSURFACE RUPTURE LENGTH REL TO WC1994


calcTypeI_AftershockZone

public void calcTypeI_AftershockZone()
calcTypeI_AftershockZone


calcTypeII_AfterShockZone

public void calcTypeII_AfterShockZone(ObsEqkRupList aftershockList,
                                      GriddedRegion backGroundRatesGrid)
This will calculate the appropriate afershock zone based on the availability of an external model, a circular Type I model, and a sausage shaped Type II model Type II is only calculated if more than 100 events are found in the circular Type II model. This will also set the aftershock list.


set_CurrentTime

public void set_CurrentTime(java.util.GregorianCalendar currentTime)

calcTimeSpan

public void calcTimeSpan()
calcTimeSpan


setDaysSinceMainshock

public void setDaysSinceMainshock()
setDaysSinceMainshock


set_useSeqAndSpatial

public void set_useSeqAndSpatial()
get_useSeqAndSpatial


getDaysSinceMainshockStart

public double getDaysSinceMainshockStart()
getDaysSinceMainshockStart


getDaysSinceMainshockEnd

public double getDaysSinceMainshockEnd()
getDaysSinceMainshockEnd


get_UsedInForecast

public boolean get_UsedInForecast()
returns true is this model has been used in a forecast and should be retained.

Returns:
boolean

setHasExternalFaultModel

public void setHasExternalFaultModel(boolean hasExternalFaultModel)
setHasExternalFaultModel


get_minForecastMag

public double get_minForecastMag()
get_minForecastMag


get_maxForecastMag

public double get_maxForecastMag()
get_maxForecastMag


get_deltaMag

public double get_deltaMag()
get_deltaMag


get_useSeqAndSpatial

public boolean get_useSeqAndSpatial()
get_useSeqAndSpatial


get_GridSpacing

public double get_GridSpacing()
get_GridSpacing


get_FaultModel

public SimpleFaultData get_FaultModel()
get_FaultModel


get_addToMcConst

public double get_addToMcConst()
get_addToMcConst


get_isStatic

public boolean get_isStatic()
get_isStatic


get_isPrimary

public boolean get_isPrimary()
get_isPrimary


get_isSecondary

public boolean get_isSecondary()
get_isSecondary


get_AftershockZoneRadius

public double get_AftershockZoneRadius()
get_AftershockZoneRadius


get_griddedMagFreqDistForecast

public java.util.ArrayList get_griddedMagFreqDistForecast()
get_griddedMagFreqDistForecast


getHasExternalFaultModel

public boolean getHasExternalFaultModel()
getHasExternalFaultModel


getGenElement

public GenericAfterHypoMagFreqDistForecast getGenElement()
getGenElement


getSeqElement

public SequenceAfterHypoMagFreqDistForecast getSeqElement()
getSeqElement


getSpaElement

public SpatialAfterHypoMagFreqDistForecast getSpaElement()
getSpaElement


getHypoMagFreqDistAtLoc

public HypoMagFreqDistAtLoc getHypoMagFreqDistAtLoc(int ithLocation)
getHypoMagFreqDistAtLoc this will return the AIC combined forecast at the location

Parameters:
ithLocation - int : Index of the location in the region
Returns:
HypoMagFreqDistAtLoc Object. Note : This always gives out yearly Rate.

getGriddedAIC_CombinedForecast

public HypoMagFreqDistAtLoc[] getGriddedAIC_CombinedForecast()
getGriddedAIC_CombinedForecast

Returns:
return an array of HypoMagFreqDistAtLoc for the gridded AIC combined forecast

getExistSeqElement

public boolean getExistSeqElement()
getExistSeqModel

Returns:
boolean returns true if the seq model has been created

getExistSpaElement

public boolean getExistSpaElement()
getExistSpaModel

Returns:
boolean returns true is the spa model has been created