org.opensha.sha.faultSurface
Class SimpleListricGriddedSurface

java.lang.Object
  extended by org.opensha.commons.data.Container2DImpl<Location>
      extended by org.opensha.sha.faultSurface.AbstractEvenlyGriddedSurface
          extended by org.opensha.sha.faultSurface.AbstractEvenlyGriddedSurfaceWithSubsets
              extended by org.opensha.sha.faultSurface.EvenlyGriddedSurfFromSimpleFaultData
                  extended by org.opensha.sha.faultSurface.SimpleListricGriddedSurface
All Implemented Interfaces:
Serializable, Iterable<Location>, Container2D<Location>, Named, EvenlyGriddedSurface, RuptureSurface

public class SimpleListricGriddedSurface
extends EvenlyGriddedSurfFromSimpleFaultData

Title: SimpleListricGriddedSurface.
Description: This creates an EvenlyGriddedSurface for a listric fault (a fault where dip changes with depth). As with the StirlingGriddedSurface, grid points are projected down at an angle perpendicular to the end points of the faultTrace.
NOTE: this assumes that all depths in the fault trace are the same as the first depth in the ArrayList (this is checked for).
Accuracy Note: the bending points can be off by up to the gridSpacing (this could be fixed).

Copyright: Copyright (c) 2001
Company:

Version:
1.0
Author:
Ned Field.
See Also:
Serialized Form

Field Summary
protected static String C
           
protected static boolean D
           
protected  ArrayList<Double> depths
          An ArrayList of Double objects representing the depth intervals on the fault surface (from top to bottom).
protected  ArrayList<Double> dips
          A ArrayList of Double objects representing the dips (from top to bottom) over the various depth intervals.
protected static double PI_RADIANS
           
 
Fields inherited from class org.opensha.sha.faultSurface.EvenlyGriddedSurfFromSimpleFaultData
aveDip, faultTrace, lowerSeismogenicDepth, upperSeismogenicDepth
 
Fields inherited from class org.opensha.sha.faultSurface.AbstractEvenlyGriddedSurface
gridSpacingAlong, gridSpacingDown, sameGridSpacing
 
Fields inherited from class org.opensha.commons.data.Container2DImpl
data, name, numCols, numRows, size, TAB
 
Constructor Summary
SimpleListricGriddedSurface(FaultTrace faultTrace, ArrayList<Double> dips, ArrayList<Double> depths, double gridSpacing)
           
 
Method Summary
protected  void assertValidData()
          This method checks the input data.
 double getAveDipDirection()
          Average dip direction (degrees) of rupture surface
 LocationList getPerimeter()
          This returns the same as getEvenlyDiscritizedPerimeter()
 FaultTrace getUpperEdge()
          This returns the given faultTrace since the first depth must be the same as depths in the trace
static void main(String[] args)
          This is to test this factory using PEER's Fault E in their test-case set #2.
 
Methods inherited from class org.opensha.sha.faultSurface.EvenlyGriddedSurfFromSimpleFaultData
getAveDip, getAveRupTopDepth, getAveStrike, getFaultTrace, getLowerSeismogenicDepth, getUpperSeismogenicDepth, set
 
Methods inherited from class org.opensha.sha.faultSurface.AbstractEvenlyGriddedSurfaceWithSubsets
getNthSubsetSurface, getNthSubsetSurface, getNthSubsetSurfaceCenteredDownDip, getNumSubsetSurfaces, getNumSubsetSurfacesAlongLength, getSubsetSurfacesIterator, getSubsetSurfacesIterator
 
Methods inherited from class org.opensha.sha.faultSurface.AbstractEvenlyGriddedSurface
getArea, getAveGridSpacing, getAveLength, getAveWidth, getDistanceJB, getDistanceRup, getDistanceSeis, getDistanceX, getEvenlyDiscritizedListOfLocsOnSurface, getEvenlyDiscritizedLowerEdge, getEvenlyDiscritizedPerimeter, getEvenlyDiscritizedUpperEdge, getFirstLocOnUpperEdge, getFractionOfSurfaceInRegion, getGridSpacingAlongStrike, getGridSpacingDownDip, getInfo, getLastLocOnUpperEdge, getLocation, getLocationsIterator, getMinDistance, getRowAsTrace, isGridSpacingSame, isPointSurface
 
Methods inherited from class org.opensha.commons.data.Container2DImpl
checkBounds, clear, exist, get, getAllByColumnsIterator, getAllByRowsIterator, getColumnIterator, getName, getNumCols, getNumRows, getRowIterator, iterator, listIterator, set, setName, setNumRowsAndNumCols, size, toJava2D, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.opensha.commons.data.Container2D
clear, exist, get, getAllByColumnsIterator, getAllByRowsIterator, getColumnIterator, getNumCols, getNumRows, getRowIterator, listIterator, set, setName, size, toString
 
Methods inherited from interface org.opensha.commons.data.Named
getName
 
Methods inherited from interface java.lang.Iterable
iterator
 

Field Detail

C

protected static final String C
See Also:
Constant Field Values

D

protected static final boolean D
See Also:
Constant Field Values

PI_RADIANS

protected static final double PI_RADIANS
See Also:
Constant Field Values

dips

protected ArrayList<Double> dips
A ArrayList of Double objects representing the dips (from top to bottom) over the various depth intervals. The number of elements here must be one less that those in the depths ArrayList.


depths

protected ArrayList<Double> depths
An ArrayList of Double objects representing the depth intervals on the fault surface (from top to bottom). This must have one more element that the dips ArrayList.

Constructor Detail

SimpleListricGriddedSurface

public SimpleListricGriddedSurface(FaultTrace faultTrace,
                                   ArrayList<Double> dips,
                                   ArrayList<Double> depths,
                                   double gridSpacing)
                            throws FaultException
Throws:
FaultException
Method Detail

assertValidData

protected void assertValidData()
                        throws FaultException
This method checks the input data.

Overrides:
assertValidData in class EvenlyGriddedSurfFromSimpleFaultData
Throws:
FaultException

main

public static void main(String[] args)
This is to test this factory using PEER's Fault E in their test-case set #2.

Parameters:
args -

getAveDipDirection

public double getAveDipDirection()
Description copied from interface: RuptureSurface
Average dip direction (degrees) of rupture surface

Returns:

getPerimeter

public LocationList getPerimeter()
This returns the same as getEvenlyDiscritizedPerimeter()

Specified by:
getPerimeter in interface RuptureSurface
Overrides:
getPerimeter in class AbstractEvenlyGriddedSurface

getUpperEdge

public FaultTrace getUpperEdge()
This returns the given faultTrace since the first depth must be the same as depths in the trace

Specified by:
getUpperEdge in interface RuptureSurface
Overrides:
getUpperEdge in class EvenlyGriddedSurfFromSimpleFaultData
Returns: