org.opensha.sha.earthquake.rupForecastImpl
Class PoissonAreaSource

java.lang.Object
  extended by org.opensha.sha.earthquake.ProbEqkSource
      extended by org.opensha.sha.earthquake.rupForecastImpl.PointToLineSource
          extended by org.opensha.sha.earthquake.rupForecastImpl.PoissonAreaSource
All Implemented Interfaces:
Serializable, Iterable<ProbEqkRupture>, Named, EqkSource

public class PoissonAreaSource
extends PointToLineSource
implements Serializable

Title: PoissonAreaSource

Description: This is basically a more sophisticated version of the class GriddedRegionPoissonEqkSource. The options to account for the finiteness of rupture surfaces are the same as provided in the PointToLineSource class, plus the option to treat all sources as point sources is added included here.

Version:
1.0
Author:
Marco Pagani and Edward Field
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.opensha.sha.earthquake.rupForecastImpl.PointToLineSource
location, maxLength, probEqkRuptureList, rates
 
Fields inherited from class org.opensha.sha.earthquake.ProbEqkSource
isPoissonian, name
 
Constructor Summary
PoissonAreaSource(Region reg, double gridResolution, MagFreqDistsForFocalMechs magFreqDistsForFocalMechs, ArbitrarilyDiscretizedFunc aveRupTopVersusMag, double defaultHypoDepth, double duration, double minMag)
          This constructor treats all ruptures as point sources.
PoissonAreaSource(Region reg, double gridResolution, MagFreqDistsForFocalMechs magFreqDistsForFocalMechs, ArbitrarilyDiscretizedFunc aveRupTopVersusMag, double defaultHypoDepth, MagScalingRelationship magScalingRel, double lowerSeisDepth, double duration, double minMag)
          This constructor takes a Region, grid resolution (grid spacing), MagFreqDistsForFocalMechs, depth as a function of mag (aveRupTopVersusMag), and a default depth (defaultHypoDepth).
PoissonAreaSource(Region reg, double gridResolution, MagFreqDistsForFocalMechs magFreqDistsForFocalMechs, ArbitrarilyDiscretizedFunc aveRupTopVersusMag, double defaultHypoDepth, MagScalingRelationship magScalingRel, double lowerSeisDepth, double duration, double minMag, int numStrikes, double firstStrike)
          This constructor is the same as the previous one, but rather than using the given or a random strike, this applies a spoked source where several strikes are applied with even spacing in azimuth.
 
Method Summary
 double getMinDistance(Site site)
          This returns the shortest horizontal dist to the point source (minus half the length of the longest rupture).
 Region getRegion()
           
 ProbEqkRupture getRupture(int nthRupture)
          This makes and returns the nth probEqkRupture for this source.
 
Methods inherited from class org.opensha.sha.earthquake.rupForecastImpl.PointToLineSource
computeMaxLength, computeNumRuptures, getAllSourceLocs, getDuration, getMinMag, getName, getNumRuptures, getSourceSurface, mkAndAddRuptures, setDuration
 
Methods inherited from class org.opensha.sha.earthquake.ProbEqkSource
computeApproxTotalProbAbove, computeEquivTotalMomentRate, computeTotalEquivMeanAnnualRate, computeTotalProb, computeTotalProbAbove, computeTotalProbAbove, drawRandomEqkRuptureIndices, drawRandomEqkRuptures, drawSingleRandomEqkRuptureIndex, getInfo, getRuptureClone, getRuptureList, getRupturesIterator, getSourceMetadata, getTectonicRegionType, isPoissonianSource, isSourcePoissonian, iterator, setInfo, setTectonicRegionType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PoissonAreaSource

public PoissonAreaSource(Region reg,
                         double gridResolution,
                         MagFreqDistsForFocalMechs magFreqDistsForFocalMechs,
                         ArbitrarilyDiscretizedFunc aveRupTopVersusMag,
                         double defaultHypoDepth,
                         double duration,
                         double minMag)
This constructor treats all ruptures as point sources.

Parameters:
reg -
gridResolution -
magFreqDistsForFocalMechs -
aveRupTopVersusMag -
defaultHypoDepth -
duration -
minMag -

PoissonAreaSource

public PoissonAreaSource(Region reg,
                         double gridResolution,
                         MagFreqDistsForFocalMechs magFreqDistsForFocalMechs,
                         ArbitrarilyDiscretizedFunc aveRupTopVersusMag,
                         double defaultHypoDepth,
                         MagScalingRelationship magScalingRel,
                         double lowerSeisDepth,
                         double duration,
                         double minMag)
This constructor takes a Region, grid resolution (grid spacing), MagFreqDistsForFocalMechs, depth as a function of mag (aveRupTopVersusMag), and a default depth (defaultHypoDepth). The depth of each source is set according to the mag using the aveRupTopVersusMag function; if mag is below the minimum x value of this function, then defaultHypoDepth is applied. The FocalMechanism of MagFreqDistsForFocalMechs is applied, and a random strike is applied if the associated strike is NaN (a different random value for each and every rupture). This sets the source as Poissonian.


PoissonAreaSource

public PoissonAreaSource(Region reg,
                         double gridResolution,
                         MagFreqDistsForFocalMechs magFreqDistsForFocalMechs,
                         ArbitrarilyDiscretizedFunc aveRupTopVersusMag,
                         double defaultHypoDepth,
                         MagScalingRelationship magScalingRel,
                         double lowerSeisDepth,
                         double duration,
                         double minMag,
                         int numStrikes,
                         double firstStrike)
This constructor is the same as the previous one, but rather than using the given or a random strike, this applies a spoked source where several strikes are applied with even spacing in azimuth. numStrikes defines the number of strikes applied (e.g., numStrikes=2 would be a cross hair) and firstStrike defines the azimuth of the first one (e.g., firstStrike=0 with numStrikes=2 would be a cross-hair source that is perfectly aligned NS and EW).

Method Detail

getRupture

public ProbEqkRupture getRupture(int nthRupture)
This makes and returns the nth probEqkRupture for this source.

Specified by:
getRupture in interface EqkSource
Overrides:
getRupture in class PointToLineSource

getRegion

public Region getRegion()
Returns:

getMinDistance

public double getMinDistance(Site site)
This returns the shortest horizontal dist to the point source (minus half the length of the longest rupture).

Overrides:
getMinDistance in class PointToLineSource
Parameters:
site -
Returns:
minimum distance