Documentation Center

  • Trials
  • Product Updates


Bessel function of third kind (Hankel function)


H = besselh(nu,K,Z)
H = besselh(nu,Z)
H = besselh(nu,K,Z,1)


The differential equation

where ν is a real constant, is called Bessel's equation, and its solutions are known as Bessel functions. Jν(z) and Jν(z) form a fundamental set of solutions of Bessel's equation for noninteger ν. Yν(z) is a second solution of Bessel's equation—linearly independent of Jν(z)—defined by

The relationship between the Hankel and Bessel functions is

where Jν(z) is besselj, and Yν(z) is bessely.


H = besselh(nu,K,Z) computes the Hankel function where K = 1 or 2, for each element of the complex array Z. If nu and Z are arrays of the same size, the result is also that size. If either input is a scalar, besselh expands it to the other input's size.

H = besselh(nu,Z) uses K = 1.

H = besselh(nu,K,Z,1) scales by exp(-i*Z) if K = 1, and by exp(+i*Z) if K = 2.


expand all

Modulus and Phase of Hankel Function

This example generates the contour plots of the modulus and phase of the Hankel function $H_0^{(1)}(z)$ shown on page 359 of Abramowitz and Stegun, Handbook of Mathematical Functions [1].

Create a grid of values for the domain.

[X,Y] = meshgrid(-4:0.025:2,-1.5:0.025:1.5);

Calculate the Hankel function over this domain and generate the modulus contour plot.

H = besselh(0,1,X+1i*Y);
contour(X,Y,abs(H),0:0.2:3.2), hold on

In the same figure, add the contour plot of the phase.

contour(X,Y,(180/pi)*angle(H),-180:10:180); hold off



See Also

| | |

Was this topic helpful?