Gammes numériques

L'applet qui suit fonctionne avec Netscape ou Internet Explorer à partir des versions  3.0 ; soyez patients : l'activation de la machine virtuelle Java et le chargement des classes peut dépasser la minute.

Les sons que nous entendons sont des vibrations du champ de pression des gaz qui nous entourent (normalement de l'air) ; ces vibrations sont audibles dans la gamme de fréquences s'étendant de 20 à 20000 Hertz ; le son numérique correspond à un échantillonage de ces vibrations : pour qu'un son numérique soit audible à sa fréquence nominale il faut non seulement qu'il soit d'une fréquence comprise dans l'intervalle 20-20000 Hertz mais aussi qu'il présente au moins 2 échantillons dans chaque période (théorème de Shannon). Dans l'applet qui suit la fréquence d'échantillonnage est de 8000 Hertz de sorte que nous avons limité la fréquence fondamentale à 2000 Hertz pour observer au moins quatre échantillons par période de la fréquence fondamentale ; toutefois rien n'empêche d'annuler l'amplitude de la fréquence fondamentale et d'observer n'importe quel harmonique non nul.

Pour obtenir un son  il faut cliquer sur le bouton d'une note ou taper une fréquence comprise entre 200 et 2000 Hertz dans le champ F0.

Quand on choisit une note sa fréquence s'affiche dans le champ F0.

Il est possible d'écouter un accord de 2 ou 3 notes en cliquant dans chacun des champs Wave1, Wave2 et Wave3 et en y cliquant une note ; il faut ensuite cliquer sur le boution mix123.

Cette possibilité d'écouter la superposition de 2 ou 3 fréquences fondamentales est intéressante pour tester la justesse de son oreille et pour mieux comprendre les phénomènes de battement à la base de l'accord des instruments de musique.

L'échantillonage est effectué à 8000 Hertz de sorte que la limite de numérisation est visible pour une fréquence de 2000 Hertz au passage de l'harmonique 3 à l'harmonique 4 : le son disparaît et l'unique échantillon par période est visible comme niveau  continu en déphasant l'harmonique (champ Phase exprimé en degrés (0 à 360 degrés)) ; au delà des 8000 Hertz de l'harmonique 4, il y a repliement du spectre et les sons produits ont une fréquence différence de la fréquence de l'harmonique avec la fréquence d'échantilllonnage.

Enfin les champs Amplitude et Phase acceptent non seulement des valeurs numériques mais aussi des fonctions de la variable x qui représente le numéro de l'harmonique : le résultat est surtout spectaculaire sur l'amplitude des harmoniques : en cliquant sur le bouton du "la" puis en tapant 1/x dans le champ Amplitude on obtient directement un "la" en dent de scie de fréquence fondamentale 440 Hertz.

Evitez d'utiliser les curseurs et rentrez plutôt les valeurs dans les fenêtres prévues à cet effet ; lisez si possible le mode d'emploi placé après l'applet.

Les fondements théoriques de la décomposition des signaux périodiques en séries de Fourier sont expliqués après le mode d'emploi.



No Java, no applet! Sorry! But it would look like this:
Ugh! Even no images?? USE NETSCAPE 3.0 !!! 

Mode d'emploi :


Synthèse de Fourier

Un signal périodique peut être décomposé en série de Fourier, c'est à dire en une somme de composantes sinusoïdales de fréquences multiples d'une fréquence fondamentale F0. L'expression générale s'écrit :

X(t) = A0/2 + A1*sin(2*p*F0*t+P1)+A2*sin(2*p*2*F0*t+P2)+...+An*sin(2*p*n*F0*t+Pn)+...

où An et Pn sont l'amplitude et la phase de l'harmonique n de fréquence n*F0.

La série de Fourier d'un créneau carré s'écrit :

X(t) = sin(2*p*F0*t)+1/3*sin(2*p*3*F0*t)+1/5*sin(2*p*5*F0*t)...+1/(2n+1)*sin(2*p*(2n+1)*F0*t)+...

ou

X(t) = sin(2*p*F0*t)-1/3*sin(2*p*3*F0*t)+1/5*sin(2*p*5*F0*t)...+(-1)n/(2n+1)*sin(2*p*(2n+1)*F0*t)+...

La série de Fourier d'une dent de scie s'écrit :

X(t) = sin(2*p*F0*t)+1/2*sin(2*p*2*F0*t)+1/3*sin(2*p*3*F0*t)+1/4*sin(2*p*4*F0*t)...+1/n*sin(2*p*n*F0*t)+...

Plus le développement possède des harmoniques de fréquences élevées plus le signal s'approche de la forme idéale.


Le code source (version 06/06/97) est disponible moyennant le respect de la license publique GNU 

Cette applet utilise le paquetage sun.audio. les utilisateurs HotJava doivent déclarer l'accès Unrestricted.

Cette applet avec sa documentation HTML a d'abord été déveoppée par Manfred Thole, thole@nst.ing.tu-bs.de, le 15 juillet 1996. L'original est disponible à :

  Deutsch http://www.nst.ing.tu-bs.de/schaukasten/fourier/

  English http://www.nst.ing.tu-bs.de/schaukasten/fourier/en_idx.html

Des modifications ont été apportées par Tom Huber, huber@gac.edu, le 27 septembre 1996 puis par Aimé Vareille le 6 juin 1997.

 Cette applet utilise le paquetage graph2d de Leigh Brookshaw pour l'interprétation d'équations.
Le code Java a été compilé avec JDK 1.02 ; le paquetage graphique de Leigh Brookshaw est très intéressant et bien documenté.
Internet Explorer 3.0 présente quelques défauts graphiques absents sous Netscape 3.02.