fpmath

Crates.iofpmath
lib.rsfpmath
version0.1.1
sourcesrc
created_at2024-09-17 21:33:00.147147
updated_at2024-10-14 11:01:44.591275
descriptionA floating point math library
homepage
repositoryhttps://github.com/eduardosm/rust-fpmath
max_upload_size
id1378326
size335,426
Eduardo Sánchez Muñoz (eduardosm)

documentation

README

fpmath

GitHub Actions Status crates.io Documentation MSRV License

fpmath is a pure-Rust floating point library that implements math functions for f32 and f64.

Features

  • Less than 1 ULP error in most functions.
  • f32 versions do not internally use f64 arithmetic.
  • All functions are also implemented for soft-float single-precision and double precision.
  • no_std
  • All functions are tested for accuracy (MPFR is used to calculate reference values).
  • The included generator crate can generate all magic constants used in the algorithms.

Included functions

  • Absolute value
  • Copy sign
  • Rounding (to nearest, towards zero, towards infinity, towards negative infinity)
  • Exponential in base e, 2 and 10
  • Logarithm in base e, 2 and 10
  • Trigonometric (sine, cosine, tangent) in radians, degrees and half-revolutions
  • Inverse trigonometric (arcsine, arccosine, arctangent) in radians, degrees and half-revolutions
  • Hyperbolic (sine, cosine, tangent)
  • Inverse hyperbolic (arcsine, arccosine, arctangent)
  • Square and cube root
  • Hypotenuse
  • Power (floating point and integer exponent)

License

Licensed under either of

at your option.

Commit count: 24

cargo fmt