Passband ripple and stopband attenuation

37 次查看(过去 30 天)
Hello ,
I want to know how to select the passband ripple for my signal , does it depend on specific standered to be selected ? does it hava anything to do with the fft ?
  3 个评论
Ali
Ali 2024-5-24
How does changing the passband and stopband attenuation affect the filter's performance?
Star Strider
Star Strider 2024-5-25
@Ali — If the passband and stopband attenuation values differ significantly, this can result in a very steep transition region, and the filter can exhibit undesirable characteristics. Reducing the difference in the passband and stopband attenuation values can improve filter performance in this instance. Other than that, the only effects are to change the amplitudes of the signal components in the passband and stopband.

请先登录,再进行评论。

采纳的回答

Star Strider
Star Strider 2021-3-15
Passband ripple (derived from elliptic and Chebychev filters and not strictily applicable to all filter designs, such as Butterworth) is generally set at 1 dB. Stopband ripple or attenuation can be whatever you want it to be (within limits), with usual values being between 50 dB and 100 dB. Note that getting the [z,p,k] outputs of the filter design functions and then using the zp2sos function generally results in a stable filter.
  6 个评论
Omar Abdel Deen
Omar Abdel Deen 2021-4-4
Hello @Star Strider could you give me your opinion about this ,, I have extracted the Q,R,S,P,T but still not sure whether I got them correctly or not , this is the figure ,and here is the code I used after I got the R-peaks
for i=1:length(locs)
[Q_peak(i), Q_locs(i)] = min(ecg_res_fil(locs(i)-numOfsam_tolook:locs(i)));%Getting the min peak before the R-peak
[S_peak(i), S_locs(i)] = min(ecg_res_fil(locs(i):locs(i)+numOfsam_tolook));%Getting the min peak after the R-peak
Q_loc(i) = locs(i)-numOfsam_tolook+Q_locs(i)-1;
S_loc(i) = locs(i)+S_locs(i)-1;
[P(i),P_locs(i)] = max(ecg_res_fil(locs(i)-samples_tolook));
[T_peaks(i),T_locs(i)] = max(ecg_res_fil(S_loc(i):(S_loc(i)+Tsamples_tolook)));
P_loc(i) = locs(i) - P_locs(i)-samples_tolook-1;
T_loc(i) = S_loc(i)+T_locs(i)-1;
end
after that I wanted to get the PR ,QT ,ST intervals , depending on there definition I used this code
RR_R = diff(locs)/Fs; % RR interval (seconds)
QRS_R = (S_loc - Q_loc)/Fs; % QRS width (seconds)
PR_R = (Q_loc - P_loc)/Fs; % PR interval
Is this right ?? THANK YOU
Star Strider
Star Strider 2021-4-4
That appears to be correct to me. (For the record, I am a Board-Certified Internal Medicine physician, now retired.)

请先登录,再进行评论。

更多回答(0 个)

产品


版本

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by