Saltar al contenido principal
LibreTexts Español

11.1: Conversión de Transformada Continua de Fourier a DFT

  • Page ID
    124976
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)

    \( \newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\)

    ( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\)

    \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)

    \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\)

    \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)

    \( \newcommand{\Span}{\mathrm{span}}\)

    \( \newcommand{\id}{\mathrm{id}}\)

    \( \newcommand{\Span}{\mathrm{span}}\)

    \( \newcommand{\kernel}{\mathrm{null}\,}\)

    \( \newcommand{\range}{\mathrm{range}\,}\)

    \( \newcommand{\RealPart}{\mathrm{Re}}\)

    \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)

    \( \newcommand{\Argument}{\mathrm{Arg}}\)

    \( \newcommand{\norm}[1]{\| #1 \|}\)

    \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)

    \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\AA}{\unicode[.8,0]{x212B}}\)

    \( \newcommand{\vectorA}[1]{\vec{#1}}      % arrow\)

    \( \newcommand{\vectorAt}[1]{\vec{\text{#1}}}      % arrow\)

    \( \newcommand{\vectorB}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vectorC}[1]{\textbf{#1}} \)

    \( \newcommand{\vectorD}[1]{\overrightarrow{#1}} \)

    \( \newcommand{\vectorDt}[1]{\overrightarrow{\text{#1}}} \)

    \( \newcommand{\vectE}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash{\mathbf {#1}}}} \)

    \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)

    El DFT se encuentra comúnmente al discretar fórmulas que involucran integrales de Fourier. Recordemos la definición de la transformada de Fourier: dada una función\(f(x)\), donde\(x \in (-\infty, \infty)\), la transformada de Fourier es una función\(F(k)\)\(k \in (-\infty, \infty)\), donde, y estas dos funciones están relacionadas por un par de fórmulas integrales:

    \[\begin{align} F(k) &= \displaystyle \;\; \int_{-\infty}^\infty dx\; e^{-ikx}\, f(x) \\ f(x) &=\; \displaystyle \int_{-\infty}^\infty \frac{dk}{2\pi}\; e^{ikx}\, F(k).\end{align}\]

    Por lo general, una simulación por computadora o medición experimental producirá valores de\(f(x)\) a ciertos valores de\(x\) que son discretos y espaciados uniformemente. Supongamos que estos puntos están\(\{x_0, x_1, \dots, x_{N-1}\}\), donde está el espaciado\(\Delta x = x_{m+1}-x_m\); los puntos de datos correspondientes están\(\{f(x_0), \dots, f(x_{N-1})\}\). Entonces nos interesa encontrar el espectro de Fourier, es decir, trazar cualquiera\(|F(k)|\) o\(|F(k)|^2\) versus\(k\). Para ello, podemos aproximar la integral de Fourier usando la regla de punto medio:

    \[F(k) \approx \Delta x \sum_{m=0}^{N-1} e^{-ik x_m} \, f(x_m).\]

    Tenga en cuenta que esto requiere un truncamiento de la integral de Fourier. La integral de Fourier se atropelló\(-\infty < x < \infty\), pero nuestra integral numérica abarca un rango finito\(x_0 \lesssim x \lesssim x_{N-1}\). Este truncamiento tendrá consecuencias importantes posteriormente. Ahora, tenemos que decidir los valores de\(k\) a los que encontrar\(F(k)\). Vamos a elegir un conjunto de puntos\(N\) equiespaciados,

    \[k_n \equiv \frac{2\pi n}{N\Delta x}.\]

    En estos puntos, la integral discretizada de Fourier toma la forma

    \[\begin{align}F(k_n) &\approx \Delta x\, \sum_{m=0}^{N-1} \exp\left[- \frac{2 \pi i n (x_0 + m \Delta x)}{N \Delta x}\right] \, f(x_m) \\ &= \Delta x\, \exp\left[- \frac{2 \pi i n x_0}{N \Delta x}\right] \sum_{m=0}^{N-1} e^{-i 2 \pi n m / N} \, f(x_m) \\ &= \Delta x\, \exp\left[- \frac{2 \pi i n x_0}{N \Delta x}\right] \mathrm{DFT}\{f(x_m)\}_n.\end{align}\]

    Aquí\(\mathrm{DFT}\{f(x_m)\}_n\) denota el\(n\) -ésimo elemento de la Transformada Discreta de Fourier (DFT). El\(m\) índice dentro de los corchetes es un índice ficticio, lo que indica que el DFT implica una suma interna sobre este índice (estamos abusando ligeramente de la notación matemática aquí). El factor de fase\(\exp[- 2 \pi i n x_0/N \Delta x]\),, está determinado por la elección de “origen” para las coordenadas espaciales; no afecta\(|F(k_n)|^2\) (que es lo que se utiliza para trazar el espectro de Fourier).

    La DFT y la IDFT se pueden computar de manera muy eficiente, en el\(O(N\log N)\) tiempo, utilizando un algoritmo llamado Transformada Rápida de Fourier (FFT). No discutiremos el algoritmo FFT en este artículo, pero muchas buenas explicaciones se pueden encontrar en otros lugares en línea. En Python, puede realizar una FFT (DFT rápida) llamando a fft, y una FFT inversa (IDFT rápida) llamando a ifft


    This page titled 11.1: Conversión de Transformada Continua de Fourier a DFT is shared under a CC BY-SA 4.0 license and was authored, remixed, and/or curated by Y. D. Chong via source content that was edited to the style and standards of the LibreTexts platform; a detailed edit history is available upon request.