Function Repository Resource:

EpsteinHubbellOmega

Source Notebook

Evaluate the Epstein–Hubbell integral

Contributed by: Jan Mangaldan

ResourceFunction["EpsteinHubbellOmega"][n,m]

gives the Epstein–Hubbell integral Ωn(m).

Details

Mathematical function, suitable for both symbolic and numerical manipulation.
For and positive integer n, the Epstein–Hubbell integral satisfies .
ResourceFunction["EpsteinHubbellOmega"][n,m] has branch cut discontinuities in the complex m plane running from - to -1 and +1 to +.
For certain special arguments, ResourceFunction["EpsteinHubbellOmega"] automatically evaluates to exact values.
ResourceFunction["EpsteinHubbellOmega"] can be evaluated to arbitrary numerical precision.
ResourceFunction["EpsteinHubbellOmega"] automatically threads over lists.

Examples

Basic Examples (3) 

Evaluate numerically:

In[1]:=
ResourceFunction["EpsteinHubbellOmega"][1, 0.7]
Out[1]=

Plot Ω2(m):

In[2]:=
Plot[ResourceFunction["EpsteinHubbellOmega"][2, m], {m, -1, 1}]
Out[2]=

Series at the origin:

In[3]:=
Series[ResourceFunction["EpsteinHubbellOmega"][1, m], {m, 0, 6}]
Out[3]=

Scope (4) 

Evaluate for complex arguments and orders:

In[4]:=
ResourceFunction["EpsteinHubbellOmega"][2 + 3 I, 1.7 - 5. I]
Out[4]=

Evaluate to high precision:

In[5]:=
N[ResourceFunction["EpsteinHubbellOmega"][2, 1/2], 50]
Out[5]=

The precision of the output tracks the precision of the input:

In[6]:=
ResourceFunction[
 "EpsteinHubbellOmega"][2, 0.5000000000000000000000000000000000000]
Out[6]=

EpsteinHubbellOmega threads elementwise over lists:

In[7]:=
ResourceFunction["EpsteinHubbellOmega"][{1, 2, 3}, 0.3]
Out[7]=

Applications (1) 

Log plot of a family of Epstein–Hubbell integrals:

In[8]:=
LogPlot[Table[
   ResourceFunction["EpsteinHubbellOmega"][j, m], {j, 0, 9}] // Evaluate, {m, 0, 1}, AspectRatio -> GoldenRatio, PlotRange -> {0, 10^4}]
Out[8]=

Properties and Relations (5) 

For integer n, EpsteinHubbellOmega can be expressed in terms of EllipticE and EllipticK:

In[9]:=
ResourceFunction["EpsteinHubbellOmega"][5, m] // Simplify
Out[9]=

For integer n, EpsteinHubbellOmega can be expressed in terms of half-integer order LegendreP:

In[10]:=
With[{n = 6, m = N[2/3, 20]},
 {\[Pi]/(1 - m^2)^((2 n + 1)/4) LegendreP[n - 1/2, 1/Sqrt[1 - m^2]], ResourceFunction["EpsteinHubbellOmega"][n, m]}]
Out[10]=

For integer n, EpsteinHubbellOmega can be expressed in terms of LegendreQ:

In[11]:=
With[{n = 6, m = N[2/3, 20]},
 {((-1)^n 2^(2 n + 1/2) n!)/((2 n)! Sqrt[m] (1 - m^2)^(n/2))
    LegendreQ[-1/2, n, 3, 1/m], ResourceFunction["EpsteinHubbellOmega"][n, m]}]
Out[11]=

Express an Epstein–Hubbell integral of noninteger order in terms of simpler functions:

In[12]:=
ResourceFunction["EpsteinHubbellOmega"][-3/4, m] // FunctionExpand // FullSimplify
Out[12]=

Compare EpsteinHubbellOmega with the integral definition:

In[13]:=
With[{n = 5, m = 2/3, prec = 20},
 {N[ResourceFunction["EpsteinHubbellOmega"][n, m], prec],
  NIntegrate[(1 - m Cos[t])^(-n - 1/2), {t, 0, Pi}, WorkingPrecision -> prec]}]
Out[13]=

Version History

  • 1.0.0 – 04 February 2021

Source Metadata

Related Resources

License Information