Hypergeometric2F1[a,b,c,z]
is the hypergeometric function
.
Hypergeometric2F1
Hypergeometric2F1[a,b,c,z]
is the hypergeometric function
.
Details
- Mathematical function, suitable for both symbolic and numerical manipulation.
- The
function has the series expansion
, where
is the Pochhammer symbol. - For certain special arguments, Hypergeometric2F1 automatically evaluates to exact values.
- Hypergeometric2F1 can be evaluated to arbitrary numerical precision.
- Hypergeometric2F1 automatically threads over lists.
- Hypergeometric2F1[a,b,c,z] has a branch cut discontinuity in the complex
plane running from
to
. - FullSimplify and FunctionExpand include transformation rules for Hypergeometric2F1.
- Hypergeometric2F1 can be used with Interval and CenteredInterval objects. »
Examples
open all close allBasic Examples (7)
Hypergeometric2F1[2., 3., 4., 5.0]Hypergeometric2F1[2, 3, 4, x]Plot
over a subset of the reals:
Plot[Hypergeometric2F1[1 / 3, 1 / 3, 2 / 3, x], {x, -1, 1}]Plot over a subset of the complexes:
ComplexPlot3D[Hypergeometric2F1[2, 3, 4, z], {z, -2 - 2I, 2 + 2I}, PlotLegends -> Automatic]Expand Hypergeometric2F1 in a Taylor series at the origin:
Series[Hypergeometric2F1[a, b, c, x], {x, 0, 3}]Series expansion at Infinity:
Series[Hypergeometric2F1[2, 3, 4, x], {x, ∞, 5}]//NormalSeries expansion at a singular point:
Series[Hypergeometric2F1[2, 3, 4, x], {x, 1, 3}] // FullSimplifyScope (44)
Numerical Evaluation (5)
N[Hypergeometric2F1[1 / 2, 1 / 3, 2, 1], 50]The precision of the output tracks the precision of the input:
Hypergeometric2F1[1 / 2, 1 / 3, 2, 1.000000000000000000000000000000000]Evaluate for complex arguments:
Hypergeometric2F1[2 + I, -I, 3 / 4, 0.5 - 0.5 I]Evaluate Hypergeometric2F1 efficiently at high precision:
Hypergeometric2F1[1 / 2, 1 / 3, 2, 1`500]//TimingHypergeometric2F1[1 / 2, 1 / 3, 2, 1`2000];//TimingCompute worst-case guaranteed intervals using Interval and CenteredInterval objects:
Hypergeometric2F1[1 / 2, 1 / 3, 1 / 4, Interval[{0.21, 0.22}]]Hypergeometric2F1[1 / 2, 1 / 3, 1 / 4, CenteredInterval[1 / 2, 1 / 100]]Or compute average-case statistical intervals using Around:
Hypergeometric2F1[1 / 2, 1, 1, Around[1 / 2, 0.01]]Compute the elementwise values of an array:
Hypergeometric2F1[1 / 2, 1, 1, {{1 / 2, 0}, {0, 1 / 2}}]Or compute the matrix Hypergeometric2F1 function using MatrixFunction:
MatrixFunction[Hypergeometric2F1[1 / 2, 1, 1, #]&, {{1 / 2, 0}, {0, 1 / 2}}]Specific Values (6)
Hypergeometric2F1 automatically evaluates to simpler functions for certain parameters:
Hypergeometric2F1[(3/2), 2, 3, x]Hypergeometric2F1[1 / 2, 1 / 2, 1, z]Hypergeometric2F1[1, 1 / 2, 3 / 2, y ^ 2]Exact value of Hypergeometric2F1 at unity:
Hypergeometric2F1[n, m, n + m + 2, 1]Hypergeometric series terminates if either of the first two parameters is a negative integer:
Hypergeometric2F1[-3, 3, 2, x]Find a value of
satisfying the equation
:
f[x_] := Hypergeometric2F1[1 / 3, 1 / 3, 2 / 3, x] - 2 / 3;
xzero = Solve[f[x] == 0 && -9 < x < -6, x][[1, 1, 2]]//QuietPlot[f[x], {x, -10, 3}, Epilog -> Style[Point[{xzero, f[xzero]}], PointSize[Large], Red]]Hypergeometric2F1[a, b, c, z] == Hypergeometric2F1[b, a, c, z]Heun functions can simplify to hypergeometric functions:
Hypergeometric2F1[a, b, c, z] == HeunG[1, a * b, a, b, c, delta, z]Hypergeometric2F1[a, b, c, z] == HeunG[A, A * a * b, a, b, c, 1 + a + b - c, z]HeunC[q, 0, γ, δ, 0, z] == Hypergeometric2F1[(1/2) (-1 + γ + δ - Sqrt[4 q + (-1 + γ + δ)^2]), (1/2) (-1 + γ + δ + Sqrt[4 q + (-1 + γ + δ)^2]), γ, z]Visualization (3)
Plot the Hypergeometric2F1 function:
Plot[{Hypergeometric2F1[1, 1 / 2, Sqrt[2], x], Hypergeometric2F1[1, 1 / 2, Sqrt[3], x], Hypergeometric2F1[1, 1 / 2, Sqrt[5], x]}, {x, -2, 1}]Plot Hypergeometric2F1 as a function of its third parameter
:
Plot[{Hypergeometric2F1[1 / 2, Sqrt[2], c, 1], Hypergeometric2F1[1 / 2, Sqrt[5], c, 1], Hypergeometric2F1[1 / 2, Sqrt[7], c, 1]}, {c, 0, 10}]ComplexContourPlot[Re[Hypergeometric2F1[1, 1 / 2, Sqrt[2], z]], {z, -5 - 5I, 5 + 5I}, Contours -> 24]ComplexContourPlot[Im[Hypergeometric2F1[1, 1 / 2, Sqrt[2], z]], {z, -5 - 5I, 5 + 5I}, Contours -> 24]Function Properties (9)
Real domain of Hypergeometric2F1:
FunctionDomain[Hypergeometric2F1[a, b, c, z], z]Complex domain of Hypergeometric2F1:
FunctionDomain[Hypergeometric2F1[a, b, c, z], z, Complexes]
is an analytic function on its real domain:
FunctionAnalytic[{Hypergeometric2F1[2 / 3, 3Sqrt[2], 3, z], z < 1}, z]It is neither analytic nor meromorphic in the complex plane:
FunctionAnalytic[Hypergeometric2F1[2 / 3, 1 / π, 3, z], z, ℂ]FunctionMeromorphic[Hypergeometric2F1[2 / 3, 1 / π, 3, z], z]
is non-decreasing on its real domain:
FunctionMonotonicity[{Hypergeometric2F1[2 / 3, 3Sqrt[2], 3, z], z < 1}, z]FunctionInjective[{Hypergeometric2F1[1, 1 / 2, 1, z]}, z]Plot[{Hypergeometric2F1[1, 1 / 2, 1, z], 2}, {z, -1, 1}]FunctionSurjective[{Hypergeometric2F1[1, 1 / 2, 1, z]}, z]Plot[{Hypergeometric2F1[1, 1 / 2, 1, z], -2}, {z, -1, 1}]
is non-negative on its real domain:
FunctionSign[{Hypergeometric2F1[2 / 3, 3Sqrt[2], 3, z], z < 1}, z]Plot[Hypergeometric2F1[2 / 3, 3Sqrt[2], 3, z], {z, -3, 1}, AxesOrigin -> {0, 0}]
has both singularity and discontinuity for
:
Table[FunctionSingularities[Hypergeometric2F1[a, 1 / 2, 1, z], z], {a, 4}]Table[FunctionDiscontinuities[Hypergeometric2F1[a, 1 / 2, 1, z], z], {a, 4}]FunctionConvexity[{Hypergeometric2F1[1, 1 / 2, 1, z], z < 1}, z]TraditionalForm formatting:
Hypergeometric2F1[a, b, c, z]//TraditionalFormDifferentiation (3)
D[Hypergeometric2F1[a, b, c, x], x]derivs = Table[D[Hypergeometric2F1[a, b, c, x], {x, n}], {n, 1, 3}]//FullSimplifyPlot higher derivatives for
,
and
:
Plot[Evaluate[derivs /. {a -> 1 / 3, b -> 1 / 3, c -> 2 / 3}], {x, -1, 1}, PlotLegends -> {"First Derivative", "Second Derivative", "Third Derivative"}]D[Hypergeometric2F1[a, b, c, x], {x, n}]Integration (3)
Indefinite integral of Hypergeometric2F1:
Integrate[Hypergeometric2F1[a, b, c, x], x]//FullSimplifyDefinite integral of Hypergeometric2F1:
Integrate[Hypergeometric2F1[1 / 3, 1 / 3, 2 / 3, x], {x, 0, 1}]Integral involving a power function:
Integrate[x ^ (α - 1)Hypergeometric2F1[a, b, c, α x], x]//FullSimplifySeries Expansions (6)
Taylor expansion for Hypergeometric2F1:
Series[Hypergeometric2F1[a, b, c, x], {x, 0, 3}]Plot the first three approximations for
around
:
terms = Normal@Table[Series[Hypergeometric2F1[1 / 3, 1 / 3, 2 / 3, x], {x, 0, m}], {m, 1, 3}];
Plot[{Hypergeometric2F1[1 / 3, 1 / 3, 2 / 3, x], terms}, {x, -2, 2}]General term in the series expansion of Hypergeometric2F1:
SeriesCoefficient[Hypergeometric2F1[a, b, c, x], {x, 0, n}]Expand Hypergeometric2F1 in a series near
:
Series[Hypergeometric2F1[(1/3), (1/3), (2/3), z], {z, 1, 1}]Expand Hypergeometric2F1 in a series around
:
Series[Hypergeometric2F1[1 / 3, 1 / 3, 2 / 3, z], {z, Infinity, 1}]Give the result for an arbitrary symbolic direction
:
Series[Hypergeometric2F1[1 / 3, 1, 4 / 3, x], {x, DirectedInfinity[z], 2}]Apply Hypergeometric2F1 to a power series:
Hypergeometric2F1[1, 1 / 7, 3 / 7, Log[1 + z] + O[z] ^ 5]Integral Transforms (2)
Compute the Laplace transform using LaplaceTransform:
LaplaceTransform[Hypergeometric2F1[a, b, c, -t], t, z]HankelTransform[Hypergeometric2F1[a, b, c, -r], r, s ]//FullSimplifyFunction Identities and Simplifications (2)
(1 - z)^a + b - cHypergeometric2F1[a, b, c, z]//FullSimplifyHypergeometric2F1[a, b, c, z] == (2 - c + 2 b + (a - b - 1) z/b - c + 1) Hypergeometric2F1[a, b + 1, c, z] + ((b + 1) (z - 1)/b - c + 1) Hypergeometric2F1[a, b + 2, c, z]//FullSimplify(a - c) Hypergeometric2F1[a - 1, b, c, z] + (c - 2 a + (a - b) z)Hypergeometric2F1[a, b, c, z] == a (z - 1) Hypergeometric2F1[a + 1, b, c, z]//FullSimplifyFunction Representations (5)
Underoverscript[∑, k = 0, ∞](Pochhammer[a, k] Pochhammer[b, k]z^k/ Pochhammer[c, k]k!)Relation to the JacobiP polynomial:
(Gamma[1 - a] Gamma[c]/Gamma[c - a])JacobiP[-a, c - 1, b + a - c, 1 - 2z]//FullSimplifyHypergeometric2F1 can be represented as a DifferentialRoot:
DifferentialRootReduce[Hypergeometric2F1[a, b, c, x], x]Hypergeometric2F1 can be represented in terms of MeijerG:
MeijerGReduce[Hypergeometric2F1[a, b, c, x], x]Activate[%]//FullSimplifyTraditionalForm formatting:
Hypergeometric2F1[a, b, c, x]//TraditionalFormApplications (3)
An expression for the force acting on an electric point charge
outside a neutral dielectric sphere of radius
:
ℱ = -(2 q^2 ϵ/3 + ϵ) (R^3/r^5)Hypergeometric2F1[3, (ϵ + 3/ϵ + 2), 1 + (ϵ + 3/ϵ + 2), ((R/r))^2];The limit of infinite dielectric constant, corresponding to an uncharged insulated conducting sphere:
Limit[ℱ, ϵ -> ∞]An approximation for the force at a large distance from the sphere:
Series[ℱ, {r, ∞, 5}]Two players roll dice. If the total of both numbers is less than 10, the second player is paid 4 cents; otherwise, the first player is paid 9 cents. Is the game fair? Compute the probability that the first player gets paid:
p = With[{𝒟 = DiscreteUniformDistribution[{1, 6}]}, Probability[k1 + k2 >= 10, k1𝒟 && k2𝒟]]The game is not fair, since mean scores per game are not equal:
{pay1, pay2} = {9, 4};
{pay1 p, pay2(1 - p)}//NFind the probability that after n games the player at the disadvantage scores more:
f = FunctionExpand[Probability[pay1 * k > pay2 * (n - k), kBinomialDistribution[n, p]], n∈Integers && n ≥ 1]The probability exhibits oscillations:
DiscretePlot[f, {n, 50}, PlotRange -> All]The maximum probability is attained at
:
Maximize[{f, 1 < n < 50}, n, Integers]Riemann's differential equation with three regular singularities at
and exponent parameters
, subject to the constraint
:
riemannODE = w''[z] + ((1 - Subscript[a, 1] - Subscript[a, 2]/z - α) + (1 - Subscript[b, 1] - Subscript[b, 2]/z - β) + (1 - Subscript[c, 1] - Subscript[c, 2]/z - γ))w'[z] + (((α - β)(α - γ)Subscript[a, 1]Subscript[a, 2]/z - α) + ((β - α)(β - γ)Subscript[b, 1]Subscript[b, 2]/z - β) + ((γ - α)(γ - β)Subscript[c, 1]Subscript[c, 2]/z - γ))(w[z]/(z - α)(z - β)(z - γ));Construct two linearly independent solutions in terms of Hypergeometric2F1:
sol1[z_] := ((z - α/z - γ))^Subscript[a, 1]((z - β/z - γ))^Subscript[b, 1]Hypergeometric2F1[Subscript[a, 1] + Subscript[b, 1] + Subscript[c, 1], Subscript[a, 1] + Subscript[b, 1] + Subscript[c, 2], 1 + Subscript[a, 1] - Subscript[a, 2], (z - α/z - γ)(β - γ/β - α)]sol2[z_] := ((z - α/z - γ))^Subscript[a, 2]((z - β/z - γ))^Subscript[b, 1]Hypergeometric2F1[Subscript[a, 2] + Subscript[b, 1] + Subscript[c, 1], Subscript[a, 2] + Subscript[b, 1] + Subscript[c, 2], 1 - Subscript[a, 1] + Subscript[a, 2], (z - α/z - γ)(β - γ/β - α)]Verify that the solutions satisfy Riemann's equation:
(riemannODE /. w -> sol1) /. (Subscript[c, 2] -> 1 - (Subscript[a, 1] + Subscript[a, 2] + Subscript[b, 1] + Subscript[b, 2] + Subscript[c, 1]))//FullSimplify(riemannODE /. w -> sol2) /. (Subscript[c, 2] -> 1 - (Subscript[a, 1] + Subscript[a, 2] + Subscript[b, 1] + Subscript[b, 2] + Subscript[c, 1]))//FullSimplifyProperties & Relations (2)
Use FunctionExpand to expand Hypergeometric2F1 into other functions:
FunctionExpand[Hypergeometric2F1[2, b, (5 - b) / 2, -1 / 2]]FunctionExpand[Hypergeometric2F1[a, a + 1 / 2, 2a, z]]Find limits of Hypergeometric2F1 from below and above the branch cut:
Limit[Hypergeometric2F1[(1/2), (1/3), (3/2), x], x -> 2, Direction -> I]Limit[Hypergeometric2F1[(1/2), (1/3), (3/2), x], x -> 2, Direction -> -I]Possible Issues (1)
is equivalent to
for generic
:
{Hypergeometric2F1[1, a, a, x], HypergeometricPFQ[{1}, {}, x]}However, if
is a negative integer, Hypergeometric2F1 returns a polynomial:
Hypergeometric2F1[1, -2, -2, x]Neat Examples (1)
The discrete Kepler problem
with initial conditions
and
can be solved in terms of hypergeometric functions:
Ψ[n_, {k_, q_}] := n Exp[-k (n - 1)]Hypergeometric2F1[-n + 1, 1 + q / (2 Sinh[k]), 2, 1 - Exp[2 k]]Table[(Ψ[n + 1, {k, q}] + Ψ[n - 1, {k, q}]) / Ψ[n, {k, q}] + (ℰ - 2 - (q/n)) == 0, {n, 5}]//FullSimplify //UnionFinite norm states exist for an attractive potential
with
and
:
Table[ListLinePlot[Ψ[#, {ArcCsch[2(m + 1)], -1.}]& /@ Range[30(m + 1)]] , {m, 1, 3, 2 / 5}]//MulticolumnTech Notes
Related Links
History
Introduced in 1988 (1.0) | Updated in 1999 (4.0) ▪ 2021 (13.0) ▪ 2022 (13.1)
Text
Wolfram Research (1988), Hypergeometric2F1, Wolfram Language function, https://reference.wolfram.com/language/ref/Hypergeometric2F1.html (updated 2022).
CMS
Wolfram Language. 1988. "Hypergeometric2F1." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2022. https://reference.wolfram.com/language/ref/Hypergeometric2F1.html.
APA
Wolfram Language. (1988). Hypergeometric2F1. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Hypergeometric2F1.html
BibTeX
@misc{reference.wolfram_2026_hypergeometric2f1, author="Wolfram Research", title="{Hypergeometric2F1}", year="2022", howpublished="\url{https://reference.wolfram.com/language/ref/Hypergeometric2F1.html}", note=[Accessed: 12-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_hypergeometric2f1, organization={Wolfram Research}, title={Hypergeometric2F1}, year={2022}, url={https://reference.wolfram.com/language/ref/Hypergeometric2F1.html}, note=[Accessed: 12-June-2026]}