src/pylib/Lib/math

Search:
Group by:
Source   Edit  

Lib/math

Wrapper around Lib/n_math, and raises exceptions when math error occurs as CPython behaves.

Procs

func acos[F: SomeFloat](x: F): F
Source   Edit  
func acosh[F: SomeFloat](x: F): F
Source   Edit  
func asin[F: SomeFloat](x: F): F
Source   Edit  
func asinh[F: SomeFloat](x: F): F
Source   Edit  
func atan[F: SomeFloat](x: F): F
Source   Edit  
func atan2[F: SomeFloat](x, y: F): F
Source   Edit  
func atanh[F: SomeFloat](x: F): F
Source   Edit  
func cbrt[F: SomeFloat](x: F): F
Admonition: since Python 3.11

Example:

template chk =
  assert cbrt(-1.0) == -1.0
chk()
static: chk()
Source   Edit  
func comb(n, k: int): int {....raises: [ValueError], tags: [], forbids: [].}
Source   Edit  
func copysign[F: SomeFloat](x, y: F): F
Source   Edit  
func cos[F: SomeFloat](x: F): F
Source   Edit  
func cosh[F: SomeFloat](x: F): F
Source   Edit  
func erf[F: SomeFloat](x: F): F
Source   Edit  
func erfc[F: SomeFloat](x: F): F
Source   Edit  
func exp[F: SomeFloat](x: F): F
Source   Edit  
func expm1[F: SomeFloat](x: F): F
Admonition: since Python 3.11
Source   Edit  
func fabs[F: SomeFloat](x: F): F
Source   Edit  
func factorial(x: int): int {....raises: [ValueError], tags: [], forbids: [].}
Source   Edit  
func fma[F: SomeFloat](x, y, z: F): F
Admonition: since Python 3.13
Source   Edit  
func fmod[F: SomeFloat](x: F; y: F): F
Source   Edit  
func gamma[F: SomeFloat](x: F): F
Source   Edit  
func isqrt[I: SomeInteger](x: I): int
Source   Edit  
func ldexp(x: SomeFloat; i: int): float
Source   Edit  
func lgamma[F: SomeFloat](x: F): F
Source   Edit  
func log[F: SomeFloat](x, base: F): F
Source   Edit  
func log[F: SomeFloat](x: F): F
Source   Edit  
func log1p[F: SomeFloat](x: F): F
Source   Edit  
func log2[F: SomeFloat](x: F): F
Source   Edit  
func log10[F: SomeFloat](x: F): F
Source   Edit  
func nextafter[F: SomeFloat](x, y: F): F
Admonition: since Python 3.9
Source   Edit  
func nextafter[F: SomeFloat](x, y: F; steps: int | uint64): F
Admonition: since Python 3.12
Source   Edit  
func perm(n, k: int): int {....raises: [ValueError], tags: [], forbids: [].}
Source   Edit  
func perm(n: int): int {....raises: [ValueError], tags: [], forbids: [].}
Source   Edit  
func pow[F: SomeFloat](x, y: F): F
Source   Edit  
func remainder[F: SomeFloat](x, y: F): F
Source   Edit  
func sin[F: SomeFloat](x: F): F
Source   Edit  
func sinh[F: SomeFloat](x: F): F
Source   Edit  
func sqrt[F: SomeFloat](x: F): F
Source   Edit  
func tan[F: SomeFloat](x: F): F
Source   Edit  
func tanh[F: SomeFloat](x: F): F
Source   Edit  
func ulp[F: SomeFloat](x: F): F
Admonition: since Python 3.9
Source   Edit  

Templates

template dist[T](p, q: (Iterable[T] and not openArray[T])): float
Admonition: since Python 3.8
Source   Edit  
template dist[T](p, q: ClosureIter[T]): float
Admonition: since Python 3.8
Source   Edit  
template dist[T](p, q: list[T]): float
Admonition: since Python 3.8
Source   Edit  
template dist[T](p, q: openArray[T]): float
Admonition: since Python 3.8
Source   Edit  
template sumprod[T](p, q: (Iterable[T] and not openArray[T])): float
Admonition: since Python 3.12
Source   Edit  
template sumprod[T](p, q: ClosureIter[T]): float
Admonition: since Python 3.12
Source   Edit  
template sumprod[T](p, q: list[T]): float
Admonition: since Python 3.12
Source   Edit  
template sumprod[T](p, q: openArray[T]): float
Admonition: since Python 3.12
Source   Edit