HypergeometricPFQ[{a1,…,ap},{b1,…,bq},z]
is the generalized hypergeometric function
.
HypergeometricPFQ
HypergeometricPFQ[{a1,…,ap},{b1,…,bq},z]
is the generalized hypergeometric function
.
Details
- Mathematical function, suitable for both symbolic and numerical manipulation.
has the series expansion
, where
is the Pochhammer symbol.- Hypergeometric0F1, Hypergeometric1F1, and Hypergeometric2F1 are special cases of HypergeometricPFQ.
- In many special cases, HypergeometricPFQ is automatically converted to other functions.
- For certain special arguments, HypergeometricPFQ automatically evaluates to exact values.
- HypergeometricPFQ can be evaluated to arbitrary numerical precision.
- For
, HypergeometricPFQ[alist,blist,z] has a branch cut discontinuity in the complex
plane running from
to
. - FullSimplify and FunctionExpand include transformation rules for HypergeometricPFQ.
- HypergeometricPFQ can be used with Interval and CenteredInterval objects. »
Examples
open all close allBasic Examples (5)
HypergeometricPFQ[{1, 1}, {3, 3, 3}, 2.]Plot
over a subset of the reals:
Plot[HypergeometricPFQ[{1, 1}, {3, 3, 3}, x], {x, -30, 30}]HypergeometricPFQ[{1, 1, 2}, {3, 3}, z]Series expansion at the origin:
Series[ HypergeometricPFQ[{a1, a2, a3}, {b1, b2}, z], {z, 0, 2}]Series expansion at Infinity:
Series[HypergeometricPFQ[{1, 1, 2}, {3, 3}, x], {x, ∞, 5}]//NormalScope (34)
Numerical Evaluation (6)
N[HypergeometricPFQ[{1, 1, 1}, {3 / 2, 3 / 2, 3 / 2}, 10], 50]The precision of the output tracks the precision of the input:
HypergeometricPFQ[{1, 1, 1}, {3 / 2, 3 / 2, 3 / 2}, 10.00000000000000000000000000]Evaluate for complex arguments and parameters:
HypergeometricPFQ[{I, I, I}, {2, 2 , 2}, -1.0I]Evaluate HypergeometricPFQ efficiently at high precision:
HypergeometricPFQ[{1, 1, 1}, {3 / 2, 3 / 2, 3 / 2}, 10`500]//TimingHypergeometricPFQ[{1, 1, 1}, {3 / 2, 3 / 2, 3 / 2}, 10`5000];//TimingHypergeometricPFQ threads elementwise over lists in its third argument:
HypergeometricPFQ[{1, 2, 3, 4}, {5, 6, 7}, {0.1, 0.3, 0.5}]HypergeometricPFQ threads elementwise over sparse and structured arrays in its third argument:
HypergeometricPFQ[{1, 2, 3, 4}, {5, 6, 7}, SparseArray[Automatic, {2, 2}, 0, {1, {{0, 1, 2}, {{1}, {2}}}, {1, 1}}]]HypergeometricPFQ[{1, 2, 3, 4}, {5, 6, 7}, SymmetrizedArray[StructuredArray`StructuredData[{2, 2},
{{{1, 1} -> 1, {1, 2} -> 1/2, {2, 2} -> 1/3}, Symmetric[{1, 2}]}]]]HypergeometricPFQ can be used with Interval and CenteredInterval objects:
HypergeometricPFQ[{1 / 2, 2 / 3, 3 / 4}, {4 / 5, 5 / 6}, Interval[{0.11, 0.12}]]HypergeometricPFQ[{1 / 2, 2 / 3, 3 / 4}, {4 / 5, 5 / 6}, CenteredInterval[1 / 2, 1 / 100]]Compute the elementwise values of an array:
HypergeometricPFQ[{1, 3}, {2, 2}, {{1, 0}, {1 / 2, 1}}]Or compute the matrix HypergeometricPFQ function using MatrixFunction:
MatrixFunction[HypergeometricPFQ[{1, 3}, {2, 2}, #]&, {{1, 0}, {1 / 2, 1}}]Specific Values (4)
For simple parameters, HypergeometricPFQ evaluates to simpler functions:
HypergeometricPFQ[{1, 1, 3}, {2, 2}, x]HypergeometricPFQ evaluates to a polynomial if any of the parameters ak is a non-positive integer:
HypergeometricPFQ[{-3, a}, {b, c}, x]HypergeometricPFQ[{Subscript[a, 1], Subscript[a, 2], Subscript[a, 3]}, {Subscript[b, 1], Subscript[b, 2], Subscript[b, 3]}, 0]Find a value of
satisfying the equation
:
f[x_] := HypergeometricPFQ[{1, 1, 2}, {3, 3}, x] - 1 / 2;
xzero = Solve[f[x] == 0 && -8 < x < -6.0, x][[1, 1, 2]]//QuietPlot[f[x], {x, -10, 3}, Epilog -> Style[Point[{xzero, f[xzero]}], PointSize[Large], Red]]Visualization (2)
Plot the HypergeometricPFQ function:
Plot[{HypergeometricPFQ[{1, 1}, {3, 3, 3}, x], HypergeometricPFQ[{2, 2}, {3, 3, 3}, x], HypergeometricPFQ[{3, 3}, {3, 3, 3}, x]}, {x, -10, 10}]ComplexContourPlot[Re[HypergeometricPFQ[{1, 1}, {3, 3, 3}, z]], {z, -10 - 10I, 10 + 10I}, Contours -> 24]ComplexContourPlot[Im[HypergeometricPFQ[{1, 1}, {3, 3, 3}, z]], {z, -10 - 10I, 10 + 10I}, Contours -> 24]Function Properties (9)
Domain of HypergeometricPFQ:
FunctionDomain[HypergeometricPFQ[{a1, a2}, {b1, b2, b3}, x], x]FunctionDomain[HypergeometricPFQ[{a1, a2}, {b1, b2, b3}, z], z, Complexes]HypergeometricPFQ[{a1, a2}, {b1, b2, b3}, x] == HypergeometricPFQ[{a2, a1}, {b1, b2, b3}, x]HypergeometricPFQ[{a1, a2}, {b1, b2, b3}, x] == HypergeometricPFQ[{a1, a2}, {b1, b3, b2}, x]HypergeometricPFQ is an analytic function of z for specific values:
FunctionAnalytic[HypergeometricPFQ[{1, 1}, {3, 3, 3}, z], z]FunctionAnalytic[HypergeometricPFQ[{1, 1, 2}, {3, 3}, z], z]HypergeometricPFQ is neither non-decreasing nor non-increasing for specific values:
FunctionMonotonicity[HypergeometricPFQ[{1, 1, 2}, {3, 3}, z], z]FunctionMonotonicity[HypergeometricPFQ[{1, 1}, {3, 3, 3}, z], z]HypergeometricPFQ[{1,1,1},{3,3,3},z] is injective:
FunctionInjective[HypergeometricPFQ[{1, 1, 1}, {3, 3, 3}, z], z]Plot[{HypergeometricPFQ[{1, 1, 1}, {3, 3, 3}, z], 2}, {z, -20, 20}]HypergeometricPFQ[{1,1,1},{3,3,3},z] is not surjective:
FunctionSurjective[HypergeometricPFQ[{1, 1, 1}, {3, 3, 3}, z], z]Plot[{HypergeometricPFQ[{1, 1, 1}, {3, 3, 3}, z], -2}, {z, -20, 20}]HypergeometricPFQ is neither non-negative nor non-positive:
FunctionSign[HypergeometricPFQ[{1, 1, 1}, {3, 3, 3}, z], z]FunctionSign[HypergeometricPFQ[{1, 1, 2}, {3, 3}, z], z]HypergeometricPFQ[{1,1,2},{3,3},z] has both singularity and discontinuity for z≥1 and at zero:
FunctionSingularities[HypergeometricPFQ[{1, 1, 2}, {3, 3}, z], z]FunctionDiscontinuities[HypergeometricPFQ[{1, 1, 2}, {3, 3}, z], z]HypergeometricPFQ is neither convex nor concave:
FunctionConvexity[HypergeometricPFQ[{1, 1, 2}, {3, 3}, z], z]FunctionConvexity[HypergeometricPFQ[{1, 1, 1}, {3, 3, 3}, z], z]Differentiation (2)
D[HypergeometricPFQ[{a1, a2}, {b1, b2, b3}, x], x]derivs = Table[D[HypergeometricPFQ[{a1, a2}, {b1, b2, b3}, x], {x, n}], {n, 1, 3}]//FullSimplifyPlot higher derivatives for some values parameters:
Plot[Evaluate[derivs /. {a1 -> 1, a2 -> 1, b1 -> 3, b2 -> 3, b3 -> 3}], {x, -100, 100}, PlotLegends -> {"First Derivative", "Second Derivative", "Third Derivative"}]Integration (3)
Indefinite integral of HypergeometricPFQ:
Integrate[HypergeometricPFQ[{a1, a2}, {b1, b2, b3}, x], x]Definite integral of HypergeometricPFQ:
Integrate[HypergeometricPFQ[{1, a2}, {b1, b2, b3}, x], {x, 0, 1}]Integral with a power function:
Integrate[x ^ (α - 1)HypergeometricPFQ[{a1, a2}, {b1, b2, b3}, x], x]//FullSimplifySeries Expansions (4)
Taylor expansion for HypergeometricPFQ:
Series[HypergeometricPFQ[{a1, a2}, {b1, b2, b3}, x], {x, 0, 3}]Plot the first three approximations for
around
:
terms = Normal@Table[Series[HypergeometricPFQ[{1, 1}, {3, 3, 3}, x], {x, 0, m}], {m, 1, 3}];
Plot[{HypergeometricPFQ[{1, 1}, {3, 3, 3}, x], terms}, {x, -30, 30}]General term in the series expansion of HypergeometricPFQ:
SeriesCoefficient[HypergeometricPFQ[{a1, a2}, {b1, b2, b3}, x], {x, 0, n}]Expand HypergeometricPFQ of type
into a series at the branch point
:
Series[ HypergeometricPFQ[{(1/3), (2/3), 1}, {(4/3), (4/3)}, z], {z, 1, 1}]Expand HypergeometricPFQ into a series around
:
Series[ HypergeometricPFQ[{1 / 3, 2 / 3}, {-1 / 3, -1 / 3}, z], {z, Infinity, 2}]//FullSimplifyFunction Representations (4)
Underoverscript[∑, k = 0, ∞](Pochhammer[a1, k]Pochhammer[a2, k] z^k/Pochhammer[b1, k]Pochhammer[b2, k]Pochhammer[b3, k]k!)HypergeometricPFQ can be represented as a DifferentialRoot:
DifferentialRootReduce[HypergeometricPFQ[{a}, {b1, b2}, x], x]HypergeometricPFQ can be represented in terms of MeijerG:
MeijerGReduce[HypergeometricPFQ[{a}, {b1, b2}, x], x]Activate[%]//FullSimplifyTraditionalForm formatting:
HypergeometricPFQ[{Subscript[a, 1], Subscript[a, 2], Subscript[a, 3]}, {Subscript[b, 1], Subscript[b, 2]}, z]//TraditionalFormApplications (7)
Solve a differential equation of hypergeometric type:
DSolve[f'''[z] == z^3 f[z], f[z], z]Solve a third-order singular ODE in terms of the HypergeometricPFQ and MeijerG functions:
DSolve[x y'''[x] + x y'[x] - y[x] == 0, y, x]Verify that the components of the general solution for an ODE are linearly independent:
Wronskian[Coefficient[y[x] /. %[[1]], Table[C[i], {i, 3}]], x]A formula for solutions to the trinomial equation
:
x[m_, n_Integer, t_] /; m < n := Sum[-(1/k! (n - 1))Pochhammer[1 + (k - 1/n - 1), k - 1]Exp[((k - 1) 2 π I m/n - 1)]t^k HypergeometricPFQ[(k - 1/n - 1) + (Range[n - 1]/n), (Delete[Range[k + 1, k + n - 1], n - k - 1]/n - 1), n ((n t/n - 1))^n - 1], {k, 0, n - 2}];
x[m_, n_Integer, t_] /; m == n := t HypergeometricPFQ[(Range[n]/n), (Range[2, n]/n - 1), n ((n t/n - 1))^n - 1]x[1, 5, 1]//TraditionalFormN[%, 20]x ^ 5 - x + 1 == 0 /. x -> %Effective confining potential in random matrix theory for a Gaussian density of states:
v[x_] := x ^ 2 HypergeometricPFQ[{1, 1}, {2, 3 / 2}, -x ^ 2]Plot[v[x], {x, 0, 5}]Its series expansion at infinity reveals logarithmic growth:
Series[v[x], {x, ∞, 3}]//ExpandAn expression for the surface tension of an electrolyte solution as a function of concentration y:
2 BesselK[0, 2Sqrt[y]]HypergeometricPFQ[{1}, {2 / 3, 5 / 3}, y] + 3Sqrt[y]BesselK[1, 2Sqrt[y]]HypergeometricPFQ[{1}, {5 / 3, 5 / 3}, y];Onsager–Samaras limiting law for very low concentrations:
Normal[Series[%, {y, 0, 0}, Assumptions -> y > 0]]Fractional derivative of Sin:
𝒟[z_, m_] = Integrate[(z - t)^-m - 1 Sin[t] / Gamma[-m], {t, 0, z}, GenerateConditions -> False]Derivative of order
of Sin:
𝒟[z, 1 / 2]//FunctionExpand//FullSimplifyPlot a smooth transition between the derivative and integral of Sin:
Plot3D[𝒟[z, m], {z, 0, 2Pi}, {m, -1, 1}]Define the Gram polynomial in terms of HypergeometricPFQ:
gramP[k_Integer, m_Integer, t_Integer] := (-1) ^ k HypergeometricPFQ[{-k, k + 1, -t - m}, {1, -2 m}, 1]Verify a discrete orthogonality relation satisfied by the Gram polynomials:
With[{m = 4}, Table[Underoverscript[∑, t = -m, m]gramP[n1, m, t]gramP[n2, m, t] == KroneckerDelta[n1, n2](2 m + n1 + 1/2 n1 + 1)(Binomial[2m + n1, n1]/Binomial[2m, n1]), {n1, m + 1}, {n2, m + 1}]]Use the Gram polynomial to compute the Savitzky–Golay smoothing coefficients:
savitzkyGolayCoefs[m_Integer, n_Integer] := Table[Underoverscript[∑, k = 0, n](Binomial[2 m, k]/Binomial[2 m + k + 1, k + 1]) (1 + (k/k + 1))gramP[k, m, i] gramP[k, m, 0], {i, -m, m}]savitzkyGolayCoefs[7, 4]Compare with the result of SavitzkyGolayMatrix:
SavitzkyGolayMatrix[{7}, 4, WorkingPrecision -> ∞]Properties & Relations (3)
Integrate frequently returns results containing HypergeometricPFQ:
Integrate[Exp[-x ^ 2]Log[x], x]Sum may return results containing HypergeometricPFQ:
Sum[((2k)!/ (4k + 3)!), {k, 0, Infinity}]Use FunctionExpand to transform HypergeometricPFQ into less general functions:
FunctionExpand[HypergeometricPFQ[{(3/2)}, {1, 1}, x]]Possible Issues (2)
Machine-precision input may be insufficient to get a correct answer:
HypergeometricPFQ[{10, 10}, {50}, 2.]With exact input, the answer is correct:
N[HypergeometricPFQ[{10, 10}, {50}, 2], 20]Common symbolic parameters in HypergeometricPFQ generically cancel:
HypergeometricPFQ[{a, b, c}, {a, d, e}, z]However, when there is a negative integer among common elements, HypergeometricPFQ is interpreted as a polynomial:
HypergeometricPFQ[{-2, a, b, c}, {-2, d, e}, z]Neat Examples (1)
The period of an anharmonic oscillator with Hamiltonian
:
period[n_, ℰ_, λ_, ω_] := (2 π/ω)HypergeometricPFQ[Range[1 / 2, n - 1 / 2] / n, Range[n - 1] / (n - 1), -((2n/ω^2))^n(λ ℰ^n - 1/(n - 1)^n - 1)]Period for quartic anharmonicity:
period[2, ℰ, λ, ω]Limit of pure quartic potential:
Limit[%, ω -> 0, Direction -> 1]Tech Notes
Related Guides
Related Links
History
Introduced in 1996 (3.0) | Updated in 1999 (4.0) ▪ 2021 (13.0) ▪ 2022 (13.1)
Text
Wolfram Research (1996), HypergeometricPFQ, Wolfram Language function, https://reference.wolfram.com/language/ref/HypergeometricPFQ.html (updated 2022).
CMS
Wolfram Language. 1996. "HypergeometricPFQ." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2022. https://reference.wolfram.com/language/ref/HypergeometricPFQ.html.
APA
Wolfram Language. (1996). HypergeometricPFQ. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/HypergeometricPFQ.html
BibTeX
@misc{reference.wolfram_2026_hypergeometricpfq, author="Wolfram Research", title="{HypergeometricPFQ}", year="2022", howpublished="\url{https://reference.wolfram.com/language/ref/HypergeometricPFQ.html}", note=[Accessed: 13-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_hypergeometricpfq, organization={Wolfram Research}, title={HypergeometricPFQ}, year={2022}, url={https://reference.wolfram.com/language/ref/HypergeometricPFQ.html}, note=[Accessed: 13-June-2026]}