RSTT  3.2.0
Regional Seismic Travel Time
All Classes Namespaces Files Functions Variables Typedefs Friends Macros
slbm::LayerProfileG Class Reference

A LayerProfile with mantle velocity gradient information. More...

#include <LayerProfileG.h>

Inheritance diagram for slbm::LayerProfileG:
slbm::LayerProfile slbm::InterpolatedProfile

Public Member Functions

 LayerProfileG (GreatCircle *greatCircle, Location &location)
 Parameterized constructor. More...
 
 LayerProfileG (const LayerProfileG &LayerProfileG)
 Copy constructor. More...
 
 ~LayerProfileG ()
 Destructor. More...
 
LayerProfileGoperator= (const LayerProfileG &other)
 Equal operator. More...
 
bool operator== (const LayerProfileG &other)
 Equality operator. More...
 
bool operator!= (const LayerProfileG &other)
 Inequality operator. More...
 
double getGradient ()
 Retrieve the velocity gradient in the interval represented by this LayerProfileG, in 1/s. More...
 
size_t memSize ()
 
- Public Member Functions inherited from slbm::LayerProfile
 LayerProfile (GreatCircle *greatCircle, Location &location)
 Parameterized constructor. More...
 
 LayerProfile (const LayerProfile &LayerProfile)
 Copy constructor. More...
 
 ~LayerProfile ()
 Destructor. More...
 
LayerProfileoperator= (const LayerProfile &other)
 Equal operator. More...
 
bool operator== (const LayerProfile &other)
 Equality operator. More...
 
bool operator!= (const LayerProfile &other)
 Inequality operator. More...
 
int nIntervals ()
 Retrieve the number of intervals associated with this Profile (always returns 1). More...
 
double getRadius ()
 Retrieve the radius of the top of the interval represented by this LayerProfile, in km. More...
 
double getVelocity ()
 Retrieve the velocity of the interval represented by this LayerProfile, in km/s. More...
 
- Public Member Functions inherited from slbm::InterpolatedProfile
 InterpolatedProfile ()
 Default constructor. More...
 
 InterpolatedProfile (Grid &grid, Location &location)
 Parameterized constructor. More...
 
 InterpolatedProfile (const InterpolatedProfile &other)
 Copy constructor. More...
 
virtual ~InterpolatedProfile ()
 Destructor. More...
 
InterpolatedProfileoperator= (const InterpolatedProfile &other)
 Equal operator. More...
 
bool operator== (const InterpolatedProfile &other)
 Equality operator. More...
 
bool operator!= (const InterpolatedProfile &other)
 Inequality operator. More...
 
int getNCoefficients ()
 
vector< GridProfile * > & getNodes ()
 Retrieve a list of pointers to the GridProfile objects upon which this InterpolatedProfile is dependent. More...
 
GridProfilegetNode (const int &i)
 
vector< int > & getNodeIds ()
 
int getNodeId (const int &i)
 
vector< double > & getCoefficients ()
 Retrieve the interpolation coefficients that define the dependency of this InterpolatedProfile on its neighbors. More...
 
double getCoefficient (const int &i)
 
void getNodeIds (int *nodeIds, int &size)
 Retrieve the ID numbers of the GridProfiles that contributed to the interpolated values at this InterpolatedProfile object. More...
 
void getCoefficients (double *coeff, int &size)
 Retrieve the interpolation coefficients that were applied to the neighboring GridProfiles that contributed to the interpolated values at this InterpolatedProfile object. More...
 
void getWeights (int *nodeIds, double *coeff, int &size)
 
void interpRadius (const int &k, double &radius)
 Calculate a single radius value based on the neighboring GridProfile objects and the interpolation coefficients. More...
 
void interpDepth (const int &k, double &depth)
 Calculate a single depth value based on the neighboring GridProfile objects and the interpolation coefficients. More...
 
void interpVelocity (const int &type, const int &k, double &velocity)
 Calculate a single velocity value based on the neighboring GridProfile objects and the interpolation coefficients. More...
 
void interpGradient (const int &type, double &gradient)
 Calculate a single gradient value based on the neighboring GridProfile objects and the interpolation coefficients. More...
 
bool isActiveProfile ()
 Returns true if all of the neighboring GridProfile objects. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from slbm::LayerProfile
static int getClassCount ()
 
- Static Public Member Functions inherited from slbm::InterpolatedProfile
static int getClassCount ()
 
- Protected Attributes inherited from slbm::LayerProfile
double radius
 The radius of the interface represented by this LayerProfile object, in km. More...
 
double velocity
 The P or S velocity of the interval, in km/sec. More...
 
- Protected Attributes inherited from slbm::InterpolatedProfile
vector< GridProfile * > nodes
 An array of pointers to the GridProfile objects upon which this InterpolatedProfile is dependent. More...
 
vector< int > nodeIds
 An array of pointers to the GridProfile objects upon which this InterpolatedProfile is dependent. More...
 
vector< double > coefficients
 The interpolation coefficients which should be applied to this InterpolatedProfile's neighbors in order to compute interpolated quantities. More...
 
- Static Protected Attributes inherited from slbm::LayerProfile
static int layerProfileClassCount
 
- Static Protected Attributes inherited from slbm::InterpolatedProfile
static int interpolatedProfileClassCount
 

Detailed Description

A LayerProfile with mantle velocity gradient information.

A LayerProfile with mantle velocity gradient information. The base class, LayerProfile, only stores the depth and velocity at a point on the head wave interface in the earth model. LayerProfileG class adds mantle velocity gradient information as well.

Definition at line 56 of file LayerProfileG.h.

Constructor & Destructor Documentation

◆ LayerProfileG() [1/2]

slbm::LayerProfileG::LayerProfileG ( GreatCircle greatCircle,
Location location 
)

Parameterized constructor.

Parameterized constructor that builds a LayerProfileG object based on values interpolated from nearby GridProfile objects.

Parameters
greatCirclethe GreatCircle object of which this LayerProfileG will be a member.
locationthe Location where the profile is to be constructed.

◆ LayerProfileG() [2/2]

slbm::LayerProfileG::LayerProfileG ( const LayerProfileG LayerProfileG)

Copy constructor.

Copy constructor.

◆ ~LayerProfileG()

slbm::LayerProfileG::~LayerProfileG ( )

Destructor.

Destructor.

Member Function Documentation

◆ getGradient()

double slbm::LayerProfileG::getGradient ( )
inlinevirtual

Retrieve the velocity gradient in the interval represented by this LayerProfileG, in 1/s.

Retrieve the velocity gradient in the interval represented by this LayerProfileG, in 1/s.

Reimplemented from slbm::LayerProfile.

Definition at line 106 of file LayerProfileG.h.

◆ memSize()

size_t slbm::LayerProfileG::memSize ( )
inlinevirtual

Reimplemented from slbm::LayerProfile.

Definition at line 125 of file LayerProfileG.h.

◆ operator!=()

bool slbm::LayerProfileG::operator!= ( const LayerProfileG other)
inline

Inequality operator.

Inequality operator.

Definition at line 99 of file LayerProfileG.h.

◆ operator=()

LayerProfileG& slbm::LayerProfileG::operator= ( const LayerProfileG other)

Equal operator.

Equal operator.

◆ operator==()

bool slbm::LayerProfileG::operator== ( const LayerProfileG other)

Equality operator.

Equality operator.


The documentation for this class was generated from the following file: