MsPASS C++ API  2.4.1.dev4+g92330b7a
Defines the C++ API for MsPASS
Loading...
Searching...
No Matches
LeastSquareDecon.h
1#ifndef __SIMPLE_LEAST_SQUARE_DECON_H__
2#define __SIMPLE_LEAST_SQUARE_DECON_H__
3#include "mspass/algorithms/deconvolution/FFTDeconOperator.h"
4#include "mspass/algorithms/deconvolution/ScalarDecon.h"
5#include "mspass/algorithms/deconvolution/ShapingWavelet.h"
6#include "mspass/seismic/CoreTimeSeries.h"
7#include "mspass/utility/Metadata.h"
8#include <boost/archive/text_iarchive.hpp>
9#include <boost/archive/text_oarchive.hpp>
10#include <boost/serialization/base_object.hpp>
11#include <vector>
12namespace mspass::algorithms::deconvolution {
19public:
28 const std::vector<double> &wavelet,
29 const std::vector<double> &data);
33 void process();
66 mspass::seismic::CoreTimeSeries inverse_wavelet(const double t0parent = 0.0);
78
79private:
80 int read_metadata(const mspass::utility::Metadata &md);
81 int apply();
82 double damp;
83 friend boost::serialization::access;
84 template <class Archive>
85 void serialize(Archive &ar, const unsigned int version) {
86 ar &boost::serialization::base_object<FFTDeconOperator>(*this);
87 ar &boost::serialization::base_object<ScalarDecon>(*this);
88 ar & damp;
89 }
90};
91} // namespace mspass::algorithms::deconvolution
92#endif
Object to hold components needed in all fft based decon algorithms.
Definition FFTDeconOperator.h:21
Scalar least-squares deconvolution operator.
Definition LeastSquareDecon.h:18
mspass::seismic::CoreTimeSeries inverse_wavelet()
Return default FIR represesentation of the inverse filter.
Definition LeastSquareDecon.cc:189
LeastSquareDecon()
Definition LeastSquareDecon.h:21
mspass::utility::Metadata QCMetrics()
Return appropriate quality measures.
Definition LeastSquareDecon.cc:196
void changeparameter(const mspass::utility::Metadata &md)
Definition LeastSquareDecon.cc:57
void process()
Definition LeastSquareDecon.cc:75
mspass::seismic::CoreTimeSeries actual_output()
Return the actual output of the deconvolution operator.
Definition LeastSquareDecon.cc:136
Base class decon operator for single station 3C decon (receiver functions).
Definition ScalarDecon.h:30
std::vector< double > data
Data vector to be deconvolved by concrete scalar methods.
Definition ScalarDecon.h:140
std::vector< double > wavelet
Source-wavelet estimate used by concrete scalar methods.
Definition ScalarDecon.h:142
Scalar time series data object.
Definition CoreTimeSeries.h:17
Type-safe metadata container used throughout MsPASS.
Definition Metadata.h:101