special-fun 0.1.6

Special functions for Rust by binding to the Cephes library.
Documentation

special-fun

Status

Special functions for Rust by binding to the Cephes library.

The following families of functions currently have Rust bindings for f32 and f64:

  • Bessel functions
  • Beta functions
  • Error functions
  • Gamma functions
  • Hypergeometric functions
  • Zeta functions
  • Normal probability distribution

Cephes implements a lot more functions that are not yet exposed in the Rust interface.

Installing

Cargo is used to build the included Cephes library (which is written in C) and to create a Rust library that statically links to Cephes.

By default, the C code is compiled with the following flags:

-O3 -Wall -fno-builtin -fPIC

You can overwrite this by defining the CFLAGS environment variable. Note that -fPIC has to be included, because it is required by Rust.

License

The bindings and the Cephes library use the BSD license. The author of Cephes (Stephen Moshier) has agreed to this.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you shall be licensed as above, without any additional terms or conditions.

Related Projects

  • special: Special functions implemented in pure Rust. Has less functions implemented and only supports f64.