Skip to content

Cactus-proj/cephes

Repository files navigation

Cephes Mathematical Functions Library

Build codecov

This project serves solely to generate reference outputs from the original/scipy Cephes Math Library.

Consequently, contributions addressing precision or error corrections may not be accepted. We recommend submitting such improvements to the scipy/xsf project instead.

Tip

For general applications, we recommend scipy/xsf. It provides a modernized (C++17), header-only refactoring of classic special function implementations, including AMOS, SPECFUN, and Cephes.

Build and Test

# Generate Coverage Report
cmake -S . -B build -DCMAKE_BUILD_TYPE=Coverage -DBUILD_TESTS=ON
cmake --build build --parallel 8 && ctest --test-dir build -j8 && cmake --build build --target coverage_html
ctest --test-dir build --rerun-failed --output-on-failure

# Release Build
cmake -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=./build/install_test
cmake --build build --parallel 8
cmake --install build

Features

Docs

Note

  • This project currently focuses on special functions with double precision.
  • Only functions listed in public headers are treated as public API.

cephes/*.h Headers

By default, Cephes does not signal any error (domain, singularity, overflow, underflow, precision). It is as non-intrusive as possible and tries to return a value which is hopefully usable: it might be NaN, it might be inf.

List of All Cephes functions

Exponential integral

Gamma Functions

Beta Functions

Error Functions

Bessel functions

Airy Functions

Bessel function

Modified Bessel functions - second kind

Modified Bessel functions

Modified Bessel functions - third kind

Hypergeometric Functions

Elliptic Functions

Probability Functions

Binomial distribution

Beta distribution

Chi-square distribution

F distribution

Gamma distribution

Negative binomial distribution

Normal distribution

Poisson distribution

Student's t distribution

Miscellaneous functions

License

This project is licensed under a BSD-3-Clause style license. See LICENSE for details.

Cephes mathematical library, developed by Stephen L. Moshier.

For historical context, see the email communication with the original author: License request email.

About

Cephes Mathematical Functions library

Topics

Resources

License

BSD-3-Clause, Unknown licenses found

Licenses found

BSD-3-Clause
LICENSE.txt
Unknown
License-request-email.txt

Stars

Watchers

Forks

Contributors