Skip to content

JuliaMath/HypergeometricFunctions.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

7d67f21 · Mar 14, 2025
Nov 10, 2024
Jan 31, 2025
Mar 14, 2025
Mar 14, 2025
Jul 11, 2023
Jul 6, 2023
Mar 14, 2025
Jan 22, 2025

Repository files navigation

HypergeometricFunctions.jl

Build Status codecov

This package provides an implementation of the generalized hypergeometric function pFq(α, β, z).

julia> using HypergeometricFunctions

julia> pFq((), (), 0.1) # ≡ exp(0.1)
1.1051709180756477

julia> pFq((0.5, ), (), 1.0+0.001im) # ≡ exp(-0.5*log1p(-1.0-0.001im))
22.360679774997894 + 22.36067977499789im

julia> pFq((), (1.5, ), -π^2/4) # A root of a spherical Bessel function
4.042865030283967e-17

julia> pFq((1/3, ), (2/3, ), -1000) # A confluent hypergeometric with large argument
0.050558053946448855

julia> pFq((1, 2+im), (3.5, ), exp(im*π/3)) # ₂F₁ at that special point in ℂ
0.6786952632946592 + 0.4523504929285015im

References

[1] N. Michel and M. V. Stoitsov, Fast computation of the Gauss hypergeometric function with all its parameters complex with application to the Pöschl–Teller–Ginocchio potential wave functions, Comp. Phys. Commun., 178:535–551, 2008.

[2] J. W. Pearson, S. Olver and M. A. Porter, Numerical methods for the computation of the confluent and Gauss hypergeometric functions, Numer. Algor., 74:821–866, 2017.

[3] R. M. Slevinsky, Fast and stable rational approximation of generalized hypergeometric functions, Numer. Algor., 98:587–624, 2025.