I am recording data with a magnetometer of the background magnetic field in a building. I have applied the FFT algorithm to the data in order to look for the frequencies that appear in it. I would like to use this in order to identify (or at least make an educated guess) of the sources of the disturbances that I observe.

My question is: What is the meaning that I can attribute to the amplitude that I obtain from the FFT algorithm? Is there some unit that can be ascribed to it?

Looking at the formula for the continuous fourier transform (which I took from Wolfram Mathworld) : \begin{align} f(\nu)=\int\limits_{-\infty}^{+\infty}f(t)e^{-2\pi i \nu t} \mathrm{d}t \end{align} I do not really know how to accomodate the dimension of Tesla in there.

Thank you

  • $\begingroup$ what are the units of your input data? $\endgroup$
    – user28715
    Commented Jun 25, 2017 at 18:57
  • $\begingroup$ The unit of the data is nanoTesla $\endgroup$ Commented Jun 25, 2017 at 19:23
  • $\begingroup$ The t here refers to time? So you've measured time variation of the magnitude of the local magnetic field at a particular position coordinate? $\endgroup$
    – Fat32
    Commented Jun 25, 2017 at 20:04
  • $\begingroup$ @Fat32 That is indeed what I have measured $\endgroup$ Commented Jun 26, 2017 at 6:07

1 Answer 1


The continuous-time Fourier transform of a function $f(t)$ is in essence an integration of $f(t)$ multiplied with a complex exponential kernel: $$ F(\omega)=\int_{-\infty}^{\infty} f(t) e^{-j\omega t} dt \tag{1}$$

Since the exponential function is unitless, the unit of the Fourier integral will be the multiplication of the units of the function $f(t)$ and the differential $dt$.

Assuming that the function $f(t)$ had a unit of micro Tesla, and its argument $t$ is time (in seconds), then the unit of $dt$ will be seconds. As a consequence, the unit of the Fourier transform, $F(\omega)$, will be micro Tesla second $$\mu T \cdot s \tag{2}$$

However, what you actually compute is the discrete-time Fourier transform, $F(e^{j\omega})$, of the samples $f[n]= f(nT_s)$ of the function $f(t)$, via the summation: $$F(e^{j\omega}) = \sum_{n=-\infty}^{\infty} f[n] e^{-j\omega n} \tag{3}$$ where $T_s$ is the sampling period in seconds.

Furthermore, instead of the continuous-argument function $F(e^{j\omega})$, you will compute its samples $F[k]$

$$ F[k] = \sum_{n=0}^{N-1} f[n] e^{-j \frac{2\pi}{N} n k} \tag{4}$$

through a DFT (discrete Fourier transform) of the samples $f[n]$ of length $N$, possibly implemented with an FFT algorithm.

The unit of the samples $f[n]$ is the same as the unit of $f(t)$, making the unit of $F(e^{j\omega})$ and $F[k]$ as micro Tesla. Therefore the unit of the FFT samples $F[k]$ of $F(e^{j\omega})$ will be micro Tesla.

Note that there is an (implicit) amplitude scaling by $1/T_s$ in the computed DFT samples $F[k]$, and when you want to display the continuous-time Fourier transform $F(\omega)$ from the samples $F[k]$, you multiply them with $T_s$, which corrects not only the amplitude scaling, but also the unit of it, by making it micro Tesla second as in (2).

  • 1
    $\begingroup$ Thank you for taking the time to write a detailed answer. $\endgroup$ Commented Jun 26, 2017 at 6:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.