A permissively licensed modern Fortran implementation of Gauss–Jacobi quadrature: nodes and weights on [-1, 1] for weight (1-x)^α (1+x)^β (α,β > −1). Multiple algorithms, auto method selection, Coarray Fortran, and C/Python bindings.
| Start here | Link |
|---|---|
| Docs hub (Diátaxis) | docs/orgmode/index.org |
| Quickstart (build + first rule) | tutorials/quickstart |
| C / Python | howto/bindings |
| CAF multi-image | howto/caf |
| Methods & auto policy | explanation/methods |
| Method name strings | reference/method-names |
| Bibliography | docs/refs.bib (ookcite collection GaussJacobiQuad) |
Build static narrative HTML (+ optional Doxygen):
Preferred library entry:
Methods: auto (picks *_caf when multi-image), rec=/=rec_caf, gw, algo665=/=algo665_dc=/=algo665_dc_caf, sturm=/=sturm_caf, glr=/=glr_caf, bogaert=/=bogaert_caf (Legendre only, n≥21). Details: methods · name list.
Build libgjp_cinterp (meson) and set GJP_CINTERP to the .so path. See crates/gauss-jacobi-quad/README.md.
CPython extension (ISOCBINDING gauss_jacobi_rule_c, multi-phase init). Wheels: Stable ABI cp39-abi3 (3.9+ GIL) and free-threaded cp313t. No GJP_CINTERP needed after install.
Build from repo root (requires gfortran + OpenBLAS): pip install . or python -m build. Trusted publishing: .github/workflows/publish-pypi.yml (OIDC + cibuildwheel, incl. cp313t).
If you use this library (including the interfaces), please cite:
Rohit Goswami. (2023). HaoZeke/GaussJacobiQuad: GaussJacobiQuad I (v0.1.0). Zenodo. https://doi.org/10.5281/zenodo.8285112
Method literature is tracked in ookcite collection GaussJacobiQuad and exported to docs/refs.bib (see citation).
MIT — see LICENSE.