Htam v0.2.1 Math View Source

Mathematical functions and constants.

Link to this section Summary

Functions

Equality-test for whether x and y are nearly equal.

Computes the arc cosine of x. (expressed in radians)

Computes the inverse hyperbolic cosine of x.

Computes the arc sine of x. (expressed in radians)

Computes the inverse hyperbolic sine of x.

Computes the arc tangent of x. (expressed in radians)

Computes the arc tangent given y and x. (expressed in radians)

Computes the inverse hyperbolic tangent of x.

Computes the cosine of x.

Computes the hyperbolic cosine of x (expressed in radians).

Converts degrees to radians

e()

The mathematical constant (e).

Calculates ℯ to the xth power.

Calculates the factorial of n: 1 2 3 ... n

Calculates the Greatest Common divisor of two numbers.

Calculates the non-negative integer square root of x (rounded towards zero)

Calculates the k-combinations of n.

Calculates the k-permutations of n.

Calculates the Least Common Multiple of two numbers.

Calculates the natural logarithm (base ) of x.

Calculates the base-b logarithm of x

Calculates the common logarithm (base 10) of x.

Calculates the binary logarithm (base 2) of x.

Calculates the non-negative nth-root of x.

The mathematical constant π (pi).

Arithmetic exponentiation. Calculates x to the n -th power.

Converts radians to degrees

Computes the sine of x.

Computes the hyperbolic sine of x (expressed in radians).

Calculates the non-negative square root of x.

Computes the tangent of x (expressed in radians).

Computes the hyperbolic tangent of x (expressed in radians).

The mathematical constant τ (tau).

Link to this section Types

Link to this section Functions

Equality-test for whether x and y are nearly equal.

This is useful when working with floating-point numbers, as these introduce small rounding errors.

Examples

iex> 2.3 - 0.3 == 2.0
false
iex> 2.3 - 0.3 <~> 2.0
true 

Computes the arc cosine of x. (expressed in radians)

Computes the inverse hyperbolic cosine of x.

Computes the arc sine of x. (expressed in radians)

Computes the inverse hyperbolic sine of x.

Computes the arc tangent of x. (expressed in radians)

Link to this function

atan2(y, x) View Source
atan2(y(), x()) :: float()

Computes the arc tangent given y and x. (expressed in radians)

This variant returns the inverse tangent in the correct quadrant, as the signs of both x and y are known.

Computes the inverse hyperbolic tangent of x.

Computes the cosine of x.

x is interpreted as a value in radians.

Computes the hyperbolic cosine of x (expressed in radians).

Link to this function

deg2rad(x) View Source
deg2rad(x()) :: float()

Converts degrees to radians

Examples

iex>Math.deg2rad(180)
3.141592653589793

The mathematical constant (e).

Calculates ℯ to the xth power.

Calculates the factorial of n: 1 2 3 ... n

To make this function faster, values of n up to 1000 are precomputed at compile time.

Examples

iex> Math.factorial(1)
1
iex> Math.factorial(5)
120
iex> Math.factorial(20)
2432902008176640000

Calculates the Greatest Common divisor of two numbers.

This is the largest positive integer that divides both a and b without leaving a remainder.

Also see Math.lcm/2

Examples

iex> Math.gcd(2, 4)
2
iex> Math.gcd(2, 3)
1
iex> Math.gcd(12, 8)
4
iex> Math.gcd(54, 24)
6
iex> Math.gcd(-54, 24)
6

Calculates the non-negative integer square root of x (rounded towards zero)

Does not accept negative numbers as input.

Examples

iex> Math.isqrt(100)
10
iex> Math.isqrt(16)
4
iex> Math.isqrt(65536)
256
iex> Math.isqrt(10)
3

Calculates the k-combinations of n.

Examples

iex> Math.k_combinations(10, 2)
45
iex> Math.k_combinations(5, 5)
1
iex> Math.k_combinations(3, 4)
0

Calculates the k-permutations of n.

This is the number of distinct ways to create groups of size k from n distinct elements.

Notice that n is the first parameter, for easier piping.

Examples

iex> Math.k_permutations(10, 2)
90
iex> Math.k_permutations(5, 5)
120
iex> Math.k_permutations(3, 4)
0

Calculates the Least Common Multiple of two numbers.

This is the smallest positive integer that can be divided by both a by b without leaving a remainder.

Also see Math.gcd/2

Examples

iex> Math.lcm(4, 6)
12
iex> Math.lcm(3, 7)
21
iex> Math.lcm(21, 6)
42

Calculates the natural logarithm (base ) of x.

See also Math.e/0.

Calculates the base-b logarithm of x

Note that variants for the most common logarithms exist that are faster and more precise.

See also Math.log/1, Math.log2/1 and Math.log10/1.

Examples

iex> Math.log(5, 5)
1.0
iex> Math.log(20, 2) <~> Math.log2(20) 
true
iex> Math.log(20, 10) <~> Math.log10(20)
true
iex> Math.log(2, 4)
0.5
iex> Math.log(10, 4)
1.6609640474436813

Calculates the common logarithm (base 10) of x.

See also Math.log/2.

Calculates the binary logarithm (base 2) of x.

See also Math.log/2.

Link to this function

nth_root(x, n) View Source
nth_root(x(), number()) :: float()

Calculates the non-negative nth-root of x.

Examples

iex> Math.nth_root(27, 3)
3.0
iex> Math.nth_root(65536, 8)
4.0

The mathematical constant π (pi).

The ratio of a circle's circumference to its diameter. The returned number is a floating-point approximation (as π is irrational)

Arithmetic exponentiation. Calculates x to the n -th power.

When both x and n are integers and n is positive, returns an integer. When n is a negative integer, returns a float. When working with integers, the Exponentiation by Squaring algorithm is used, to allow for a fast and precise result.

When one of the numbers is a float, returns a float by using erlang's :math.pow/2 function.

It is possible to calculate roots by choosing n between 0.0 and 1.0 (To calculate the p -th-root, pass 1/p to the function)

Examples

iex> Math.pow(2, 4)
16
iex> Math.pow(2.0, 4)
16.0
iex> Math.pow(2, 4.0)
16.0
iex> Math.pow(5, 100)
7888609052210118054117285652827862296732064351090230047702789306640625
iex> Math.pow(5.0, 100)
7.888609052210118e69
iex> Math.pow(2, (1 / 2))
1.4142135623730951
Link to this function

rad2deg(x) View Source
rad2deg(x()) :: float()

Converts radians to degrees

Examples

iex>Math.rad2deg(Math.pi)
180.0

Computes the sine of x.

x is interpreted as a value in radians.

Computes the hyperbolic sine of x (expressed in radians).

Calculates the non-negative square root of x.

Computes the tangent of x (expressed in radians).

Computes the hyperbolic tangent of x (expressed in radians).

The mathematical constant τ (tau).

The ratio of a circle's circumference to its radius. Defined as 2 * π, but preferred by some mathematicians. The returned number is a floating-point approximation (as τ is irrational)