Functions with real input and complex results#

Expj (Cis) function#

Returns \(e^{iz} = \cos(z) + i \sin(z)\). See also Wikipedia [1492], MathWorld [1094].

An example in C#, for real part only

var y = Math.Sin(t);
var x = t;
var z = 0;

An example in C#, for imaginary part only

var z = -Math.Cos(t);
var x = t;
var y = 0;

An example in C#, for real and imaginary part combined


var x = Math.Sin(t); var y = -Math.Cos(t); var z = t;

Some text

Path_Func_Expj_2Dx_a \(\quad\) Path_Func_Expj_2Dy_a \(\quad\) Path_Func_Expj_a

Left figure: Expj (Cis) function, real part only. Orthographic camera. Camera angles are \(\theta=120^\circ\) and \(\phi = 130^\circ\).

Middle figure: Expj (Cis) function, imaginary part only. Orthographic camera. Camera angles are \(\theta=120^\circ\) and \(\phi = 130^\circ\).

Right figure: Expj (Cis) function as full 3D curve. Orthographic camera. Camera angles are \(\theta=120^\circ\) and \(\phi = 130^\circ\).

Hankel function of the first kind \(H_{1, \nu}(x)\)#

Returns the Hankel function of the first kind, defined as \(\displaystyle H^{(1)}_{\nu}(x) = J_{\nu}(x) + i Y_{\nu}(x)\).

See also Wikipedia [1412], MathWorld [1013], NIST [466], BoostMath [121].

An example in C#, for real part only

var y = math53.bessel_j0(t);
var x = t;
var z = 0;

An example in C#, for imaginary part only

var z = -math53.bessel_y0(t);
var x = t;
var y = 0;

An example in C#, for real and imaginary part combined

var z = math53.bessel_j0(t);
var y = -math53.bessel_y0(t);
var x = t;

Some text

Path_Func_Hankel1_2Dx_a \(\quad\) Path_Func_Hankel1_2Dy_a \(\quad\) Path_Func_Hankel1_a

Left figure: Hankel function of the first kind \(H_{1, \nu}(x)\), real part only. Orthographic camera. Camera angles are \(\theta=120^\circ\) and \(\phi = 130^\circ\).

Middle figure: Hankel function of the first kind \(H_{1, \nu}(x)\), imaginary part only. Orthographic camera. Camera angles are \(\theta=120^\circ\) and \(\phi = 130^\circ\).

Right figure: Hankel function of the first kind \(H_{1, \nu}(x)\), as full 3D curve. Orthographic camera. Camera angles are \(\theta=120^\circ\) and \(\phi = 130^\circ\).

Hankel function of the second kind \(H_{2, \nu}(x)\)#

Returns the Hankel function of the second kind, defined as \(\displaystyle H^{(2)}_{\nu}(x) = J_{\nu}(x) - i Y_{\nu}(x)\).

See also Wikipedia [1412], MathWorld [1014], NIST [466], BoostMath [121].

An example in C#, for real part only

var y = math53.bessel_j0(t);
var x = t;
var z = 0;

An example in C#, for imaginary part only

var z = math53.bessel_y0(t);
var x = t;
var y = 0;

An example in C#, for real and imaginary part combined

var z = math53.bessel_j0(t);
var y = math53.bessel_y0(t);
var x = t;

Some text

Path_Func_Hankel2_2Dx_a \(\quad\) Path_Func_Hankel2_2Dy_a \(\quad\) Path_Func_Hankel2_a

Left figure: Hankel function of the second kind \(H_{2, \nu}(x)\), real part only. Orthographic camera. Camera angles are \(\theta=120^\circ\) and \(\phi = 130^\circ\).

Middle figure: Hankel function of the second kind \(H_{2, \nu}(x)\), imaginary part only. Orthographic camera. Camera angles are \(\theta=120^\circ\) and \(\phi = 130^\circ\).

Right figure: Hankel function of the second kind \(H_{2, \nu}(x)\), as full 3D curve. Orthographic camera. Camera angles are \(\theta=120^\circ\) and \(\phi = 130^\circ\).

Kelvin functions ber and bei#

Returns the Kelvin functions ber bei. See also Wikipedia [1499], MathWorld [1098], NIST [467].

The following conventions are used as in Maple (with \(a = \sqrt{2}/2\)):

\[\text{ber}(\nu, x) + i \text{bei}(\nu, x) = J_{\nu}(x(-a + i a))\]
\[\text{ber}(\nu, x) - i \text{bei}(\nu, x) = J_{\nu}(x(-a - i a))\]

An example in C#, for real part only

var a = math53.exp(t / math53.sqrt(2));
var y = math53.kelvin_ber(t) / a;
var x = t;
var z = 0;

An example in C#, for imaginary part only

var a = math53.exp(t / math53.sqrt(2));
var z = -math53.kelvin_bei(t) / a;
var x = t;
var y = 0;

An example in C#, for real and imaginary part combined

var a = math53.exp(t / math53.sqrt(2));
var z = math53.kelvin_ber(t) / a;
var y = -math53.kelvin_bei(t) / a;
var x = t;

Some text

Path_Func_KelvinBerBei_2Dx_a \(\quad\) Path_Func_KelvinBerBei_2Dy_a \(\quad\) Path_Func_KelvinBerBei_a

Left figure: Kelvin functions ber. Orthographic camera. Camera angles are \(\theta=120^\circ\) and \(\phi = 130^\circ\).

Middle figure: Kelvin function bei. Orthographic camera. Camera angles are \(\theta=120^\circ\) and \(\phi = 130^\circ\).

Right figure: Kelvin functions ber and bei, as full 3D curve. Orthographic camera. Camera angles are \(\theta=120^\circ\) and \(\phi = 130^\circ\).

Kelvin functions ker and kei#

Returns the Kelvin function ker. See also Wikipedia [1501], MathWorld [1100], NIST [467].

The following conventions are used as in Maple (with \(a = \sqrt{2}/2\)):

\[\text{ker}(\nu, x) + i \text{kei}(\nu, x) = e^{-i \nu \pi/2} K_{\nu}(x(a + i a))\]
\[\text{ker}(\nu, x) - i \text{kei}(\nu, x) = e^{i \nu \pi/2} K_{\nu}(x(a - i a))\]

An example in C#, for real part only

var a = math53.exp(t / math53.sqrt(2));
var y = math53.kelvin_ker(t) * a;
var x = t;
var z = 0;

An example in C#, for imaginary part only

var a = math53.exp(t / math53.sqrt(2));
var z = -math53.kelvin_kei(t) * a;
var x = t;
var y = 0;

An example in C#, for real and imaginary part combined

var a = math53.exp(t / math53.sqrt(2));
var z = math53.kelvin_ker(t) * a;
var y = -math53.kelvin_kei(t) * a;
var x = t;

Some text

Path_Func_KelvinKerKei_2Dx_a \(\quad\) Path_Func_KelvinKerKei_2Dy_a \(\quad\) Path_Func_KelvinKerKei_a

Left figure: Kelvin functions ker. Orthographic camera. Camera angles are \(\theta=120^\circ\) and \(\phi = 130^\circ\).

Middle figure: Kelvin function kei. Orthographic camera. Camera angles are \(\theta=120^\circ\) and \(\phi = 130^\circ\).

Right figure: Kelvin functions ker and kei, as full 3D curve. Orthographic camera. Camera angles are \(\theta=120^\circ\) and \(\phi = 130^\circ\).