MATLAB: Butterworth filter: Use and domain types.

butterworthfilterMATLAB

I am using a butterworth filter to simulate a simple RC filter. The data I am filtering is a voltage signal in the time domain. I believe I am doing everything correctly:
[b,a] = butter(1, fc/(fs/2),'low');
%fc = cutoff freq in Hz, fs = sample frequency in Hz
filtered_data = filter(b, a, data);
%data = data in time domain
plot(time, filtered_data)
My questions are these:
  1. I assume I can do all of this in the time domain. Is that correct?
  2. I am implementing a butterworth filter in the "digital domain" but I see that it is possible to implement a filter in the "analog domain". What is the difference and if there is a difference which is most applicable?
Thanks.

Best Answer

  1. Yes, you can do this in time domain. If you want a further, deeper, analysis, you would need to do a frequency domain analysis (in the Z plane).
  2. Yes, there is a difference. Implementing an analogue filter is normally done in the original system of the signal (directly in the voltage signal), since the nature of the signal is analogic too. When you introduce the signal to the computer (normally with an ADC, Analog to Digial Converter), it is digitalized and any processing you do is considered digital.
Check this link for further, deeper information.
Hope it helps ;-) !
Related Question