31 m_frequency(0.5), m_bandwidth(0.1)
59 double a0, a1, a2, b1, b2;
71 std::complex<double> h;
72 std::complex<double> w;
73 std::complex<double> j(0.0,1.0);
74 std::complex<double> z;
80 h = 0.95 * (a0 * (z*z) + (a1*z) + a2) / ((z*z) - (b1*z) - b2);
82 return sqrt(std::norm(h));
122 for (
unsigned i = 0; i < in.
size(); ++i)
143 double new_freq = QVariant(fc).toDouble();
154 double new_bw = QVariant(bw).toDouble();
struct Kwave::BandPass::@2 m_filter
void output(Kwave::SampleArray data)
virtual double at(double f) Q_DECL_OVERRIDE
void setFrequency(const QVariant fc)
virtual void goOn() Q_DECL_OVERRIDE
Kwave::SampleArray m_buffer
static double sample2double(const sample_t s)
void setBandwidth(const QVariant bw)
static sample_t double2sample(const double f)
virtual ~BandPass() Q_DECL_OVERRIDE
unsigned int size() const
void setfilter_2polebp(double freq, double R)
void input(Kwave::SampleArray data)
bool resize(unsigned int size) Q_REQUIRED_RESULT