1
$\begingroup$

I have frequency response data of an analog system that I would like to turn into a digital filter in Matlab. Is it kosher to think of my frequency samples as constituting a DFT of the system impulse response, even though there was never a time-domain signal in the first place? If I do an ifft on the frequency response data, can this be treated as the impulse response of the system? If so, what is the sample rate? Do I assume it is twice the highest measured frequency?

Is there a way to build a digital filter from impulse response data without knowing the sample rate?

$\endgroup$
2
$\begingroup$

So, after worrying about whether the frequency response is "low pass in nature" (i don't think it needs to be a LPF, it could be high pass in nature, but all of the interesting features of your frequency response should be below Nyquist and maybe well below Nyquist), you might also wonder about if you have the necessary phase information in your frequency response. if it is magnitude-only data, then you might have to guess at the phase.

if you iFFT the magnitude-only data (mirroring it about $f=0$), you will come up with an impulse response that is also mirrored about $t=0$. that's fine, give it a delay of half of the length of the impulse response, and you have a linear-phase FIR. you get linear phase because you started not knowing anything of the phase. you can also take that FIR, factor it with some nasty factorization program (maybe MATLAB has that), reflect (using the reciprocal function) all zeros outside the unit circle to inside the unit circle, the re-multiply all of the factors and you will have a minimum-phase FIR with the same magnitude frequency response.

$\endgroup$
  • $\begingroup$ So, it's actually a bandpass characteristic with center freq at 1 GHz, and I do have the phase information. Are you saying that the iFFT can be used directly as an FIR filter? I don't have to think about the sample period between iFFT values? $\endgroup$ – CMDoolittle Jul 10 '15 at 20:08
  • $\begingroup$ i am saying that you can take your frequency response, from DC to something over 2 GHz, magnitude and phase, sample that complex-valued function with sufficient density, mirror that sampled frequency response into negative frequency, inverse FFT that sampled frequency response, and what comes out will be an FIR with a frequency response that should well emulate your bandpass characteristic. $\endgroup$ – robert bristow-johnson Jul 10 '15 at 20:41
  • $\begingroup$ @robert bristow-johnson if it doesn't "need to" be called as low pass due to the formally lack of the DC content, then it can never be highpass which would formally involve frequencies at infinity => not bandlimited => impossible to sample due to Shannon-Nyquist sampling theorem. Therefore it is safe to consider any discerete-time simulatable analog system as lowpass in nature... loosely speaking... $\endgroup$ – Fat32 Jul 10 '15 at 20:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.