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

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

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)

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

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

Asked:

on 20 Sep 2024

Commented:

on 20 Sep 2024

Community Treasure Hunt

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

Start Hunting!