Solved

Gaussian distributed pseudorandom number generator

Posted on 2010-08-30
4
559 Views
Last Modified: 2013-11-13
Suppose X is a uniform random variable in the interval [0,1), how do I transform it so as to form a Gaussian distribution?

Thanks
0
Comment
Question by:InteractiveMind
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
4 Comments
 
LVL 74

Assisted Solution

by:sdstuber
sdstuber earned 50 total points
ID: 33561993
easiest way is to probably to sum groups of the random  numbers.  The central limit theorem dictates the sums should be a normal distribution
0
 
LVL 32

Accepted Solution

by:
phoffric earned 200 total points
ID: 33561994
0
 
LVL 2

Assisted Solution

by:wslb
wslb earned 50 total points
ID: 33569444
As phoffric (give him most of the credit) says, http://www.bearcave.com/misl/misl_tech/wavelets/hurst/random.html
But here are the details you want:
You call your random number X, int he code below, each call to randf() returns another pseudorandom number.  If you're not used to c programming, note the the point of the

do {...} while while ( w >= 1.0 );

part is to keep trying the {..} portion until you get a w<1.  Once you have x1 and x2 that result in w<1, then you use them to calculate the Gaussina-distributed pseudorandom number y1.
  // from http://www.taygeta.com/random/gaussian.html
  // Algorithm by Dr. Everett (Skip) Carter, Jr.

         float x1, x2, w, y1, y2;
 
         do {
                 x1 = 2.0 * ranf() - 1.0;
                 x2 = 2.0 * ranf() - 1.0;
                 w = x1 * x1 + x2 * x2;
         } while ( w >= 1.0 );

         w = sqrt( (-2.0 * ln( w ) ) / w );
         y1 = x1 * w;

Open in new window

0
 
LVL 4

Assisted Solution

by:boocko
boocko earned 200 total points
ID: 33584092
0

Featured Post

On Demand Webinar - Networking for the Cloud Era

This webinar discusses:
-Common barriers companies experience when moving to the cloud
-How SD-WAN changes the way we look at networks
-Best practices customers should employ moving forward with cloud migration
-What happens behind the scenes of SteelConnect’s one-click button

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

What is Waterfall Model? Waterfall model is the classic Software Development Life Cycle method practiced in software development process. As the name "waterfall" describes, this development is flowing downwards steadily like waterfall, i.e., procee…
Article by: Nicole
This is a research brief on the potential colonization of humans on Mars.
This is a video describing the growing solar energy use in Utah. This is a topic that greatly interests me and so I decided to produce a video about it.
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…

729 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question