# Understanding the meaning of amplitude in FFT

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

• what are the units of your input data? – Stanley Pawlukiewicz Jun 25 '17 at 18:57
• The unit of the data is nanoTesla – Tarabostes Delectus Jun 25 '17 at 19:23
• 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? – Fat32 Jun 25 '17 at 20:04
• @Fat32 That is indeed what I have measured – Tarabostes Delectus Jun 26 '17 at 6:07

The continuous Fourier transform $$X(\omega)=\int_{-\infty}^{\infty} f(t) e^{-j\omega t} dt$$ is in essence an integration operation with a complex exponential kernel. Since the exponential function is unitless, the output unit of the Fourier integral will be multiplication of the unit of the function $f(t)$ and unit of the differential $dt$.

Assuming, the function $f(t)$ had units of micro Tesla and its argument $t$ represents time whence the unit of $dt$ is seconds, then the unit of the Fourier transform $X(\omega)$ will be micro Tesla second = $$\mu T \cdot s$$

Note that this unit is for the continuous Fourier transform, $X(\omega)$, of the function $f(t)$ (The thing that you are interested in). But what you actually compute is the discrete time Fourier transform of the samples $f[n]= f(nT_s)$ of the function $f(t)$ via the summation: $$X(e^{j\omega}) = \sum_{n=-\infty}^{\infty} f[n] e^{-j\omega n}$$ where $T_s$ is the sampling period in seconds.

You can compute the samples $X[k]$ of this $X(e^{j\omega})$ through a DFT (discrete Fourier transform) possibly implemented with an FFT algorithm.

Now since the unit of the samples $f[n]$ is the same with the unit of the function $f(t)$, the unit of $X(e^{j\omega})$ is mirco Tesla. Therefore the unit of the FFT samples $X[k]$ of $X(e^{j\omega})$ will also be micro Tesla.

Note finally that there is the amplitude scaling of $1/T_s$ in the FFT samples $X[k]$, and when you want to convert them into the corresponding continuous time Fourier transform $X(\omega)$ from those FFT samples $X[k]$, you shall multiply them with $T_s$, which corrects not only the amplitude scaling, but also the unit of it to become micro Tesla second.

• Thank you for taking the time to write a detailed answer. – Tarabostes Delectus Jun 26 '17 at 6:09