Point sources and faults¶
ShakerMaker defines it’s coordinate system with \(x\) positive towards the north, \(y\) positive towards the east and \(z\) positive downwards.
Strike is defined clockwise from the north, dip is measured from the horizontal, and rake increases in the down-dip direction.
Faults are specified using the FaultSource
which are just lists of sub-faults which
are of the PointSource
type. Faults can have arbitrary shape and complexity.
PointSource¶
-
class
shakermaker.pointsource.
PointSource
(x, angles, stf=<shakermaker.stf_extensions.dirac.Dirac object>, tt=0)[source]¶ Bases:
object
A source that is a point.
Defined by its position and spatial oriention, this source can also be given a trigger time and a source time function (to be convolved after the Green’s function is computed).
Parameters: - x (numpy array (shape (3,))) – Position of the source in xyz coordinates.
- anlges – Orientation of the fault
angles = [strike, dip rake]
in degrees. - tt (double) – trigger time for the fault (s)
- stf (
fkdrm.fkdrmBase.SourceTimeFunction
) – source time function to convolver
-
angles
¶ Numpy array with the (strike,dip,rake) angles of the source fault plane in degrees
-
stf
¶ The source time-function to be convolved with.
-
tt
¶ Scalar trigger time
-
x
¶ Numpy array with the (x,y,z) coordinates of the source
FaultSource¶
-
class
shakermaker.faultsource.
FaultSource
(sources, metadata)[source]¶ Bases:
object
A fault is a collection of point-sources
If you want to have more than one point-source in space generating motions, you use this class.
Parameters: sources – A list of PointSources Example:
#Two strike-slip sources at z=1.0 and 1.5 (km) ps1 = PointSource([0, 0, 1],[0, 90, 0]) ps2 = PointSource([0, 0, 1.5],[0, 90, 0]) fault = FaultSource([ps1, ps2])
-
metadata
¶ Source metadata, such as fault name.
-
nsources
¶ Number of sub-faults
-