Function Dump/Mathematical Functions: Difference between revisions
>Flurite better description |
>Flurite better description |
(No difference)
|
Revision as of 19:29, 16 January 2012
Mathematical Functions
This library is an interface to the standard C math library. It provides all its functions inside the table math. The functions are listed below.
math.abs (x)
Returns the absolute value of x.
print(math.abs(-5)) Will result in: 5
math.acos (x)
Returns the arc cosine of x (in radians).
print(math.acos(-1)) Will result in: 3.1415926535898
math.asin (x)
Returns the arc sine of x (in radians).
print(math.asin(0)) Will result in: 0
math.atan (x)
Returns the arc tangent of x (in radians).
print(math.atan(math.pi)) Will result in: 1.2626272556789
math.atan2 (y, x)
Returns the arc tangent of y/x (in radians), but uses the signs of both parameters to find the quadrant of the result. (It also handles correctly the case of x being zero.)
math.ceil (x)
Returns the smallest integer larger than or equal to x. Essentially, rounds a number to the next highest value
z=math.ceil (4.2) print(z) Will result in: 5
math.cos (x)
Returns the cosine of x (assumed to be in radians).
print(math.cos (1)) Will result in: 0.54030230586814
math.cosh (x)
Returns the hyperbolic cosine of x.
print(math.cosh (1)) Will result in: 1.5430806348152
math.deg (x)
Returns the angle x (given in radians) in degrees.
print(math.deg (1.570796326794896)) Will result in: 90
math.exp (x)
Returns the the value e^x.
print(math.exp (1)) Will result in: 2.718281828459
math.floor (x)
Returns the largest integer smaller than or equal to x. This function is also known as the 'greatest integer function'.
z=math.floor (4.8) print(z) Will result in: 4
math.fmod (x, y)
Returns the remainder of the division of x by y that rounds the quotient towards zero.
print(math.fmod (10, 3)) Will result in: 1
math.frexp (x)
Returns m and e such that x = m*2^e, e is an integer and the absolute value of m is in the range [0.5, 1) (or zero when x is zero).
print(math.frexp (0)) Will result in: 0 0
print(math.frexp (4)) Will result in: 0.5 3 -- (2^3/2=4)
math.huge
The value HUGE_VAL, a value larger than or equal to any other numerical value.
print(math.huge) Will result in: 1.#INF
math.ldexp (m, e)
Returns m*2^e (e should be an integer).
print(math.ldexp (2, 6)) Will result in: 128 (i.e., (2*(2^6))
math.log (x)
Returns the natural logarithm of x.
print(math.log (2.718281828459045)) Will result in: 1
math.log10 (x)
Returns the base-10 logarithm of x.
print(math.log10 (100)) Will result in: 2
math.max (x, ···)
Returns the maximum value among its arguments.
print(math.max (1, 2, 3, 4, 5, 6, 7)) Will result in: 7
math.min (x, ···)
Returns the minimum value among its arguments.
print(math.min (1, 2, 3, 4, 5, 6, 7)) Will result in: 1
math.modf (x)
Returns two numbers, the integral part of x and the fractional part of x.
print(math.modf (2.5)) Will result in: 2 0.5
math.pi
The value of pi. Pi is a mathematics term (not the baked good) that represents a very specific number.
print(math.pi) Will result in: 3.1415926535898
math.pow (x, y)
Returns x^y. (You can also use the expression x^y to compute this value.)
print(math.pow (4, 2)) Will result in: 16
math.rad (x)
Returns the angle x (given in degrees) in radians.
print(math.rad (90)) Will result in: 1.5707963267949 (Which is pi/2)
math.random ([m [, n]])
This function can be called 3 ways:
math.random(min,max) -- returns an Integer min-max
local str = "" for i = 1,10 do local num = math.random(33,126) str = str .. string.char(num) end print(str) -- random string length 10
math.random() -- returns a Number value 0-1
local color = Color3.new( math.random(), math.random(), math.random() ) print(color) -- random color3
math.random(max) -- returns an Integer 1-max
local list = Workspace:GetChildren() print( list[math.random(#list)] ) -- random item from list
local a = math.random(5)
The first example returns a random item from list, while the second returns an integer between one and five.
If the second number is less than first (or only number is less than 1), you'll get:
bad argument #n to 'random' (interval is empty)
This function is an interface to the simple pseudo-random generator function rand provided by ANSI C. (No guarantees can be given for its statistical properties.)
math.randomseed (x)
Sets x as the "seed" for the pseudo-random generator: equal seeds produce equal sequences of numbers.
math.sin (x)
Returns the sine of x (assumed to be in radians).
print(math.sin (math.pi / 2)) Will result in: 1
math.sinh (x)
Returns the hyperbolic sine of x.
print(math.sinh (0)) Will result in: 0
math.sqrt (x)
Returns the square root of x. (You can also use the expression x^0.5 to compute this value.)
z=math.sqrt (16) print(z) Will result in: 4
math.tan (x)
Returns the tangent of x (assumed to be in radians).
print(math.tan (1)) Will result in: 1.5574077246549
math.tanh (x)
Returns the hyperbolic tangent of x.
print(math.tanh (1)) Will result in: 0.76159415595576