The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Math::LogRand - Perl extension to return a random number with log weighting.

SYNOPSIS

use Math::LogRand;
my %test;
my $min = 20;
my $max = 100;
$test{ LogRand($min,$max) }++ for 0..1000;
print "$_\toccured $test{$_} times.\n" foreach sort keys %test;

DESCRIPTION

This module attempts to implement a scalar version of the MATLAB logrand function.

Accepts two arguments: the floor of distribution, and the ceilling of distribution.

Returns a 'random' integer produced by the Perl rand() function, between input parameters, with weighting to low integers by log distribution.

How good/bad this is, I don't know: it's really for my own convenience, but I hope you find it useful. Any suggestions really very gratefully received!

EXPORT

LogRand

AUTHOR

Lee Goddard <lgoddard(a)cpan.org>

SEE ALSO

perl(1);
rand;
log;