J'essaie de calculer numériquement, avec les fonctions fft et ifft de Matlab, la transformée inverse d'un produit de 2 transformées de Fourier. Ceci me sert pour trouver le signal de sortie d'un système linéaire avec un signal d'entrée donné.
En notantle signal de sortie,
la fonction de transfert et
le signal d'entrée, j'ai :
avec
le produit de convolution.
Dans l'espace des fréquences, la transformée de Fourier deest donc le produit des 2 transformées de Fourier de
et
.
Je fais ensuite la transformée inverse pour obtenir.
Si je discrétise tout ça, et en voulant respecter les facteurs entre la TF et la FFT, je peux écrire :
et
avecla période d'échantillonnage de
et
.
Sachant que la FFT inverse sous Matlab, pour la transformée de Fourier d'un signalde composantes
, est définie par :
![]()
avecla fréquence d'échantillonnage de
et
le nombre de points,
j'écris alors sous Matlab :
u_ifft correspond donc au signal de départ avec le produitCode:fft_u=Te*fft(u); u_ifft=fe*ifft(fft_u);qui disparaît et le facteur
qui reste grâce à la définition de la fonction Matlab ifft.
Maintenant, par rapport à mon problème, si je veux toujours avoir des valeurs cohérentes pour retrouver le signal de sortie, est-ce que je peux écrire :
![]()
![]()
de telle façon que je me retrouve avec un facteur Te sous Matlab puisque l'équation ci-dessus contient le produit fe*Te*Te = Te :
??Code:y_ifft=Te*ifft(fft(x)*fft(h))
Cette "simplification" et ce facteur "Te" restant sont-ils corrects ?
Merci pour votre aide
ps: peut être que ce post doit être mis dans le forum Physique
-----