1#ifndef __NOISE_STABLE_DECON_H__
2#define __NOISE_STABLE_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/seismic/PowerSpectrum.h"
8#include "mspass/utility/Metadata.h"
11namespace mspass::algorithms::deconvolution {
43 const std::vector<double> &
wavelet,
44 const std::vector<double> &
data);
56 void loadnoise(
const std::vector<double> &noise);
77 double max_gain()
const {
return max_gain_actual; }
83 std::vector<double> noise_power_spectrum(
const double dt);
84 double reliability_taper(
const double snr)
const;
85 double mu_min, alpha, noise_floor, gain_max;
86 double snr_taper_low, snr_taper_high;
87 bool use_reliability_taper;
88 bool noise_vector_loaded, noise_spectrum_loaded;
90 std::vector<double> noise;
92 double max_gain_actual, noise_amplification, effective_bandwidth_fraction;
Object to hold components needed in all fft based decon algorithms.
Definition FFTDeconOperator.h:21
Noise-aware stable FFT inverse used by NS-GID.
Definition NoiseStableDecon.h:26
mspass::utility::Metadata QCMetrics()
Return appropriate quality measures.
Definition NoiseStableDecon.cc:290
void process()
Compute the noise-stable inverse filter and result.
Definition NoiseStableDecon.cc:168
double gain_cap() const
Definition NoiseStableDecon.h:79
mspass::seismic::CoreTimeSeries inverse_wavelet()
Return a FIR represention of the inverse filter.
Definition NoiseStableDecon.cc:286
mspass::seismic::CoreTimeSeries actual_output()
Return the actual output of the deconvolution operator.
Definition NoiseStableDecon.cc:240
void changeparameter(const mspass::utility::Metadata &md)
Update operator parameters from a Metadata container.
Definition NoiseStableDecon.cc:99
void loadnoise(const std::vector< double > &noise)
Load a noise waveform used to form frequency-dependent damping.
Definition NoiseStableDecon.cc:106
double max_gain() const
Definition NoiseStableDecon.h:77
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
Definition PowerSpectrum.h:11