Changinging behavior of parameter update for PFB clock recovery alg.
[debian/gnuradio] / gnuradio-core / src / lib / filter / gr_pfb_clock_sync_ccf.h
index d99bd6fe717fde598d923798321278a88d5926ca..b8e0f83b68bc4a8f8c3c9073c5e334cd57075263 100644 (file)
@@ -58,13 +58,14 @@ class gr_pfb_clock_sync_ccf : public gr_block
   bool                    d_updated;
   unsigned int             d_sps;
   float                    d_alpha;
+  float                    d_beta;
   unsigned int             d_nfilters;
   std::vector<gr_fir_ccf*> d_filters;
   std::vector<gr_fir_ccf*> d_diff_filters;
   std::vector< std::vector<float> > d_taps;
   std::vector< std::vector<float> > d_dtaps;
-  float                    d_acc;
-  unsigned int             d_last_filter;
+  float                    d_k;
+  float                    d_rate;
   unsigned int             d_start_count;
   unsigned int             d_taps_per_filter;
 
@@ -98,7 +99,10 @@ public:
   void print_diff_taps();
 
   void set_gain(float gain)
-  { d_alpha = gain; }
+  { 
+    d_alpha = gain;
+    d_beta = 0.25*d_alpha*d_alpha;
+  }
   
   int general_work (int noutput_items,
                    gr_vector_int &ninput_items,