hypergeom function, no output

26 views (last 30 days)
Sabhrant
Sabhrant on 14 Apr 2024 at 23:44
Edited: Torsten on 15 Apr 2024 at 0:00
I am trying to compute the sum "hypergeom([0.5 1 0.4 0.9],[0.95,1.45,1.4],-1)" in Matlab R2022a, but the function is not returning a value even after 5 minutes of waiting. On Mathematica, running the code "HypergeometricPFQ[{0.5 , 1, 0.4, 0.9}, {0.95, 1.45, 1.4}, -1]" immeditely returns as 0.928766. I am unable to understand why this sum is not getting computed. Is this a bug in the hypergeom function?
  2 Comments
Sabhrant
Sabhrant on 14 Apr 2024 at 23:55
Edited: Sabhrant on 14 Apr 2024 at 23:57
Aah I see. Is there a way to know before hand, for which inputs it does analytic continuation?
Torsten
Torsten on 14 Apr 2024 at 23:57
Edited: Torsten on 15 Apr 2024 at 0:00
The sum diverges for z = -1, and the analytical continuation seems to take quite a long time, especially at the boundary of the convergence radius (see below for the convergence criteria for the hypergeometric function).

Sign in to comment.

Accepted Answer

Torsten
Torsten on 14 Apr 2024 at 23:53
Moved: Torsten on 14 Apr 2024 at 23:56
The hypergeometric function has convergence criteria:
  • Converges if pq and |z| < ∞.
  • Converges if p = q + 1 and |z| < 1. For |z| >= 1, the series diverges, and is defined by analytic continuation.
  • Diverges if p > q + 1 and z ≠ 0. Here, the series is defined by an asymptotic expansion of pFq(a;b;z) around z = 0. The branch cut is the positive real axis.
And the analytic continuation takes quite long ...
format long
hypergeom([0.5 1 0.4 0.9],[0.95,1.45,1.4],-0.999999999999)
ans =
0.928766175273251

More Answers (0)

Categories

Find more on Startup and Shutdown in Help Center and File Exchange

Products


Release

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!