Difference between revisions of "love.math.randomNormal"

m (Renamed)
(Added examples of uniform/normal distributions and slightly better links)
 
(4 intermediate revisions by one other user not shown)
Line 1: Line 1:
 
{{newin|[[0.9.0]]|090|type=function}}
 
{{newin|[[0.9.0]]|090|type=function}}
Get a normally distributed pseudo random number.
+
Generates a [https://en.wikipedia.org/wiki/Normal_distribution normally-distributed] pseudo-random number. This function is seeded at startup, so you generally don't need to seed it yourself.
 +
 
 +
While a typical uniform distribution looks like this:
 +
 
 +
[[File:uniform_distribution.png|frameless|border|A 1D example of a uniform distribution]]
 +
 
 +
[[File:uniform_distribution_2d.png|frameless|border|A 2D example of a uniform distribution]]
 +
 
 +
A typical normal distribution looks like this (note the values aggregating at the center, and the shape of a bell curve):
 +
 
 +
[[File:normal_distribution.png|frameless|border|A 1D example of a normal distribution]]
 +
 
 +
[[File:normal_distribution_2d.png|frameless|border|A 2D example of a normal distribution]]
 +
 
 
== Function ==
 
== Function ==
 
=== Synopsis ===
 
=== Synopsis ===
 
<source lang="lua">
 
<source lang="lua">
number = love.math.randomNormal( stddev )
+
number = love.math.randomNormal( stddev, mean )
 
</source>
 
</source>
 
=== Arguments ===
 
=== Arguments ===
{{param|number|stddev|Standard deviation of the distribution.}}
+
{{param|number|stddev (1)|Standard deviation of the distribution.}}
 +
{{param|number|mean (0)|The mean of the distribution.}}
 
=== Returns ===
 
=== Returns ===
{{param|number|number|Normally distributed random number with mean 0 and variance (stddev)².}}
+
{{param|number|number|Normally distributed random number with variance (stddev)² and the specified mean.}}
 
== See Also ==
 
== See Also ==
 
* [[parent::love.math]]
 
* [[parent::love.math]]
 +
* [[love.math.random]]
 +
* [[RandomGenerator]]
 
[[Category:Functions]]
 
[[Category:Functions]]
 
{{#set:Description=Get a normally distributed pseudo random number.}}
 
{{#set:Description=Get a normally distributed pseudo random number.}}
 
== Other Languages ==
 
== Other Languages ==
 
{{i18n|love.math.randomNormal}}
 
{{i18n|love.math.randomNormal}}

Latest revision as of 20:02, 5 July 2022

Available since LÖVE 0.9.0
This function is not supported in earlier versions.

Generates a normally-distributed pseudo-random number. This function is seeded at startup, so you generally don't need to seed it yourself.

While a typical uniform distribution looks like this:

A 1D example of a uniform distribution

A 2D example of a uniform distribution

A typical normal distribution looks like this (note the values aggregating at the center, and the shape of a bell curve):

A 1D example of a normal distribution

A 2D example of a normal distribution

Function

Synopsis

number = love.math.randomNormal( stddev, mean )

Arguments

number stddev (1)
Standard deviation of the distribution.
number mean (0)
The mean of the distribution.

Returns

number number
Normally distributed random number with variance (stddev)² and the specified mean.

See Also

Other Languages