JuliaMath / HypergeometricFunctions.jl

A Julia package for calculating hypergeometric functions

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Why no ₁F₁?

dlfivefifty opened this issue · comments

Or M or U?

What's drummond1F1?

# ₁F₁(α,β;z)
function drummond1F1::T1, β::T2, z::T3; kmax::Int = 10_000) where {T1, T2, T3}

Could be added, though exporting single capital letters seems fraught. At some point, I thought it best to funnel all usage through pFq.

drummond1F1 is a rational approximation algorithm to 1F1. For pFq with p <= q, the Drummond algorithm is anecdotally stable.

No need to export: I think HypergeometricFunctions.M is very clean

Probably M can be added immediately. For U, I think we can use its representation as a linear combination of Ms and rationally approximate its asymptotic expansion, 2F0, via wenigerpFq.

_₁F₁(a, b, z) and HypergeometricFunctions.M(a, b, z) are added and special cased in pFq.