Académique Documents
Professionnel Documents
Culture Documents
B. David Généralités
2015 T. Bilinéaire
RIF à φ linéaire
1
Généralités
Critères de choix
RIF ou RII ?
RII :
§ + : complexité, imitation des filtres analogiques
§ - : pb d’arrondis de calcul cumulatifs, sensibilité à la représentation finie
des coefficients, phase non linéaire
RIF :
§ + : phase exactement linéaire possible, garantie de stabilité, non
cumulation des erreurs de calcul (non récursifs)
§ - : complexité (par ex. pour traduire des résonances ou pour assurer une
bonne sélectivité)
on suppose
pour construire la bande atténuée, on place des zéros en 0.1, 0.2...
0.5.
Magnitude (dB)
20
0
Code
-20
z = exp(j*2*pi*[0.1 .2
-40
.3 0.4 0.5]);
0 0.1 0.2 0.3 0.4 0.5
z = [z conj(z)];
0 N = poly(z);
Phase (degrees)
-100 freqz(N,1,4096,1)
-200
0 0.1 0.2 0.3 0.4 0.5
Frequency (Hz)
Dénominateur seul
40
Magnitude (dB)
20
-20
0 0.1 0.2 0.3 0.4 0.5
100
Phase (degrees)
-100
-200
0 0.1 0.2 0.3 0.4 0.5
Frequency (Hz)
20
0
-20
-40
0 0.1 0.2 0.3 0.4 0.5
0
Phase (degrees)
-100
-200
-300
0 0.1 0.2 0.3 0.4 0.5
Frequency (Hz)
Bande de transition
o
o
o
!
o !
!
!
o !
!
o
o
o
Transformation bilinéaire
Définition et propriétés
Transforme
§ le demi-plan gauche ➠ intérieur du C1 (conserve la stabilité)
§ la droite imaginaire ➠ C1
§ Ω tend vers l’infini ➠ ν tend vers 0.5 (pas de repliement)
Transformation bilinéaire
Plan P
Plan Z
!
!
!
!
!
calcul final
filtre de Butterworth
Magnitude (dB)
0
-20
Réponse
-40
en fréquence
2N-1 dérivées
-60 nulles en 0 :
-80
-100
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
0
Phase (degrees)
-50
-100
-150
-200
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
Frequency (Hz)
2015 Synthèse de filtres
12
Synthèse des RII par T.B.
forme particulière
0.8 du gain faisant intervenir des fonctions elliptiques
condition
0.7 sur les fréquences de transition : Ωc ΩA = 1
0.5
0.4
0.3
0.2
0.1
0
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
Ω
A fréquence
-0.5
-1
-1.5
0 50 100 150 200 250 300 350 400
temps discret
2015 Synthèse de filtres
15
Synthèse des RIF > RIF à phase linéaire
type I
1
g(n)
0.5
0
-15 -10 -5 0 5 10 15
1
g(n-p)
0.5
0
-15 -10 -5 0 5 10 15
1
h(n)
0.5
0
-15 -10 -5 0 5 10 15
temps discret
2015 Synthèse de filtres
17
Synthèse des RIF > RIF à phase linéaire
type II
1
g(n)
0.5
0
-15 -10 -5 0 5 10 15
1
g(n-p)
0.5
0
-15 -10 -5 0 5 10 15
1
h(n)
0.5
0
-15 -10 -5 0 5 10 15
temps discret
2015 Synthèse de filtres
18
Synthèse des RIF > RIF à phase linéaire
type III
1
d g(n)
-1
-15 -10 -5 0 5 10 15
1
d g(n-p)
-1
-15 -10 -5 0 5 10 15
1
h(n)
-1
-15 -10 -5 0 5 10 15
temps discret
2015 Synthèse de filtres
19
Synthèse des RIF > RIF à phase linéaire
-1
-15 -10 -5 0 5 10 15
1
d g(n-p)
-1
-15 -10 -5 0 5 10 15
1
h(n)
-1
-15 -10 -5 0 5 10 15
temps discret
2015 Synthèse de filtres
20
Synthèse des RIF > RIF à phase linéaire
En résumé
Type I Passe-bas
N impair - Passe-Haut
symétrique Passe-Bande
Type II Passe-bas,
N pair H(-1) = 0 Passe-bande
symétrique
Filtres spéciaux
Différentiateur : exemple
0.5
x
y ≈ dx/dt
-0.5
0 20 40 60 80 100 120 140
n
3 10
0
2
-10
ΦH
|H|
1
-20
0 -30
0 0.1 0.2 0.3 0.4 0 0.1 0.2 0.3 0.4
ν ν
-1
-2
0 20 40 60 80 100 120
n
20 0
0
-20 -20
|H|dB
-40
ΦH
-60 -40
-80
-100 -60
0 0.1 0.2 0.3 0.4 0 0.1 0.2 0.3 0.4
fréquence réduite ν ν
Synthèse à fenêtre
Algorithme simple :
§ inversion de Hidéal
§ troncature symétrique ≡ multiplication par une fenêtre finie
§ décalage pour rendre le filtre causal
Donne nécessairement type I ou III (N impair)
Exemple :
H i (e j2πν)
§ soit Hi(e
j2πν ) ci-contre
§ calculer hi(n)
§ en déduire h(n) par troncature
rectangulaire de longueur 2P-1,
P = 4.
§ Représenter H(ej2πν)
νc 0.5
Prolates sphéroïdes
terme général de R :
définie positive (forcément)
algorithme de calcul
§ 1. calcul de R
§ 2. décomposition aux valeurs propres
§ 3. h = vecteur propre unitaire associé à la plus grande valeur propre
extension : contrainte en minimisation d’erreur quadratique sur les
différentes bandes → filtres propres.
Exemple
0.35
0.3
50 0.25
0.2
Magnitude (dB)
h(n)
0 0.15
0.1
-50 0.05
0
0 10 20 30 40
n
-100
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 clear all
Frequency (Hz) nu0 = 0.05; % freq de coupure
100 N = 33 ; % longueur du filtre
n = 0:N-1;
0
Phase (degrees)
-100 L1 = sincard(2*pi*nu0*n)
-200 R = nu0*toeplitz(L1);
[V,lambda]=eig(R,'nobalance');
-300
lambda = diag(lambda);
-400 ind = find(lambda==max(lambda));
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
Frequency (Hz)
h = V(:,ind);
rappel : la forme de la rf =
on cherche à minimiser le maximum d’une erreur pondérée
soit
k =0
en 0 et M-1 autres maxima
algorithme d’échange :
§ 0: init : on réparti dans B les candidats au max en prenant les bords
§ 1: a l’aide d’une interpolation, on calcule les coeffs du polynome
§ 2: on recalcule les candidats comme les max du polynome
§ 3: retour à 1 jusqu’à convergence de l’erreur