[sdiy] Uniformly distributed noise generator?
Steven Cook
stevenpaulcook at tiscali.co.uk
Tue Jun 11 10:58:57 CEST 2013
Hello Magnus,
I know that summing white noise sources together produces Gaussian noise
(central limit theorem), I've been doing it in software recently, using a
32-bit noise source then splitting it into 4 separate 8-bit values and
summing them together, then repeating this to get 8 values - sum them all
together and the result is pretty good Gaussian noise. I used it in an LFO
design.
But that doesn't mean that a single white noise source is Gaussian, in the
sense of having a Gaussian amplitude distribution, which is what I thought
the original question meant.
Best Regards,
Steven Cook.
support at spcplugins.com
http://www.spcplugins.com/
+44(0)1271 867288
> Get your coffee. White noise is gaussian.
>
> A little exercise:
>
> Take one uniformly distributed noise source, look at it's distribution and
> you will find it to be uniform.
>
> Now, add a second uniform distributed noise source (of the same
> amplitude), now look at the distribution and you will find that it is in
> fact not uniform anymore, it is triangular. If you subtract the two
> noises, it will sit neatly around zero (many is normalized between 0 and
> 1).
>
> Now, build another pair and add, and you start getting somewhat
> bell-shaped.
>
> As you have taken six pairs, you have a pretty gaussian shaped
> distribution, and it has the RMS value of 1.
>
> As you now add more and more pairs you get a more perfect gaussian
> distribution bell, and as you go for infinitly many, you get the gaussian
> distribution with all it's properties, such as infinite peak-to-peak
> value.
>
> As you look at the spectrum analyzer, it will be flat, and as you
> integrate over longer and longer time, it will be flatter and flatter.
>
> This trick to build gaussian distribution out of a uniform distribution is
> a common trick, if one does not use the Box-Muller approximation which is
> another way to do it. The use of 12 noise samples is very common, as it's
> RMS value becomes unity, but with some simple scaling other numbers can be
> used to achieve the wanted RMS scaling accurately.
>
> Actually adding sines with it's quirky distribution resists this harder,
> but after sufficient numbers it also goes gaussian.
>
> Sorry for making some noise.
>
> Cheers,
> Magnus
> _______________________________________________
> Synth-diy mailing list
> Synth-diy at dropmix.xs4all.nl
> http://dropmix.xs4all.nl/mailman/listinfo/synth-diy
More information about the Synth-diy
mailing list