1
$\begingroup$

I have a current signal represented by an array in python, which I would like to add shot noise to. Shot noise is defined as $$ σ_i = \sqrt{2qI \Delta f} $$ where $q$ is the elementary charge, $I$ the current and $\Delta f$ is the bandwidth of interest. I guess the simplest way to add the noise would be to to add it in the time domain, using the np.random.normal function in python and simply adding it element-wise to the signal array. The frequency is needed to calculate the shot noise, so I would calculate $\Delta f = \frac{1}{2\Delta t}$ where $\Delta t$ is the time between two consecutive samples in the array (correct me if I'm wrong!).

My question is, how can I add this noise in the frequency domain? I would expect to be able to express the shot noise in $\frac{A}{\sqrt{Hz}}$, and therefore make the magnitude independent of the frequency. This post explains the relationship of the magnitude of white noise in time and frequency domain, but if I use that simple equation ($\frac{\sigma^2 M}{2}$ ) it doesn't become independent on the frequency.

Thank you in advance!

$\endgroup$
  • 1
    $\begingroup$ What do you mean, "it doesn't become independent on the frequency [sic]"? White noise is flat in the frequency domain. If the noise is Gaussian in the time domain, it will also be Gaussian in the frequency domain, so if you know the variance of the noise in each frequency domain bin, you can generate it with the desired variance and add it directly. $\endgroup$ – Jason R Oct 7 '13 at 13:49
  • $\begingroup$ @JasonR: When calculating the noise of an amplifier, for example, the noise is usually expressed as $frac{A}{\sqrt{Hz}}$ or $frac{V}{\sqrt{Hz}}$. The total noise in the time domain can then be calculated by integrating over the desired frequency range. $\endgroup$ – Uffe Oct 8 '13 at 10:32
  • $\begingroup$ I'm not sure what you mean by those expressions. Do you have a datasheet that you can link to that might make it more clear? $\endgroup$ – Jason R Oct 8 '13 at 12:46
  • $\begingroup$ Oops, I was too slow. Here it comes again: @JasonR: When calculating the noise of an amplifier, as an example, the noise is usually expressed as $\frac{A}{\sqrt{Hz}}$ or $\frac{V}{\sqrt{Hz}}$. The total noise in the time domain can then be calculated by integrating over the desired frequency range. I would expect to be able to do the same here, but when I use the equation from the link ($\frac{\sigma^2 M}{2}$) in combination with the shot noise definition, I get a frequency domain variance of $2qI{\Delta f}^2 M$. $\endgroup$ – Uffe Oct 8 '13 at 13:04
  • $\begingroup$ I'm still not really sure what your question is. If you're adding white noise, then it's inherently going to be independent of frequency. It's not clear to me what exactly you're confused about. $\endgroup$ – Jason R Oct 8 '13 at 14:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.