# HG changeset patch # User Ulf.Hammarqvist@gmail.com # Date 1333217717 0 # Node ID c6bd1d58e72e92877639aa43066849dcad7d532e # Parent 181df875bf842c62a2e23154a810fcc351f7c515 stubbed CAR_coefficients constructor diff -r 181df875bf84 -r c6bd1d58e72e src/CAR.cpp --- a/src/CAR.cpp Sat Mar 31 17:36:22 2012 +0000 +++ b/src/CAR.cpp Sat Mar 31 18:15:17 2012 +0000 @@ -1,9 +1,27 @@ #include "CAR.h" #include "CARFAC_common.h" +#include -CAR_coefficients::CAR_coefficients(CAR_parameters* CAR_params, float fs, +CAR_coefficients::CAR_coefficients(CAR_parameters* car_params, float fs, FloatArray pole_freqs){ - // TODO stuff goes here + + // initialisation of the FloatArray coefficients, if needed. + + float f = pow(car_params->zero_ratio_, 2) + 1; + + FloatArray theta = pole_freqs; + FloatArray c0 = pole_freqs; + FloatArray a0 = pole_freqs; + + // temp until we get eigen in + for(float i=0; ifirst_pole_theta_* fs / (2*kPi); while (pole_hz > car_params->min_pole_hz_){ - pole_freqs_.push_back(pole_hz); // STL specific + pole_freqs_.push_back(pole_hz); // TODO: STL specific pole_hz = pole_hz - car_params->erb_per_step_ * ERB_Hz(pole_hz, erb_break_freq, erb_q); } - n_ch_ = pole_freqs_.size(); // STL specific + n_ch_ = pole_freqs_.size(); max_channels_per_octave_ = log(2) / log(pole_freqs_[0]/pole_freqs_[1]); diff -r 181df875bf84 -r c6bd1d58e72e src/CARFAC.h --- a/src/CARFAC.h Sat Mar 31 17:36:22 2012 +0000 +++ b/src/CARFAC.h Sat Mar 31 18:15:17 2012 +0000 @@ -13,7 +13,7 @@ public: CARFAC(int, CAR_parameters*, IHC_parameters*, AGC_parameters*, float, float); virtual ~CARFAC(); - static float ERB_Hz(float,float,float); + static float ERB_Hz(float, float, float); float fs_; float max_channels_per_octave_;