Repository navigation
Unofficial fork build. Boost.Math as WebAssembly (ES module + .d.ts) and as Python wheels (abi3), both built from commit 0737e28 on the boost-math-0.5.0 branch of this personal fork, which is boostorg/math develop plus the WebAssembly bindings. Not an official Boost release; nothing is published to npm or PyPI. The wheel metadata's URLs point at boostorg/math and boost.org.
New since 0.4.0:
- Fresnel integrals C(x) and S(x), normalized as in DLMF 7.2, mpmath and SciPy, within an ulp in double (boostorg#1636). In Python,
fresnel_c(x),fresnel_s(x)andfresnel_cis(x)= C + iS (complex128), all vectorized. In JavaScript,fresnel_c/fresnel_sand their_arraytwins,fresnel_cis(x)→[C, S], andfresnel_cis_array(xs)→[C0, S0, C1, S1, ...]. - Multivariate Newton and Halley no longer creep towards a singular Jacobian (boostorg#1635).
- Everything else on develop since 0.4.0.
WebAssembly
npm install https://github.com/NAThompson/math/releases/download/boost-math-v0.5.0/boost-math-wasm-0.5.0.tgz
sha256 of boost-math-wasm-0.5.0.tgz: 25a7409a52ae93df4bd14a427d323ed7fb1289778a37a12dd2a50e0942704009
Python (CPython 3.12+). The installer picks the right wheel for your platform from this release:
pip:
pip install boost-math --find-links https://github.com/NAThompson/math/releases/expanded_assets/boost-math-v0.5.0
uv:
uv pip install boost-math --find-links https://github.com/NAThompson/math/releases/expanded_assets/boost-math-v0.5.0
In a uv project's pyproject.toml (then uv sync; uv.lock records this release as the source):
[project]
dependencies = ["boost-math>=0.5"]
[tool.uv]
find-links = ["https://github.com/NAThompson/math/releases/expanded_assets/boost-math-v0.5.0"]In a requirements.txt for pip:
--find-links https://github.com/NAThompson/math/releases/expanded_assets/boost-math-v0.5.0
boost-math
Wheels: manylinux x86_64 and aarch64, macOS arm64 and x86_64, Windows x86_64; SHA-256s in SHA256SUMS. There is no sdist: on other platforms (e.g. musllinux) the install fails. uv lists GitHub's "Source code" archive as a source distribution, but it cannot be built, because the Python package lives in nanobind/.