Borrar filtros
Borrar filtros

Passband ripple and stopband attenuation

37 visualizaciones (últimos 30 días)
Omar Abdel Deen
Omar Abdel Deen el 14 de Mzo. de 2021
Comentada: Star Strider el 25 de Mayo de 2024
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 comentarios
Ali
Ali el 24 de Mayo de 2024
How does changing the passband and stopband attenuation affect the filter's performance?
Star Strider
Star Strider el 25 de Mayo de 2024
@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.

Iniciar sesión para comentar.

Respuesta aceptada

Star Strider
Star Strider el 15 de Mzo. de 2021
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 comentarios
Omar Abdel Deen
Omar Abdel Deen el 4 de Abr. de 2021
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 el 4 de Abr. de 2021
That appears to be correct to me. (For the record, I am a Board-Certified Internal Medicine physician, now retired.)

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Productos


Versión

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by