GPLIB++
|
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 SeismicDataComp & | GetRadComp () |
Get the radial component, mostly needed for synthetic data. More... | |
const SeismicDataComp & | GetVerComp () |
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... | |
RecCalc & | operator= (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 () |
This class is used to calculate receiver functions from seismic data.
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.
|
virtual |
Definition at line 58 of file RecCalc.cpp.
void gplib::RecCalc::CalcRecData | ( | const SeismicDataComp & | RadComp, |
const SeismicDataComp & | VerComp, | ||
SeismicDataComp & | Receiver | ||
) |
Calculate Receiver functions from two data components.
Definition at line 173 of file RecCalc.cpp.
References gplib::SeismicDataComp::CopyHeader(), gplib::TimeSeriesComponent::GetData(), gplib::TimeSeriesComponent::GetDt(), iterdecon, gplib::Normalize(), gplib::SeismicDataComp::SetB(), gplib::TimeSeriesComponent::SetDt(), and specdiv.
Referenced by gplib::RFVelCalc::CalcRFVel(), gplib::RFVelCalc::CalcRFVelFromRec(), main(), and SynthPostParallel().
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().
|
inline |
|
inline |
Definition at line 43 of file RecCalc.cpp.
|
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().