MathGroup Archive 1995

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: 1/f noise


> Can anyone suggest a way to have Mma generate a sequence of random numbers
> that have are distributed as 1/f noise?

If you want to generate just a few short sequences (with random phase
and 1/f amplitude in the frequency space), then you could start in the
frequency space,

n = 2^13;
fnoise = Table[E^(2Pi I Random[]) 1/f, {f, n/2}] // N;

and use InverseFourier[] for constructing a sequence of numbers with
the desired property (the first two lines impose two constraints on
`fnoise': `noise' should be real, and the average of `noise' should be
zero):

fnoise[[-1]] = Re[ fnoise[[-1]] ];
fnoise = Join[{0}, fnoise, Conjugate @ Reverse @ Drop[fnoise, -1] ];
noise = InverseFourier[fnoise] // Chop;
ListPlot[noise]
ListPlay[noise]

Eberhard Lange


  • Prev by Date: Re: Question about interpolation and ListPlot3D
  • Next by Date: Re: Complex variables
  • Previous by thread: Re: Complex variables
  • Next by thread: Re: Remote kernel connection via MathLink