46#include "EST_wave_aux.h"
47#include "EST_simplestats.h"
48#include "EST_cutils.h"
61 " channel EST_Wave with " << b.
num_channels() <<
" channel EST_Wave\n";
65 for (i = 0; i < size; ++i)
72void meansd(
EST_Wave &
tr,
float &mean,
float &
sd,
int channel)
77 for (n = 0, i = 0, mean = 0.0; i <
tr.num_samples(); ++i)
79 mean +=
tr.a(i, channel);
85 for (i = 0, mean = 0.0; i <
tr.num_samples(); ++i)
86 var +=
pow(
tr.a(i, channel) - mean,
float(2.0));
98 for (i = 0; i < size; ++i)
99 sum +=
pow(
float(a.
a(i, channel) - b.
a(i, channel)),
float(2.0));
101 sum =
sqrt(sum / size);
110 for (i = 0; i < size; ++i)
113 sum +=
fabs(
float(a.
a(i, channel) - b.
a(i, channel)));
126 for (i = 0; i < size; ++i)
129 predict = b.
a(i, channel);
130 real = a.
a(i, channel);
133 error = predict-real;
136 xx += predict*predict;
141 cor = (
xy.mean() - (
x.mean()*
y.mean()))/
142 (
sqrt(
xx.mean()-(
x.mean()*
x.mean())) *
143 sqrt(
yy.mean()-(
y.mean()*
y.mean())));
155 for (i = 0; i <
wave.num_samples(); ++i)
156 for (
j = 0;
j <
wave.num_channels(); ++
j)
169 " channel EST_Wave with " << b.
num_channels() <<
" channel EST_Wave\n";
174 e[i] = rms_error(a, b, i);
188 " channel EST_Wave with " << b.
num_channels() <<
" channel EST_Wave\n";
193 e[i] = abs_error(a, b, i);
207 " channel EST_Wave with " << b.
num_channels() <<
" channel EST_Wave\n";
212 cor[i] = correlation(a, b, i);
227 int *r =
new int[
relax*3];
233 for (k = 0,
j = Gof((i -
relax), 0);
j < i +
relax + 1; ++
j, ++k)
235 if (ref.
a(i, l) > 0.5)
short & a(int i, int channel=0)
int num_channels() const
return the number of channels in the waveform
int num_samples() const
return the number of samples in the waveform