BESSEL_HANKEL1
The Hankel function of the first kind, H_v^{(1)}(z), combines Bessel functions as H_v^{(1)} = J_v + iY_v and represents outward-propagating cylindrical waves.
Because this function is generally complex-valued, the result is returned as a 2D array containing real and imaginary parts.
H_v^{(1)}(z) = J_v(z) + iY_v(z)
Excel Usage
=BESSEL_HANKEL1(v, z)
v(float, required): Order of the Hankel function (dimensionless).z(float, required): Argument where the function is evaluated (dimensionless).
Returns (list[list]): One-row array with real and imaginary parts as [[real, imag]].
Example 1: Zero order at unit argument
Inputs:
| v | z |
|---|---|
| 0 | 1 |
Excel formula:
=BESSEL_HANKEL1(0, 1)
Expected output:
| Result | |
|---|---|
| 0.765198 | 0.088257 |
Example 2: First order at moderate argument
Inputs:
| v | z |
|---|---|
| 1 | 2 |
Excel formula:
=BESSEL_HANKEL1(1, 2)
Expected output:
| Result | |
|---|---|
| 0.576725 | -0.107032 |
Example 3: Half order at positive argument
Inputs:
| v | z |
|---|---|
| 0.5 | 3 |
Excel formula:
=BESSEL_HANKEL1(0.5, 3)
Expected output:
| Result | |
|---|---|
| 0.0650082 | 0.456049 |
Example 4: Second order at larger argument
Inputs:
| v | z |
|---|---|
| 2 | 5 |
Excel formula:
=BESSEL_HANKEL1(2, 5)
Expected output:
| Result | |
|---|---|
| 0.0465651 | 0.367663 |
Python Code
from scipy.special import hankel1 as scipy_hankel1
def bessel_hankel1(v, z):
"""
Compute the cylindrical Hankel function of the first kind and return real and imaginary parts.
See: https://docs.scipy.org/doc/scipy/reference/generated/scipy.special.hankel1.html
This example function is provided as-is without any representation of accuracy.
Args:
v (float): Order of the Hankel function (dimensionless).
z (float): Argument where the function is evaluated (dimensionless).
Returns:
list[list]: One-row array with real and imaginary parts as [[real, imag]].
"""
try:
v = float(v)
z = float(z)
result = scipy_hankel1(v, z)
return [[float(result.real), float(result.imag)]]
except Exception as e:
return f"Error: {str(e)}"Online Calculator
Order of the Hankel function (dimensionless).
Argument where the function is evaluated (dimensionless).