Function "lowpass()" Behavior Dependent on Sampling Rate?

1 view (last 30 days)
Hi folks,
I'm trying to determing the bandwidth of amplifier I'll need, as part of control system.
So I wrote up a simulator script and got this waveform:
Fig.1: Waveform from simulator output
Then I tried to apply a lowpass filter to the waveform, and see how the signal will be warped by the limited bandwidth.
I tried to use the "lowpass()" function provided in the signal processing toolbox:
Fig.2: Call of the lowpass function
Here comes the wierd part, the output do not change when I changed the variable "bnd_f", which should be the cut-off frequency. But when I changed the simulator time resolution (i.e. 1/sampling rate), the output from "lowpass()" changed.
Fig.3: The changed value res_t is highlighted
Fig.4: Resolution = 1ns
Fig.5: Resolution = 5ns
Fig.6 Resolution = 10ns
I'm so confused by what's going on. Any suggestion is highly appreciated!
Many Thanks,
Anyu
  1 Comment
Anyu
Anyu on 20 Sep 2024
Seems like I posted the wrong picture for Resolution = 5ns, here's the correct one:
Replace Fig.5: Resolution = 5ns

Sign in to comment.

Answers (1)

Rishav
Rishav on 20 Sep 2024
Hi Anyu,
Yes, the 'lowpass' function in MATLAB is dependent on the sampling rate of the input signal.
Please refer to the following documentation to know more about the 'lowpass' function:
  1 Comment
Anyu
Anyu on 20 Sep 2024
Thank you for your reply!
In that case, can you please suggest some way I can test the impact of bandwidth on the signal? The target signal is output from simulator, and contained in a 1x20001 vector in workspace.
Thank you very much!

Sign in to comment.

Products


Release

R2023a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!