Bonjour,
je souhaite tracer la vitesse de groupe d 'un filtre analogique.
J'ai tape ce code:
Ca a l'air ok pour ordre=1 ou 2 mais des pics apparaissent pour les valeurs superieures.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 function [] = gen_butter() ordre=1; [b,a]=butter(ordre, 10, 's'); [h,w]=freqs(b,a); for jj=2:length(w)-1 tgd(jj)=-(unwrap(angle(h(jj+1)))-unwrap(angle(h(jj-1))))/(w(jj+1)-w(jj-1)); end tgd(1)=tgd(2); tgd(length(w))=tgd(length(w)-1); semilogx(w,tgd) end
Merci.
(Clavier qwerty, teste sur Matlab 2012a et 2010a.)
Partager