|
From: | Ravishankar. M |
Subject: | [Discuss-gnuradio] Interpolation and filtering |
Date: | Wed, 3 Jun 2009 17:42:48 +0530 |
Hello all, I have two interpolation and filtering related queries
in “gri_mmse_fir_interpolator_cc.cc”. 1) In the code portion: gri_mmse_fir_interpolator_cc::gri_mmse_fir_interpolator_cc
() { filters.resize (NSTEPS + 1); for (int i = 0; i < NSTEPS + 1; i++){ std::vector<float> t
(&taps[i][0], &taps[i][NTAPS]);----------------------------------------(1)
filters[i] = gr_fir_util::create_gr_fir_ccf (t);----------------------------------------------------(2) } } Can you let me know what is performed in steps (1) and (2). In
step (2), filter is designed but I don’t understand the procedure behind
the design. “Taps[][]” is a two dimensional array defined and
provided values in “interpolator_taps.h”. I don’t understand
the step (1) of how the 2D array is used. Can anyone please provide their explanation
involved in this procedure? 2) In the code portion: gr_complex gri_mmse_fir_interpolator_cc::interpolate (const gr_complex
input[], float mu) { int imu = (int)
rint (mu * NSTEPS); assert (imu >= 0); assert (imu <= NSTEPS);
gr_complex r = filters[imu]->filter (input);------------------------------------------------------------------(1) return r; } What “filter” function is called in step (1)? How
exactly is the interpolation done and values returned using “filter”? Thanks in advance. Regards |
[Prev in Thread] | Current Thread | [Next in Thread] |