La fonction remez implémente l'algorithme d'échange de Remez pour la conception de filtre FIR.
Voir Theory and Application of Digital Signal Processing de Rabiner et Gold (Prentice-Hall, Inc.) et Digital Filter Design de Parks et Burrus (Wiley-Interscience) pour obtenir une description et des exemples de l'algorithme.
Filtre passe-bas
1. Définissez une réponse de 1 dans la bande passante et 0 dans la bande d'arrêt et interpolez une transition en ligne droite entre les arêtes de la bande passante et celles de la bande d'arrêt.
En général, le nombre de points dans la grille de fréquence doit être de l'ordre de 8 à 10 fois la longueur du filtre, avec des fréquences commençant à 0 et augmentant de façon uniforme jusqu'à juste au-dessous de 0.5. La définition de la réponse nécessite de définir les arêtes de la bande et les pondérations affectées aux erreurs de chaque bande. L'algorithme minimise l'erreur pondérée maximale sur la plage de fréquence [0, 0.5].
2. Définissez les arêtes de la bande passante et de la bande d'arrêt :
3. Définissez les pondérations de la bande passante, de la bande d'arrêt et de la bande de transition :
4. Définissez une fonction qui donne la réponse voulue comme fonction de fréquence. L'évaluation de chaque point de la grille élabore le vecteur de réponse.
5. Définissez le vecteur de pondération qui affecte à chaque point de la grille la pondération pour la bande correspondante.
6. Utilisez les fonctions remez et length pour calculer les coefficients de filtre :
7. Utilisez la fonction gain pour calculer, pour ce filtre de longueur impaire, les erreurs maximales de bande passante et de bande d'arrêt, qui sont fournies par le gain à 0 et 0.5 :
8. Tracez la fonction et sa réponse en fréquence de 0 à 0.5.
Les dix fréquences extrêmes sont visibles, y compris le point où la ligne (1 - δ1) traverse l'arête de la bande passante pb et le point où la ligne δ2 traverse l'arête de la bande d'arrêt sb. L'erreur alterne uniformément sur les fréquences extrêmes dans chaque bande. Pour voir un exemple dans lequel les deux erreurs d sont inégales, sélectionnez la pondération de la bande d'arrêt 0.5 dans les caractéristiques du filtre ci-dessus.
Filtre passe-bande
1. Définissez une fonction de réponse qui est construite en ajoutant des fonctions pour la réponse dans chaque bande de transition et dans la bande passante.
2. Appliquez immédiatement la fonction de filtre à l'ensemble de la grille en utilisant l'opérateur de vectorisation. Les pondérations sont uniformes.