Types
This section provides an overview of the types used in PlateKinematics.jl.
Contents
Index
PlateKinematics.CovariancePlateKinematics.EulerAnglesPlateKinematics.EulerVectorCartPlateKinematics.EulerVectorSphPlateKinematics.FiniteRotCartPlateKinematics.FiniteRotSphPlateKinematics.StatPlateKinematics.SurfaceVelocityVector
Types
Covariance
PlateKinematics.Covariance — Typestruct CovarianceCovariance upper triangle elements. Expressed in radians² for Finite Rotations and in radians²/Myr² for Euler Vectors.
Examples:
julia> PlateKinematics.Covariance()
PlateKinematics.Covariance(0, 0, 0, 0, 0, 0)
julia> PlateKinematics.Covariance(1, 2, 3, 4, 5, 6)
PlateKinematics.Covariance(1, 2, 3, 4, 5, 6)
julia> array = [1, 2, 3, 4, 5, 6];
julia> PlateKinematics.Covariance(array)
PlateKinematics.Covariance(1, 2, 3, 4, 5, 6)Finite Rotations
PlateKinematics.FiniteRotSph — Typestruct FiniteRotSphFinite rotation in Spherical coordinates, expressed in degrees.
Fields
Lon::Float64: Longitude of the rotation axis in degrees-EastLat::Float64: Latitude of the rotation axis in degrees-NorthAngle::Float64: Angle of rotation in degreesTime::Union{Float64, Nothing}: Age of rotation in million yearsCovariance::Covariance:Covariancein radians²
Examples:
julia> PlateKinematics.FiniteRotSph(30, 20, 10)
PlateKinematics.FiniteRotSph:
Lon : 30.0
Lat : 20.0
Angle : 10.0
Time : nothing
Covariance : PlateKinematics.Covariance(0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
julia> array = [30, 20, 10];
julia> PlateKinematics.FiniteRotSph(array)
PlateKinematics.FiniteRotSph:
Lon : 30.0
Lat : 20.0
Angle : 10.0
Time : nothing
Covariance : PlateKinematics.Covariance(0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
julia> PlateKinematics.FiniteRotSph(30, 20, 10, 2)
PlateKinematics.FiniteRotSph:
Lon : 30.0
Lat : 20.0
Angle : 10.0
Time : 2.0
Covariance : PlateKinematics.Covariance(0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
julia> array = [1, 2, 3, 4, 5, 6];
julia> PlateKinematics.FiniteRotSph(30, 20, 10, array)
PlateKinematics.FiniteRotSph(30, 20, 10, nothing, PlateKinematics.Covariance(1, 2, 3, 4, 5, 6))
julia> array = [1, 2, 3, 4, 5, 6];
julia> PlateKinematics.FiniteRotSph(30, 20, 10, 2, array)
PlateKinematics.FiniteRotSph:
Lon : 30.0
Lat : 20.0
Angle : 10.0
Time : 2.0
Covariance : PlateKinematics.Covariance(1.0, 2.0, 3.0, 4.0, 5.0, 6.0)PlateKinematics.FiniteRotCart — Typestruct FiniteRotCartFinite rotation in Cartesian coordinates, expressed in degrees.
Fields
X::Float64: X-coordinate in degreesY::Float64: Y-coordinate in degreesZ::Float64: Z-coordinate in degreesTimeRange::Union{Float64, Nothing}: Age of rotation in million yearsCovariance::Covariance:Covariancein radians²
Examples:
julia> PlateKinematics.FiniteRotCart(1, 2, 3)
PlateKinematics.FiniteRotCart:
X : 1.0
Y : 2.0
Z : 3.0
Time : nothing
Covariance : PlateKinematics.Covariance(0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
julia> array = [30, 20, 10];
julia> PlateKinematics.FiniteRotCart(array)
PlateKinematics.FiniteRotCart:
X : 30.0
Y : 20.0
Z : 10.0
Time : nothing
Covariance : PlateKinematics.Covariance(0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
julia> PlateKinematics.FiniteRotCart(1, 2, 3, 1.5)
PlateKinematics.FiniteRotCart:
X : 1.0
Y : 2.0
Z : 3.0
Time : 1.5
Covariance : PlateKinematics.Covariance(0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
julia> array = [1, 2, 3, 4, 5, 6];
julia> PlateKinematics.FiniteRotCart(30, 20, 10, array)
PlateKinematics.FiniteRotCart:
X : 30.0
Y : 20.0
Z : 10.0
Time : nothing
Covariance : PlateKinematics.Covariance(1.0, 2.0, 3.0, 4.0, 5.0, 6.0)
julia> array = [1, 2, 3, 4, 5, 6];
julia> PlateKinematics.FiniteRotCart(1, 2, 3, 1.5, array)
PlateKinematics.FiniteRotCart:
X : 1.0
Y : 2.0
Z : 3.0
Time : 1.5
Covariance : PlateKinematics.Covariance(1.0, 2.0, 3.0, 4.0, 5.0, 6.0)PlateKinematics.EulerAngles — Typestruct EulerAnglesEuler angles that describe the rotation around the three main axes on Earth.
Fields
X::Float64: Angle of rotation around the X-axis (0N, 0E)Y::Float64: Angle of rotation around the Y-axis (0N, 90E)Z::Float64: Angle of rotation around the Z-axis (90N, 0E)
Examples:
julia> PlateKinematics.EulerAngles(4, 5, 6)
PlateKinematics.EulerAngles:
X : 4.0
Y : 5.0
Z : 6.0
julia> array = [4, 5, 6];
julia> PlateKinematics.EulerAngles(array)
PlateKinematics.EulerAngles:
X : 4.0
Y : 5.0
Z : 6.0Euler Vectors
PlateKinematics.EulerVectorSph — Typestruct EulerVectorSphEuler vector in spherical coordinates with the following parameters:
Fields
Lon::Float64: Longitude of the Euler pole in degrees-EastLat::Float64: Latitude of the Euler pole in degrees-NorthAngVelocity::Float64: Angular velocity in degrees/MyrTimeRange::Union{Matrix, Nothing}: Initial to final age of rotationCovariance::Covariance:Covariancein radians²/Myr²
Examples:
julia> PlateKinematics.EulerVectorSph(1, 2, 3)
PlateKinematics.EulerVectorSph:
Lon : 1.0
Lat : 2.0
AngVelocity : 3.0
TimeRange : nothing
Covariance : PlateKinematics.Covariance(0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
julia> array = [30, 20, 10];
julia> PlateKinematics.EulerVectorSph(array)
PlateKinematics.EulerVectorSph:
Lon : 30.0
Lat : 20.0
AngVelocity : 10.0
TimeRange : nothing
Covariance : PlateKinematics.Covariance(0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
julia> array = [1.5 2.5];
julia> length(array) == 2
true
julia> PlateKinematics.EulerVectorSph(30, 20, 10, array)
PlateKinematics.EulerVectorSph:
Lon : 30.0
Lat : 20.0
AngVelocity : 10.0
TimeRange : [1.5 2.5]
Covariance : PlateKinematics.Covariance(0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
julia> array = [1.0, 2.0, 3.0, 4.0, 5.0, 6.0];
julia> length(array) != 2
true
julia> PlateKinematics.EulerVectorSph(30, 20, 10, array)
PlateKinematics.EulerVectorSph:
Lon : 30.0
Lat : 20.0
AngVelocity : 10.0
TimeRange : nothing
Covariance : PlateKinematics.Covariance(1.0, 2.0, 3.0, 4.0, 5.0, 6.0)PlateKinematics.EulerVectorCart — Typestruct EulerVectorCartEuler vector in Cartesian coordinates, expressed in degrees/Myr.
Fields
X::Float64: X-coordinate in degrees/MyrY::Float64: Y-coordinate in degrees/MyrZ::Float64: Z-coordinate in degrees/MyrTimeRange::Union{Matrix, Nothing}: Initial to final age of rotationCovariance::Covariance:Covariancein radians²/Myr²
Examples:
Same outer Constructor Methods as EulerVectorSph.
Surface Velocity
PlateKinematics.Stat — Typestruct StatMean and standard deviation of a parameter:
Fields
Mean::Float64: Mean (average)StDev::Float64: Standard deviation
Examples:
julia> PlateKinematics.Stat(10.0, 20.0)
PlateKinematics.Stat:
Mean : 10.0
StDev : 20.0
julia> stat = [10.0 20.0]
julia> PlateKinematics.Stat(stat)
PlateKinematics.Stat:
Mean : 10.0
StDev : 20.0PlateKinematics.SurfaceVelocityVector — Typestruct SurfaceVelocityVectorSurface velocity vector components, expressed in mm/yr.
Fields
Lon::Float64: Longitude of the surface point in degrees-EastLat::Float64: Latitude of the surface point in degrees-NorthEastVel::Union{Float64, Stat, Nothing}: East-component of the velocity in mm/yrNorthVel::Union{Float64, Stat, Nothing}: North-component of the velocity in mm/yrTotalVel::Union{Float64, Stat, Nothing}: Total velocity in mm/yrAzimuth::Union{Float64, Stat, Nothing}: Azimuth of the velocity vector as measured clockwise from the North
Examples:
julia> PlateKinematics.SurfaceVelocityVector(10.0, 20.0, 4.0)
PlateKinematics.SurfaceVelocityVector:
Lon : 10.0
Lat : 20.0
EastVel : nothing
NorthVel : nothing
TotalVel : 4.0
Azimuth : nothing
julia> PlateKinematics.SurfaceVelocityVector(10, 20, [2.5, 2])
PlateKinematics.SurfaceVelocityVector:
Lon : 10.0
Lat : 20.0
EastVel : nothing
NorthVel : nothing
TotalVel : 2.5 ± 2.0
Azimuth : nothing
julia> PlateKinematics.SurfaceVelocityVector(10.0, 20.0, 4.0, 3.0)
PlateKinematics.SurfaceVelocityVector:
Lon : 10.0
Lat : 20.0
EastVel : 4.0
NorthVel : 3.0
TotalVel : nothing
Azimuth : nothing
julia> PlateKinematics.SurfaceVelocityVector(10.0, 20.0, 4.0, 3.0, 2.0)
PlateKinematics.SurfaceVelocityVector:
Lon : 10.0
Lat : 20.0
EastVel : 4.0
NorthVel : 3.0
TotalVel : 2.0
Azimuth : nothing