Slowness vector object.
More...
#include <SlownessVector.h>
|
class | boost::serialization::access |
|
Slowness vector object.
Slowness vectors are a seismology concept used to describe wave propagation. A slowness vector points in the direction of propagation of a wave with a magnitude equal to the slowness (1/velocity) of propagation.
- Author
- Gary L. Pavlis
◆ SlownessVector() [1/3]
mspass::seismic::SlownessVector::SlownessVector |
( |
| ) |
|
Default constructor.
double uy
Definition: SlownessVector.h:27
double ux
Definition: SlownessVector.h:23
References ux, and uy.
◆ SlownessVector() [2/3]
mspass::seismic::SlownessVector::SlownessVector |
( |
const double |
ux0, |
|
|
const double |
uy0, |
|
|
const double |
az0 = 0.0 |
|
) |
| |
Fully parameterized constructor.
A slowness vector is defined by it's components. There is one ambiguity, however, with a zero slowness vector. That is, normally direction of propagation is inferred from the vector azimuth. A zero slowness vector has physical significance (normal incidence) but presents and ambiguity in this regard. We use a defaulted az0 parameter to specify the azimuth that should be used if the magnitude of slowness vector is 0.
- Parameters
-
ux0 | - set x (EW) component to this value. |
uy0 | - set y (NS) component to this value. |
az0 | - use this as azimuth (radians) if this is a zero slowness vector (default 0.0) |
References ux, and uy.
◆ SlownessVector() [3/3]
mspass::seismic::SlownessVector::SlownessVector |
( |
const SlownessVector & |
old | ) |
|
Copy constructor.
20 azimuth0=old.azimuth0;
References ux, and uy.
◆ azimuth()
double mspass::seismic::SlownessVector::azimuth |
( |
| ) |
const |
|
noexcept |
Returns the propagation direction defined by a slowness vector. Azimuth is a direction clockwise from north in the standard geographic convention. Value returned is in radians.
69 if(this->
mag() <= FLT_EPSILON)
return(azimuth0);
71 phi=M_PI_2-atan2(
uy,
ux);
double mag() const noexcept
Definition: SlownessVector.cc:63
References mag(), ux, and uy.
◆ baz()
double mspass::seismic::SlownessVector::baz |
( |
| ) |
const |
|
noexcept |
Returns the back azimuth direction defined by a slowness vector. A back azimuth is 180 degrees away from the direction of propagation and points along the great circle path directed back to the source point from a given position. The value returned is in radians.
82 if(this->
mag() <= FLT_EPSILON)
85 phi=3.0*M_PI_2-atan2(
uy,
ux);
References mag(), ux, and uy.
◆ mag()
double mspass::seismic::SlownessVector::mag |
( |
| ) |
const |
|
noexcept |
Computes the magntitude of the slowness vector. Value returned is in units of seconds/kilometer.
References ux, and uy.
◆ ux
double mspass::seismic::SlownessVector::ux |
East-west component of slowness vector.
◆ uy
double mspass::seismic::SlownessVector::uy |
North-south component of slowness vector.
The documentation for this class was generated from the following files:
- /home/runner/work/mspass/mspass/cxx/include/mspass/seismic/SlownessVector.h
- /home/runner/work/mspass/mspass/cxx/src/lib/seismic/SlownessVector.cc