Function Repository Resource:

HolderDoubleSine

Source Notebook

Calculate the numerical value of the Hölder double sine function

Contributed by: Pieter-Jan De Smet

ResourceFunction["HolderDoubleSine"][x,b]

gives the Hölder double sine function sb(x).

Details

The (Hölder) double sine function sb(x) is defined as , with Q=b+b-1. Here, the double Gamma function is defined as where the double zeta function is defined as an analytical continuation of the sum
The variable b should be real and strictly positive. The variable x can be complex.

Examples

Basic Examples (1) 

Evaluate numerically:

In[1]:=
b = 1.3;
x = 1 + 2 I;
ResourceFunction["HolderDoubleSine"][x, b]
Out[3]=

Properties and Relations (5) 

The double sine function is invariant under inversion of the variable b, sb(x)=sb-1(x):

In[4]:=
b = RandomReal[{.1, 10}];
x = RandomComplex[{-2 - 2 I, 2 + 2 I}];
{ResourceFunction["HolderDoubleSine"][x, b], ResourceFunction["HolderDoubleSine"][x, 1/b]}
Out[6]=

The double sine function at the values ±x satisfies the relation sb(x)sb(-x)=1:

In[7]:=
b = RandomReal[{.1, 7}];
x = RandomComplex[{-2 - 2 I, 2 + 2 I}];
ResourceFunction["HolderDoubleSine"][x, b] ResourceFunction[
  "HolderDoubleSine"][-x, b]
Out[9]=

The double sine function at z and its conjugate satisfies the relation :

In[10]:=
b = RandomReal[{.1, 8}];
z = RandomComplex[{-5 - 5 I, 5 + 5 I}];
{Conjugate[ResourceFunction["HolderDoubleSine"][z, b]], ResourceFunction["HolderDoubleSine"][-Conjugate[z], b]}
Out[12]=

The double sine function satisfies the following important difference equation :

In[13]:=
b = RandomReal[{.1, 3}];
z = RandomComplex[{-2 - 2 I, 2 + 2 I}];
{ResourceFunction["HolderDoubleSine"][z + I /2 b, b]/
  ResourceFunction["HolderDoubleSine"][z - I /2 b, b], 1 / (2 Cosh[Pi b z])}
Out[15]=

Similarly, the double sine function satisfies the difference equation :

In[16]:=
b = RandomReal[{.1, 3}];
z = RandomComplex[{-2 - 2 I, 2 + 2 I}];
{ResourceFunction["HolderDoubleSine"][z + I /(2 b), b]/
  ResourceFunction["HolderDoubleSine"][z - I /(2 b), b], 1 / (2 Cosh[Pi /b z])}
Out[18]=

Possible Issues (2) 

The variable b should be real and strictly positive:

In[19]:=
x = 2.2;
b = 1 + I;
ResourceFunction["HolderDoubleSine"][x, b]
Out[20]=

A warning is generated if there is a potential numerical issue:

In[21]:=
b = 1.2;
x = 50 + 1.5 I;
ResourceFunction["HolderDoubleSine"][x, b]
Out[22]=

Applications (1) 

If b2 is an odd integer, then the function has a closed form expression[KNB]:

In[23]:=
Clear[x, b, CurlyD, CurlyDClosedForm]
CurlyD[x_, b_] := ResourceFunction["HolderDoubleSine"][x + I / 4 ( b + 1/b), b]/
  ResourceFunction["HolderDoubleSine"][x - I / 4 ( b + 1/b), b]
CurlyDClosedForm[x_, n_] := With[{b = Sqrt[2 n - 1]}, Product[1 / (2 Cosh[Pi/b x + Pi I/b^2 ( ( n + 1)/2 - l)]), {l, 1, n}]]
In[24]:=
n = 1;
b = Sqrt[2 n - 1];
x = RandomComplex[{-2 - 2 I, 2 + 2 I}];
value1 = CurlyD[x, b];
value2 = CurlyDClosedForm[x, n];
{value1, value2}
Out[29]=
In[30]:=
n = 2;
b = Sqrt[2 n - 1];
x = RandomComplex[{-2 - 2 I, 2 + 2 I}];
value1 = CurlyD[x, b];
value2 = CurlyDClosedForm[x, n];
{value1, value2}
Out[35]=
In[36]:=
n = 3;
b = Sqrt[2 n - 1];
x = RandomComplex[{-2 - 2 I, 2 + 2 I}];
value1 = CurlyD[x, b];
value2 = CurlyDClosedForm[x, n];
{value1, value2}
Out[41]=

Neat Examples (1) 

has a closed form expression, see equation (A.19) in[H]:

In[42]:=
Clear[x, b, CurlyD]
CurlyD[x_, b_] := ResourceFunction["HolderDoubleSine"][x + I / 4 ( b + 1/b), b]/
  ResourceFunction["HolderDoubleSine"][x - I / 4 ( b + 1/b), b]
{CurlyD[0, Sqrt[2]], N[1 / ( 8 + 6 Sqrt[2])^(1/4) Exp[-Catalan/(2 Pi)]]}
Out[44]=

Publisher

Pieter DeSmet

Requirements

Wolfram Language 13.0 (December 2021) or above

Version History

  • 1.0.0 – 02 January 2025

Source Metadata

Related Resources

Author Notes

In the literature, for example in[KK], the name double sine function is also used for a more general function.

The numerical calculation uses contour integration along a Hankel contour. The implemented contour usually works well numerically.

License Information