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
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
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
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\)):
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
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\)):
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
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\).














