GPLIB++
Public Types | Public Member Functions | List of all members
gplib::RecCalc Class Reference

This class is used to calculate receiver functions from seismic data. More...

#include <RecCalc.h>

Public Types

enum  trfmethod { specdiv, iterdecon }
 There are several ways to calculate receiver functions. More...
 

Public Member Functions

const SeismicDataCompGetRadComp ()
 Get the radial component, mostly needed for synthetic data. More...
 
const SeismicDataCompGetVerComp ()
 
void SetNormalize (const bool what)
 Change whether the output receiver function is normalized to a maximum amplitude of 1. More...
 
void SynthPreParallel (const std::string &filename, ResPkModel &Model, SeismicDataComp &Receiver, const bool cleanfiles=false)
 The three Synth*Parallel methods provide alternative acces to the steps in CalcRecSynth for safe parallel execution. More...
 
void SynthSafeParallel (const std::string &filename, ResPkModel &Model, SeismicDataComp &Receiver, const bool cleanfiles=false)
 All operations that are safe to execute in parallel. More...
 
void SynthPostParallel (const std::string &filename, ResPkModel &Model, SeismicDataComp &Receiver, const bool cleanfiles=false)
 Operations of the synthetic receiver function calculation that are not safe in parallel and hafe to be executed after the parallel part. More...
 
void CalcRecData (const SeismicDataComp &RadComp, const SeismicDataComp &VerComp, SeismicDataComp &Receiver)
 Calculate Receiver functions from two data components. More...
 
void CalcRecSynth (const std::string &filename, ResPkModel &Model, SeismicDataComp &Receiver, const bool cleanfiles=false)
 Calculate synthetic receiver funtions from a model. More...
 
RecCalcoperator= (const RecCalc &source)
 
 RecCalc (int myshift, double mysigma, double myc, bool multicalc=false, trfmethod themethod=iterdecon)
 The constructor takes the essential parameters that shouldn't change during different calculations. More...
 
 RecCalc (const RecCalc &Old)
 
virtual ~RecCalc ()
 

Detailed Description

This class is used to calculate receiver functions from seismic data.

Definition at line 14 of file RecCalc.h.

Member Enumeration Documentation

There are several ways to calculate receiver functions.

Enumerator
specdiv 
iterdecon 

Definition at line 18 of file RecCalc.h.

Constructor & Destructor Documentation

gplib::RecCalc::RecCalc ( int  myshift,
double  mysigma,
double  myc,
bool  multicalc = false,
trfmethod  themethod = iterdecon 
)

The constructor takes the essential parameters that shouldn't change during different calculations.

Definition at line 27 of file RecCalc.cpp.

gplib::RecCalc::RecCalc ( const RecCalc Old)

Definition at line 35 of file RecCalc.cpp.

gplib::RecCalc::~RecCalc ( )
virtual

Definition at line 58 of file RecCalc.cpp.

Member Function Documentation

void gplib::RecCalc::CalcRecData ( const SeismicDataComp RadComp,
const SeismicDataComp VerComp,
SeismicDataComp Receiver 
)
void gplib::RecCalc::CalcRecSynth ( const std::string &  filename,
ResPkModel Model,
SeismicDataComp Receiver,
const bool  cleanfiles = false 
)

Calculate synthetic receiver funtions from a model.

Definition at line 195 of file RecCalc.cpp.

References SynthPostParallel(), SynthPreParallel(), and SynthSafeParallel().

Referenced by main().

const SeismicDataComp& gplib::RecCalc::GetRadComp ( )
inline

Get the radial component, mostly needed for synthetic data.

Definition at line 46 of file RecCalc.h.

const SeismicDataComp& gplib::RecCalc::GetVerComp ( )
inline

Definition at line 50 of file RecCalc.h.

RecCalc & gplib::RecCalc::operator= ( const RecCalc source)

Definition at line 43 of file RecCalc.cpp.

void gplib::RecCalc::SetNormalize ( const bool  what)
inline

Change whether the output receiver function is normalized to a maximum amplitude of 1.

Definition at line 55 of file RecCalc.h.

Referenced by gplib::C1DRecObjective::C1DRecObjective(), main(), and gplib::RFVelCalc::RFVelCalc().

void gplib::RecCalc::SynthPostParallel ( const std::string &  filename,
ResPkModel Model,
SeismicDataComp Receiver,
const bool  cleanfiles = false 
)

Operations of the synthetic receiver function calculation that are not safe in parallel and hafe to be executed after the parallel part.

Definition at line 219 of file RecCalc.cpp.

References CalcRecData(), and gplib::SeismicDataComp::ReadData().

Referenced by CalcRecSynth(), and gplib::C1DRecObjective::PostParallel().

void gplib::RecCalc::SynthPreParallel ( const std::string &  filename,
ResPkModel Model,
SeismicDataComp Receiver,
const bool  cleanfiles = false 
)

The three Synth*Parallel methods provide alternative acces to the steps in CalcRecSynth for safe parallel execution.

Definition at line 203 of file RecCalc.cpp.

References gplib::ResPkModel::WriteModel(), and gplib::ResPkModel::WriteRunFile().

Referenced by CalcRecSynth(), and gplib::C1DRecObjective::PreParallel().

void gplib::RecCalc::SynthSafeParallel ( const std::string &  filename,
ResPkModel Model,
SeismicDataComp Receiver,
const bool  cleanfiles = false 
)

All operations that are safe to execute in parallel.

Definition at line 210 of file RecCalc.cpp.

Referenced by CalcRecSynth(), and gplib::C1DRecObjective::SafeParallel().


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