Mercurial > hg > aimc
annotate src/CAR.h @ 494:24828350536a carfac_cpp
Fixed the ERB_Hz default parameter bug also in c++
Introduced FloatMatrix to build on the concept of FloatArray typedef
author | Ulf.Hammarqvist@gmail.com |
---|---|
date | Sun, 08 Apr 2012 19:40:13 +0000 |
parents | d56da20c09ae |
children |
rev | line source |
---|---|
Ulf@477 | 1 #ifndef CAR_H_ |
Ulf@477 | 2 #define CAR_H_ |
Ulf@477 | 3 |
Ulf@484 | 4 #include "CARFAC_common.h" |
Ulf@483 | 5 #include <cmath> |
Ulf@477 | 6 |
Ulf@494 | 7 const double kDefaultErbBreakFreq = 165.3; |
Ulf@494 | 8 const double kDefaultErbQ = 1000/(24.7*4.37); |
Ulf@494 | 9 |
Ulf@484 | 10 class CAR_parameters{ |
Ulf@477 | 11 public: |
Ulf@484 | 12 CAR_parameters(): |
Ulf@484 | 13 velocity_scale_(0.2), |
Ulf@484 | 14 v_offset_(0.01), |
Ulf@484 | 15 v2_corner_(0.2), |
Ulf@484 | 16 v_damp_max_(0.01), |
Ulf@484 | 17 min_zeta_(0.10), |
Ulf@484 | 18 first_pole_theta_(0.085*kPi), |
Ulf@484 | 19 zero_ratio_(sqrt(2)), |
Ulf@484 | 20 high_f_damping_compression_(0.5), |
Ulf@484 | 21 erb_per_step_(0.5), |
Ulf@494 | 22 min_pole_hz_(30), |
Ulf@494 | 23 erb_break_freq_(kDefaultErbBreakFreq), |
Ulf@494 | 24 erb_q_(kDefaultErbQ) |
Ulf@494 | 25 { |
Ulf@484 | 26 // do nothing more |
Ulf@483 | 27 } |
Ulf@479 | 28 |
Ulf@484 | 29 virtual ~CAR_parameters(){ |
Ulf@484 | 30 // do nothing |
Ulf@484 | 31 } |
Ulf@479 | 32 |
Ulf@483 | 33 float velocity_scale_; |
Ulf@483 | 34 float v_offset_; |
Ulf@483 | 35 float v2_corner_; |
Ulf@483 | 36 float v_damp_max_; |
Ulf@483 | 37 float min_zeta_; |
Ulf@483 | 38 float first_pole_theta_; |
Ulf@483 | 39 float zero_ratio_; |
Ulf@483 | 40 float high_f_damping_compression_; |
Ulf@483 | 41 float erb_per_step_; |
Ulf@484 | 42 float min_pole_hz_; |
Ulf@494 | 43 float erb_break_freq_; |
Ulf@494 | 44 float erb_q_; |
Ulf@477 | 45 }; |
Ulf@477 | 46 |
Ulf@477 | 47 class CAR_coefficients{ |
Ulf@477 | 48 public: |
Ulf@483 | 49 CAR_coefficients(CAR_parameters*, float, FloatArray); |
Ulf@483 | 50 virtual ~CAR_coefficients(); |
Ulf@486 | 51 |
Ulf@487 | 52 FloatArray r1_coeffs_; |
Ulf@487 | 53 FloatArray a0_coeffs_; |
Ulf@487 | 54 FloatArray c0_coeffs_; |
Ulf@487 | 55 FloatArray h_coeffs_; |
Ulf@487 | 56 FloatArray g0_coeffs_; |
Ulf@487 | 57 FloatArray zr_coeffs_; |
Ulf@486 | 58 |
Ulf@478 | 59 private: |
Ulf@484 | 60 CAR_coefficients(); |
Ulf@477 | 61 }; |
Ulf@477 | 62 |
Ulf@477 | 63 #endif /* CAR_H_ */ |