Skip to content

HeunB (Biconfluent Heun Function)

This is a researcher-facing guide to the biconfluent Heun function HeunB, i.e. the local solution at the regular singular point z=0z=0 of the biconfluent Heun equation (BHE). The BHE is one of the four confluent descendants of the general Heun equation and is characterized by

  • one regular singularity (at z=0z=0 in standard forms), and
  • one irregular singularity of rank 2 (at z=z=\infty), hence Stokes phenomena at infinity.

This page aims to help you

  • recognize when your ODE is (or can be reduced to) the BHE,
  • navigate competing canonical forms and parameter conventions (Ronveaux/Maroni, Maple, Wolfram, DLMF),
  • understand what the function HeunB actually means (normalization, analytic continuation, branches),
  • compute HeunB reliably (series, ODE integration, asymptotics) and validate results,
  • use truncation / polynomial cases that frequently appear in quantum-mechanical eigenvalue problems.

It does not attempt to reproduce the full theory of the BHE (monodromy/Stokes matrices, global connection problems, etc.). Instead, it emphasizes what you need to use HeunB correctly in actual research work.


1. The canonical biconfluent Heun equation behind HeunB

Section titled “1. The canonical biconfluent Heun equation behind HeunB”

1.1 Ronveaux/Maroni canonical form (4 parameters)

Section titled “1.1 Ronveaux/Maroni canonical form (4 parameters)”

The canonical BHE used in Ronveaux (1995, Part D) can be written as (Maroni’s Eq. (1.2.5))

zy(z)+(1+αβz2z2)y(z)+((γα2)z12[δ+(1+α)β])y(z)=0.z\,y''(z) + (1+\alpha - \beta z - 2 z^2)\,y'(z) + \Bigl((\gamma-\alpha-2)\,z - \tfrac12\bigl[\delta + (1+\alpha)\beta\bigr]\Bigr)\,y(z)=0.

Dividing by zz makes the singularity structure explicit:

y(z)+(1+αzβ2z)y(z)+(γα2δ+(1+α)β2z)y(z)=0.y''(z) + \left(\frac{1+\alpha}{z}-\beta-2z\right) y'(z) + \left(\gamma-\alpha-2 - \frac{\delta + (1+\alpha)\beta}{2z}\right) y(z)=0.
  • z=0z=0 is a regular singular point.
  • z=z=\infty is an irregular singular point of rank 2 (the 2zy-2z\,y' term drives the Stokes behavior).

This 4-parameter form is the one most closely aligned with Maple’s HeunB(α,β,γ,δ,z) and with much of the mathematical literature following Ronveaux.

Removing the first-derivative term by

u(z)=z1+α2eβ2z12z2y(z)u(z)=z^{\frac{1+\alpha}{2}} e^{-\frac{\beta}{2}z-\frac12 z^2}\,y(z)

transforms the BHE into a “normal form” (Maroni’s Eq. (1.3.1)):

u(z)+[1α24z2δ2z+γ(β2)2βzz2]u(z)=0.u''(z) + \left[ \frac{1-\alpha^2}{4z^2} - \frac{\delta}{2z} + \gamma - \left(\frac{\beta}{2}\right)^2 - \beta z - z^2 \right] u(z)=0.

This is extremely useful if you meet the BHE via a radial Schrödinger equation: the bracket looks like an effective potential with z2z^2 and zz terms plus centrifugal/Coulomb-type pieces.


2. Definition of the biconfluent Heun function HeunB

Section titled “2. Definition of the biconfluent Heun function HeunB”

A Frobenius ansatz y(z)=n0cnzn+ρy(z)=\sum_{n\ge 0} c_n z^{n+\rho} gives the indicial equation

ρ(ρ+α)=0,\rho(\rho+\alpha)=0,

so the characteristic exponents at z=0z=0 are

ρ1=0,ρ2=α.\rho_1=0,\qquad \rho_2=-\alpha.
  • If αZ\alpha\notin\mathbb{Z}, the two local solutions are (generically) a regular one and a singular one zα\sim z^{-\alpha}.
  • If αZ\alpha\in\mathbb{Z}, logarithms can appear in the second solution (see §4.2).

The biconfluent Heun function HeunB is the solution that is analytic at z=0z=0 and normalized by

HeunB(α,β,γ,δ;0)=1.\mathrm{HeunB}(\alpha,\beta,\gamma,\delta;0)=1.

In Ronveaux/Maroni notation this solution is denoted N(α,β,γ,δ;z)N(\alpha,\beta,\gamma,\delta;z) and is an entire function of zz (no other finite singularities exist).


3. Power-series expansion at z=0z=0 (the workhorse)

Section titled “3. Power-series expansion at z=0z=0z=0 (the workhorse)”

3.1 Series form used by Ronveaux/Maroni (and Maple)

Section titled “3.1 Series form used by Ronveaux/Maroni (and Maple)”

Write the analytic solution as (Maroni’s Eq. (3.1.3))

HeunB(α,β,γ,δ;z)=n=0An(1+α)nn!zn,(1+α)n=Γ(1+α+n)Γ(1+α).\mathrm{HeunB}(\alpha,\beta,\gamma,\delta;z) =\sum_{n=0}^{\infty}\frac{A_n}{(1+\alpha)_n\,n!}\,z^n, \qquad (1+\alpha)_n=\frac{\Gamma(1+\alpha+n)}{\Gamma(1+\alpha)}.

The first coefficients are (Eqs. (3.1.4)–(3.1.5))

A0=1,A1=12(δ+β(1+α)),A_0=1,\qquad A_1=\tfrac12\bigl(\delta+\beta(1+\alpha)\bigr),

and for n0n\ge 0,

An+2=((n+1)β+12(δ+β(1+α)))An+1(n+1)(n+1+α)(γ2α2n)An.\boxed{ A_{n+2} =\left((n+1)\beta+\tfrac12(\delta+\beta(1+\alpha))\right)A_{n+1} -(n+1)(n+1+\alpha)\,(\gamma-2-\alpha-2n)\,A_n. }

This recurrence is stable and easy to implement for moderate nn, and it is the fastest way to evaluate HeunB when z|z| is not too large.

From the series one immediately reads

HeunB(α,β,γ,δ;0)=A11+α=δ+β(1+α)2(1+α)=β2+δ2(1+α).\mathrm{HeunB}'(\alpha,\beta,\gamma,\delta;0)=\frac{A_1}{1+\alpha} =\frac{\delta+\beta(1+\alpha)}{2(1+\alpha)} =\frac{\beta}{2}+\frac{\delta}{2(1+\alpha)}.

This is the correct initial slope for ODE integration starting at z=0z=0 (or at a small z=z0z=z_0).

For complex parameters, evaluate

SN(z)=n=0NAn(1+α)nn!znS_N(z)=\sum_{n=0}^{N}\frac{A_n}{(1+\alpha)_n\,n!}\,z^n

with the recurrence above and stop when the last term is below your target tolerance.

Implementation notes:

  • Use logarithmic updates for (1+α)n(1+\alpha)_n and n!n! if you need very high NN.
  • For high precision, compute with arbitrary precision arithmetic (e.g. mpmath, Mathematica, Maple).
  • If z|z| is large, the power series may need many terms; then ODE integration or asymptotics is usually better (§6).

4. The second local solution and singular parameter cases

Section titled “4. The second local solution and singular parameter cases”

4.1 Generic case αZ\alpha\notin\mathbb{Z}

Section titled “4.1 Generic case α∉Z\alpha\notin\mathbb{Z}α∈/Z”

When α\alpha is not an integer, a convenient fundamental system at the origin is (Maroni’s Prop. 3.1.1)

y1(z)=HeunB(α,β,γ,δ;z),y2(z)=zαHeunB(α,β,γ,δ;z).y_1(z)=\mathrm{HeunB}(\alpha,\beta,\gamma,\delta;z),\qquad y_2(z)=z^{-\alpha}\,\mathrm{HeunB}(-\alpha,\beta,\gamma,\delta;z).

The Wronskian of any two solutions y1,y2y_1,y_2 of the BHE satisfies

W[y1,y2](z)=Cz(1+α)eβz+z2,W[y_1,y_2](z)=C\,z^{-(1+\alpha)} e^{\beta z + z^2},

and in particular for the pair above C=αC=-\alpha.

If αZ\alpha\in\mathbb{Z}, the exponent difference ρ1ρ2=α\rho_1-\rho_2=\alpha is an integer, and the second solution may contain a logz\log z term. This is not special to Heun; it is the standard Frobenius phenomenon.

Practical implication: if you need the second solution and your parameters place you in a resonant case, do not “guess” it from zαHeunB(α,)z^{-\alpha}\mathrm{HeunB}(-\alpha,\dots) without checking whether the logarithmic term is present.


5. Polynomial (terminating) cases: “HeunB polynomials”

Section titled “5. Polynomial (terminating) cases: “HeunB polynomials””

A major reason HeunB appears in physics is that bound-state/eigenvalue conditions often force the analytic solution to truncate into a polynomial times a simple gauge factor.

From the recurrence for AnA_n, the analytic solution becomes a polynomial of degree mm if and only if (Maroni §3.3)

γα2=2m,Am+1=0.\gamma-\alpha-2=2m,\qquad A_{m+1}=0.
  • The first condition fixes γ\gamma relative to α\alpha (think “quantization of an exponent at infinity”).
  • The second condition is an algebraic constraint on δ\delta (for fixed α,β\alpha,\beta), typically solved as a root condition.

More precisely, for fixed (α,β)(\alpha,\beta) and integer m0m\ge 0, the coefficient Am+1A_{m+1} is a polynomial of degree m+1m+1 in δ\delta, so there are at most m+1m+1 values δ=δμ(m)\delta=\delta_\mu^{(m)} that produce truncation.

5.1 Orthogonality (when parameters are real)

Section titled “5.1 Orthogonality (when parameters are real)”

When 1+α>01+\alpha>0 and βR\beta\in\mathbb{R}, the resulting polynomial solutions satisfy an orthogonality relation (Maroni Eq. (3.3.4)):

0tαeβtt2Pm,μ(t)Pm,ν(t)dt=0,μν,\int_0^\infty t^\alpha e^{-\beta t-t^2}\, P_{m,\mu}(t)\,P_{m,\nu}(t)\,dt=0, \qquad \mu\ne \nu,

with Pm,μP_{m,\mu} the mm-th degree polynomial solution.

This is one route from HeunB to families of orthogonal polynomials that arise in quasi-exactly solvable models.


6. Behavior at infinity and why Stokes sectors matter

Section titled “6. Behavior at infinity and why Stokes sectors matter”

The irregular singularity at z=z=\infty is where most “hard” BHE problems live (connection problems, eigenvalues, Stokes multipliers).

Maroni constructs canonical solutions in different half-planes. The key takeaway is that, as z|z|\to\infty in a suitable sector, there is a pair of asymptotic behaviors of the form (see §3.4):

B+(z)zγα22n=0anzn,B^+(z)\sim z^{\frac{\gamma-\alpha-2}{2}}\sum_{n=0}^\infty \frac{a_n}{z^n},

and

H+(z)zγ+α+22eβz+z2n=0enzn.H^+(z)\sim z^{-\frac{\gamma+\alpha+2}{2}}\,e^{\beta z+z^2}\sum_{n=0}^\infty \frac{e_n}{z^n}.

So generically, one solution is algebraic and the other carries the dominant exponential ez2+βze^{z^2+\beta z}.


7. Special cases and reductions (useful checks)

Section titled “7. Special cases and reductions (useful checks)”

7.1 Reduction to confluent hypergeometric 1F1{}_1F_1

Section titled “7.1 Reduction to confluent hypergeometric 1F1{}_1F_11​F1​”

A particularly important specialization is (Maroni Eq. (3.1.12)):

HeunB(α,0,γ,0;z)=1F1 ⁣(α+2γ4;1+α;z22).\mathrm{HeunB}(\alpha,0,\gamma,0;z) ={}_1F_1\!\left(\frac{\alpha+2-\gamma}{4}\,;\,1+\alpha\,;\,\frac{z^2}{2}\right).

This identity is a powerful validation tool: if you set β=δ=0\beta=\delta=0 and compare to a high-quality 1F1{}_1F_1 implementation, your code for HeunB should match.

Another exact identity (Maroni Eq. (3.1.16)) is

HeunB(α,β,(α+2),β(1+α);z)=eβz+z2.\mathrm{HeunB}\bigl(\alpha,\beta,-(\alpha+2),\beta(1+\alpha);z\bigr)=e^{\beta z+z^2}.

Again, this is excellent for sanity checks.

When parameters enforce polynomial truncation with β=0\beta=0, the polynomial solutions reduce to generalized Laguerre polynomials Lm(α)L_m^{(\alpha)} (Maroni Eq. (3.3.5)). If your application predicts a Laguerre limit, verify that your HeunB reduces accordingly.


7.4 Symmetries and functional relations (quick consistency checks)

Section titled “7.4 Symmetries and functional relations (quick consistency checks)”

Beyond special-case reductions, the BHE has nontrivial discrete transformations that map solutions to solutions while reshuffling parameters. In Ronveaux/Maroni notation (Prop. 3.1.2), for α{1,2,}\alpha\notin\{-1,-2,\dots\} one has

HeunB(α,β,γ,δ;z)=HeunB(α,β,γ,δ;z),\mathrm{HeunB}(\alpha,\beta,\gamma,\delta;z) =\mathrm{HeunB}(\alpha,-\beta,\gamma,-\delta;-z),

and a “π/2\pi/2 rotation” identity

HeunB(α,β,γ,δ;z)=eβz+z2HeunB(α,iβ,γ,iδ;iz).\mathrm{HeunB}(\alpha,\beta,\gamma,\delta;z) =e^{\beta z+z^2}\,\mathrm{HeunB}(\alpha,-i\beta,-\gamma,i\delta;-iz).

These identities are useful in practice for:

  • sanity checks (numerical evaluation must satisfy them),
  • moving from a numerically unstable ray to a more stable one (rotate zz),
  • relating Stokes sectors at infinity.

8. Conventions across references (Ronveaux/Maple vs Wolfram vs DLMF)

Section titled “8. Conventions across references (Ronveaux/Maple vs Wolfram vs DLMF)”

Maple defines HeunB(α,β,γ,δ,z) as the Frobenius solution about z=0z=0 for a 4-parameter canonical BHE, normalized by HeunB(...,0)=1, and computed as a power series (hence convergent for all zCz\in\mathbb{C}).

  • Maple help page: HeunB — The Heun Biconfluent function.

8.2 Wolfram Language’s HeunB[q,α,γ,δ,ϵ,z]

Section titled “8.2 Wolfram Language’s HeunB[q,α,γ,δ,ϵ,z]”

Wolfram uses a 5-parameter bi-confluent equation (as displayed in its documentation):

zy(z)+(γ+δz+ϵz2)y(z)+(αzq)y(z)=0,y(0)=1.z\,y''(z) + (\gamma + \delta z + \epsilon z^2)\,y'(z) + (\alpha z - q)\,y(z)=0, \qquad y(0)=1.

To match Ronveaux/Maple parameters (α,β,γ,δ)(\alpha,\beta,\gamma,\delta) to Wolfram parameters (q,α,γ,δ,ϵ)(q,\alpha,\gamma,\delta,\epsilon), set

ϵ=2,γW=1+α,δW=β,αW=γα2,qW=12(δ+(1+α)β),\epsilon=-2,\qquad \gamma_{\mathrm{W}}=1+\alpha,\qquad \delta_{\mathrm{W}}=-\beta,\qquad \alpha_{\mathrm{W}}=\gamma-\alpha-2,\qquad q_{\mathrm{W}}=\tfrac12\bigl(\delta+(1+\alpha)\beta\bigr),

and use the same zz.

(Here the subscript “W” means “Wolfram parameter”.)

DLMF §31.12.3 uses a different “standard form”:

w(z)(γz+δ+z)w(z)+αzqzw(z)=0.w''(z)-\left(\frac{\gamma}{z}+\delta+z\right)w'(z)+\frac{\alpha z-q}{z}w(z)=0.

This is equivalent to the Ronveaux/Maple form by a rescaling of zz and a linear redefinition of parameters. If you are translating a paper that quotes DLMF parameters, do the conversion once and then stay in a single convention throughout your work.


Recommended workflow:

  1. Write down the ODE you believe you have.
  2. Reduce it to your chosen canonical BHE by explicit substitutions (affine change of zz, gauge factor eaz+bz2e^{az+bz^2}, power prefactor zρz^\rho, etc.).
  3. Translate parameters into your CAS convention (Maple vs Wolfram).
  4. Validate with:
    • series at z=0z=0,
    • a special-case reduction (§7),
    • numerical residual of the ODE (substitute and check it solves to tolerance).

9.2 In your own code (series + ODE integration)

Section titled “9.2 In your own code (series + ODE integration)”

A robust pattern is:

  • Use the power series to initialize at a small z=z0z=z_0 (not exactly 00 if your ODE solver dislikes singular coefficients).
  • Integrate the ODE along a path in the complex plane using an adaptive solver.
  • If you need large-z|z| behavior, compare to the asymptotic forms (§6) in the correct sector.

Below is a minimal series evaluator following Maroni’s recurrence:

import mpmath as mp
def heunB_series(alpha, beta, gamma, delta, z, nterms=50):
# A_n recurrence (Maroni 1995, Eq. 3.1.5)
A0 = mp.mpf(1)
A1 = mp.mpf('0.5')*(delta + beta*(1+alpha))
A = [A0, A1]
for n in range(0, nterms-2):
A_np2 = ((n+1)*beta + mp.mpf('0.5')*(delta + beta*(1+alpha)))*A[n+1] \
- (n+1)*(n+1+alpha)*(gamma-2-alpha-2*n)*A[n]
A.append(A_np2)
# sum A_n / ((1+alpha)_n n!) z^n
s = mp.mpf(0)
poch = mp.mpf(1) # (1+alpha)_0
fact = mp.mpf(1) # 0!
for n, An in enumerate(A):
if n > 0:
poch *= (alpha + n) # (1+alpha)_n = ∏_{k=1}^n (alpha + k)
fact *= n
s += An/(poch*fact) * (z**n)
return s

10. A Laplace-type integral relation (advanced but useful)

Section titled “10. A Laplace-type integral relation (advanced but useful)”

Maroni derives integral transforms that connect the origin-normalized solution N(α,β,γ,δ;z)N(\alpha,\beta,\gamma,\delta;z) to canonical solutions at infinity.

One representative Laplace-type relation (see §4.1) is:

B+(α^,β^,γ^,δ^;z)=21+αΓ(1+α)0e2zxxαeβxx2HeunB(α,β,γ,δ;x)dx,B^+(\hat{\alpha},\hat{\beta},\hat{\gamma},\hat{\delta};z) =\frac{2^{1+\alpha}}{\Gamma(1+\alpha)} \int_0^\infty e^{-2zx}\,x^\alpha e^{-\beta x-x^2}\, \mathrm{HeunB}(\alpha,\beta,\gamma,\delta;x)\,dx,

valid (at least) for z>0\Re z>0 and α>1\Re\alpha>-1, with

α^=12(αγ),β^=β,γ^=12(γ+3α),δ^=δ+12β(γ+α).\hat{\alpha}=\tfrac12(\alpha-\gamma),\qquad \hat{\beta}=\beta,\qquad \hat{\gamma}=-\tfrac12(\gamma+3\alpha),\qquad \hat{\delta}=\delta+\tfrac12\beta(\gamma+\alpha).

You do not need this formula for day-to-day evaluation of HeunB, but it is valuable for:

  • proving properties (growth, analytic continuation),
  • building alternative numerical schemes (quadrature-based),
  • understanding how “origin data” and “infinity data” are related.

Section titled “References and recommended primary sources”