47 const auto patch = diff->patch();
48 const auto qweight = diff->weights();
50 const int poffset_bin = diff->poffset_bin();
51 const int pbin =
m_impact - poffset_bin;
52 const int np =
patch.rows();
53 if (pbin<0 || pbin >= np) {
57 const int toffset_bin = diff->toffset_bin();
58 const int nt =
patch.cols();
62 for (
int tbin=0; tbin<nt; ++tbin) {
63 const int absbin = tbin+toffset_bin;
92 double tmin=0, tmax=0;
96 auto td = diff->time_desc();
98 const double ltmin = td.center - td.sigma*nsigma;
99 const double ltmax = td.center + td.sigma*nsigma;
108 return std::make_pair(tmin,tmax);
std::vector< GaussianDiffusion::pointer > m_diffusions
Waveform::compseq_t m_weight_spectrum
Waveform::realseq_t & weightform() const
Waveform::compseq_t & spectrum() const
Waveform::realseq_t & waveform() const
void calculate(int nticks) const
Waveform::realseq_t m_weights
void add(GaussianDiffusion::pointer diffusion)
std::pair< double, double > span(double nsigma=0.0) const
static int max(int a, int b)
T min(sqlite3 *const db, std::string const &table_name, std::string const &column_name)
Waveform::realseq_t m_waveform
Waveform::compseq_t & weight_spectrum() const
std::shared_ptr< GaussianDiffusion > pointer
Waveform::compseq_t m_spectrum