Aller au contenu
Favoris

Calculateur de transformée de Fourier discrète inverse

Mis à jour :

Convertissez les composantes fréquentielles X[k] en une séquence temporelle x[n] avec ce calculateur gratuit de transformée de Fourier discrète inverse (TFDI). Saisissez des valeurs réelles ou complexes séparées par des virgules et obtenez le résultat instantanément.

Reconstructeur de signal temporel par TFDI

Champs de saisie
X[k]
Valeurs réelles ou complexes séparées par des virgules (p. ex. 1, 0, 0, 0 ou 1+2j, 0, -1, 0)
Si activé, le résultat se met à jour automatiquement dès que vous modifiez une valeur.

Formule de la transformée de Fourier discrète inverse

Formule
\[ x[n] = \frac{1}{N} \sum_{k=0}^{N-1} X[k] \, e^{j 2\pi kn / N}, \quad n = 0, 1, \ldots, N-1 \]

Où :

  • \(x[n]\) — échantillon temporel d’indice \(n\)
  • \(X[k]\) — composante fréquentielle (spectrale) d’indice \(k\)
  • \(N\) — nombre total d’échantillons, égal au nombre de valeurs saisies
  • \(j\) — unité imaginaire, \(j^2 = -1\)
  • \(n\) — indice de l’échantillon dans le domaine temporel (\(0 \le n \le N-1\))
  • \(k\) — indice du coefficient fréquentiel (\(0 \le k \le N-1\))

Il s’agit de la définition classique de la TFDI : chaque échantillon temporel est la somme de toutes les composantes spectrales pondérées par des exponentielles complexes, puis multipliée par \(1/N\). Elle inverse exactement la transformée de Fourier discrète (TFD).

TFD inverse – Exemple de calcul

Exemple : la séquence fréquentielle \(X[k] = 1, 0, 0, 0\) (les valeurs par défaut du calculateur), donc \(N = 4\).

\[ x[n] = \frac{1}{4} \sum_{k=0}^{3} X[k]\, e^{j 2\pi kn/4} = \frac{1}{4} \left( X[0] \cdot e^{j 0} \right) = \frac{1}{4} \cdot 1 = 0.25 \]

Comme seul \(X[0]\) est non nul, chaque échantillon reçoit la même contribution.

Résultat : \(x[n] = 0.25, 0.25, 0.25, 0.25\) — une séquence constante (composante continue). Un seul coefficient non nul \(X[0]\) permet toujours de reconstruire un signal constant.

Deuxième exemple (entrée complexe) : \(X[k] = 1+2j,\; 0,\; -1,\; 0\).

\[ x[0] = \tfrac{1}{4}\left[(1+2j) + 0 + (-1) + 0\right] = 0.5j \]

Résultat : \(x[n] = 0.5j,\; 0.5+0.5j,\; 0.5j,\; 0.5+0.5j\). Notez la répétition du motif : les coefficients 0 et 2 sont les composantes d'indice pair (à symétrie conjuguée) du spectre.

Comment utiliser le calculateur

  1. Saisissez vos valeurs fréquentielles dans le champ Valeurs du domaine fréquentiel sous forme de liste séparée par des virgules, par exemple 1, 0, 0, 0 ou 1+2j, 0, -1, 0.
  2. Utilisez des nombres réels ordinaires (3, -2.5) ou des nombres complexes sous la forme a+bj (1+2j, -1-1.5j). Une valeur purement imaginaire peut s’écrire 2j. Ne mettez pas d’espaces à l’intérieur d’un nombre complexe.
  3. Cliquez sur Calculer.
  4. Consultez la séquence reconstruite dans le champ de résultat Séquence temporelle x[n]. La sortie contient exactement autant d’échantillons que de valeurs saisies, dans l’ordre \(x[0], x[1], \ldots, x[N-1]\).

Qu’est-ce que la transformée de Fourier discrète inverse ?

La transformée de Fourier discrète inverse (TFDI) est l’opération qui ramène la représentation fréquentielle d’un signal dans le domaine temporel. Son opération réciproque, la TFD, décompose une séquence de \(N\) échantillons temporels en \(N\) coefficients spectraux complexes ; la TFDI inverse ce processus en reconstruisant les échantillons d’origine à partir du spectre. Appliquer la TFD puis la TFDI (avec le même facteur \(1/N\) utilisé ici) restitue exactement le signal d’origine, aux erreurs d’arrondi près.

La TFDI est importante parce qu’une grande partie du traitement moderne du signal s’effectue dans le domaine fréquentiel. On conçoit des filtres en façonnant une réponse en amplitude ; les systèmes de communication modulent des données sur des coefficients fréquentiels précis et les codecs audio (comme MP3 ou AAC) stockent les signaux sous forme de coefficients spectraux. À l’issue de toutes ces opérations, la TFDI transforme le spectre traité en échantillons que l’on peut entendre ou transmettre. En pratique, elle est calculée au moyen de l’algorithme FFT, qui produit des résultats identiques bien plus rapidement ; ce calculateur effectue la somme directe, idéale pour apprendre et vérifier les résultats.

L’interprétation du résultat est simple une fois quelques propriétés connues. Le coefficient \(X[0]\) représente la composante continue (la moyenne) : une valeur élevée de \(X[0]\) produit donc un signal avec un décalage constant. Les coefficients d’indice supérieur correspondent à des oscillations plus rapides : le coefficient \(k\) effectue \(k\) cycles complets sur les \(N\) échantillons. Si le spectre d’entrée présente une symétrie conjuguée — \(X[N-k] = X[k]^*\) — le signal reconstruit est purement réel, ce qui explique pourquoi les signaux réels produisent des spectres symétriques. Une entrée asymétrique, comme dans le deuxième exemple ci-dessus, produit des échantillons complexes.

Hypothèses, limites et conseils

  • Convention de normalisation : le calculateur applique le facteur \(1/N\) uniquement à la transformée inverse (convention « 1/N sur la transformée inverse »). Si votre définition de la TFD utilise \(1/\sqrt{N}\) dans les deux sens, multipliez la sortie par \(\sqrt{N}\) pour comparer.
  • Nombre de points : \(N\) correspond au nombre de valeurs séparées par des virgules que vous saisissez. Ajoutez des zéros pour atteindre la longueur souhaitée : compléter par des zéros dans un domaine produit une interpolation dans l’autre.
  • Format des nombres complexes : utilisez j (et non i) pour l’unité imaginaire, sans espaces : 2-3j est valide, 2 - 3i ne l’est pas.
  • Précision : les résultats sont affichés avec 4 décimales. De très petites parties imaginaires résiduelles (par exemple 0.0000j) dans des résultats théoriquement réels sont des effets d’arrondi normaux.
  • Taille pratique : le calcul direct en \(O(N^2)\) convient aux séquences allant jusqu’à quelques centaines de points ; pour les grands spectres, utilisez une implémentation FFT.

Un bon moyen de vérifier le résultat consiste à saisir un spectre constant comme 1, 1, 1, 1 : la TFDI doit renvoyer une impulsion unique \(1, 0, 0, 0\), puisqu’un spectre constant est la TFD d’une impulsion.

WPCalc propose également d’autres outils d’ingénierie, du calculateur de résistance en parallèle et du calculateur d’inductance en série au calculateur de puissance active et réactive pour l’analyse des circuits en courant alternatif.

Questions fréquentes

Comment calculer la TFDI à la main ?

Pour chaque échantillon de sortie, multipliez chaque valeur spectrale par une exponentielle complexe, puis additionnez les résultats. Par exemple, avec N = 4 et X[k] = 2, 0, 1, 0 : x[0] = (2 + 1)/4 = 0,75, tandis que x[1] = (2 + 1·e^{jπ/2})/4 = (2 + j)/4 = 0,5 + 0,25j. Répétez le calcul pour n = 2 et n = 3. Utilisez la formule d’Euler \( e^{j\theta} = \cos\theta + j\sin\theta \) pour évaluer chaque exponentielle, puis divisez chaque somme par N.

Pourquoi mon résultat est-il complexe alors que j’attendais un signal réel ?

La TFDI ne renvoie des échantillons purement réels que si le spectre présente une symétrie conjuguée, c’est-à-dire \( X[N-k] = X[k]^* \). Pour N = 8, X[7] doit être le conjugué de X[1], X[6] celui de X[2], et ainsi de suite, tandis que X[0] et X[4] doivent être réels. Si vous saisissez une liste quelconque comme 1, 2, 3, 4, cette symétrie n’est pas respectée : il est donc normal que le résultat contienne des parties imaginaires. De très petites valeurs résiduelles comme 0,0000j dans des résultats par ailleurs réels sont simplement dues à l’arrondi.

Quelle est la différence entre la TFDI et la FFT inverse ?

Elles calculent exactement la même chose. La FFT inverse est simplement un algorithme rapide qui évalue la somme de la TFDI en \( O(N \log N) \) opérations au lieu de \( O(N^2) \). Les résultats sont identiques aux erreurs d’arrondi en virgule flottante près. Ce calculateur utilise la somme directe : il convient donc surtout aux séquences de quelques centaines de points ou moins. Pour les spectres plus longs, utilisez un logiciel fondé sur la FFT.

Pourquoi mes valeurs diffèrent-elles de celles d’autres outils d’un facteur N ou √N ?

Selon la convention de TFD/TFDI utilisée, le facteur de normalisation n’est pas placé au même endroit. Ce calculateur utilise la convention « 1/N sur la transformée inverse » : la TFD directe n’est pas normalisée et la transformée inverse comporte le facteur \( 1/N \). Certains outils (comme la fonction ifft de NumPy) font de même, mais d’autres utilisent \( 1/\sqrt{N} \) pour les deux transformées ou appliquent \( 1/N \) à la transformée directe. Si les résultats diffèrent, multipliez ou divisez par N ou \( \sqrt{N} \) pour les faire correspondre.

Que signifient les indices fréquentiels négatifs ou hors plage ?

Le spectre de la TFD est périodique de période N : un indice supérieur à N-1 revient donc au début, selon \( X[N+k] = X[k] \). Les fréquences négatives sont stockées dans la moitié supérieure du tableau. Par exemple, avec N = 8, le coefficient d’indice 6 représente la fréquence -2, et celui d’indice 7 représente -1. Si vous disposez d’un spectre bilatéral énuméré de -N/2 à N/2-1, réorganisez-le en plaçant les coefficients de fréquence négative à la fin de la liste avant de les saisir.

Puis-je saisir moins de valeurs ou un nombre impair de valeurs ?

Oui : N correspond simplement au nombre de valeurs séparées par des virgules que vous saisissez et peut être pair ou impair. Il n’est pas nécessaire que ce nombre soit une puissance de deux (cette restriction ne concerne que certains algorithmes FFT, pas la somme directe de la TFDI). Une seule valeur comme 5 donne N = 1 et renvoie cette valeur divisée par 1, soit 5. Si vous avez besoin d’une longueur précise, ajoutez des zéros : compléter le spectre par des zéros interpole le signal reconstruit.

Comment vérifier que le résultat est correct ?

Une vérification rapide consiste à appliquer la TFD directe au résultat : vous devriez retrouver exactement les valeurs saisies, aux arrondis à 4 décimales près. Autre test : saisissez 1, 1, 1, 1 et vérifiez que le résultat est l’impulsion 1, 0, 0, 0, puisqu’un spectre constant est la TFD d’une impulsion. Vérifiez également que la moyenne des échantillons obtenus est égale à \( X[0]/N \), car le coefficient d’indice zéro représente toujours la composante continue (la moyenne).

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *