
Math::Random::Brownian - Perl module for generating Fractional Brownian and Gaussian Noise

use Math::Random::Brownian;
my $noise = Math::Random::Brownian->new();
my @Hosking_noise = $noise->Hosking(LENGTH => 30,
HURST => 0.5,
VARIANCE => 1.0,
NOISE => 'Gaussian' );
my @Circ_noise = $noise->Circulant(LENGTH => 30,
HURST => 0.5,
VARIANCE => 1.0,
NOISE => 'Brownian' );
my @Appr_noise = $noise->ApprCirc(LENGTH => 30,
HURST => 0.5,
VARIANCE => 1.0,
NOISE => 'Brownian');
my @Paxson = $noise->Paxson(LENGTH => 30,
HURST => 0.5,
VARIANCE => 1.0,
NOISE => 'Gaussian');

Math::Random::Brownian is a perl module for calculating a realization of either fractional Brownian Motion, or a fractional Gaussian sequence. This is accomplished using the various methods. Currently, the C code for this module is due to Ton Dieker with slight modifications by Walter Szeliga to help the code stand alone. For more information, refer to
Dieker, T. Simulation of fractional Brownian motion, Master's Thesis, University of Twente, Dept. of Mathematical Sciences.
This may be found at http://homepages.cwi.nl/~ton/fbm/.
Hash values and their meanings are as follows:
The length of the realization desired. This must be an integer.
The Hurst parameter of the output sequence. If A is the slope of a 1/f process, then A = 2H-1 where H is the Hurst parameter.
The variance of the output sequence.
Is equal to either 'Gaussian' or 'Brownian' depending on whether one would like fractional Gaussian noise, or it's cumulative sum -- fractional Brownian motion.

Dieker, T. Simulation of fractional Brownian motion, Master's Thesis, University of Twente, Dept. of Mathematical Sciences.
This may be found at http://homepages.cwi.nl/~ton/fbm/.
For other software, see http://www.geology.cwu.edu/grad/walter

Walter Szeliga, <walter@geology.cwu.edu> Original C code by Ton Dieker FFT code by J. Claerbout

Copyright (C) 2005 by Walter Szeliga
Original C code Copyright (C) 2002 Ton Dieker
FFT code by J. Claerbout Copyright (C) 1985
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.5 or, at your option, any later version of Perl 5 you may have available.