Kelvin Functions
Kelvin Functions
1
The solution to the Bessel equation x w xw ix w
2 2
0 + , where i = 1, may be written
in terms of modified Bessel functions as
w x c I x i c K x i ( ) ( ) ( ) +
1 0 2 0
The Kelvin functions, ber( ) x , bei( ) x , ker( ) x and kei( ) x , may be defined by their relations to
the modified Bessel functions I x
0
( ) and K x
0
( ) as given by
I x i x i x
0
( ) ( ) + ber bei( ) and K x i x i x
0
( ) ( ) + ker kei( )
Thus it follows that w x ( ) may be written as
w x c x i x c x i x ( ) ( ) ( ) + [ ] + + [ ]
1 2
ber bei( ) ker kei( )
where the four Kelvin functions are real functions. These Kelvin functions may be evaluated
from the following infinite series:
ber( )
( )
[( )!]
x
x
n
n n
n
n
1
2 2
4
4 2
0
(1)
bei( )
( )
[( )!]
x
x
n
n n
n
n
+
+
+
1
2 2 1
4 2
4 2 2
0
(2)
ker( ) ( ) ln ( )
( )
[( )!]
x x
x
x
x
n
m
n n
n
m
n
n
+
j
(
,
\
,
(
,
,
]
]
]
+
4 2
1
2 2
1
4
4 2
1
2
1
bei ber (3)
kei ber bei ( ) ( ) ln ( )
( )
[( )!]
x x
x
x
x
n
m
n n
n
m
n
n
+
j
(
,
\
,
(
,
,
]
]
]
4 2
1
2 2 1
1
4 2
4 2 2
1
2 1
1
(4)
where is Eulers constant given by Abramowitz and Stegun
2
as
+ + + + +
,
,
]
]
]
lim ln( ) .
m m
m 1
1
2
1
3
1
4
1
0 577215664901532860606512 K
Abramowitz and Stegun tabulate the above four Kelvin functions for 0 5 x . These Kelvin
functions have the following characteristics:
ber( ) x : ber( ) 0 = 1 and oscillates with increasing amplitude as x increases
bei( ) x : bei( ) 0 = 0 and oscillates with increasing amplitude as x increases
ker( ) x : ker( ) 0 = and oscillates with decreasing amplitude as x increases
kei( ) x : kei( ) 0 = / 4 and oscillates with decreasing amplitude as x increases
1
This documentation of Kelvin functions and KelvinFunctions.LIB were provided by G. E. Myers, Department
of Mechanical Engineering, University of Wisconsin-Madison, 2003.
2
Abramowitz, M. and I. A. Stegun (eds.): Handbook of Mathematical Functions, Applied Mathematics Series
55, National Bureau of Standards, 1964. [Dover, 1965].
Kelvin functions 2
The first derivatives of ber( ) x , bei( ) x , ker( ) x and kei( ) x are called ber( ) x , bei ( ) x ,
ker ( ) x and kei( ) x , respectively. These functions, found by differentiating (1) through (4),
are given by
ber
( )
( )
( )!( )!
x
x
n n
n n
n
n
1
2 2 1 2
4 1
4 1
1
(5)
bei
+
+
+
( )
( )
( )!( )!
x
x
n n
n n
n
n
1
2 2 2 1
4 1
4 1
0
(6)
ker ( ) ( ) ln ( ) ( )
( )
( )!( )!
+
j
(
,
\
,
(
,
,
]
]
]
+
x x
x
x
x
x
x
n n
m
n n
n
m
n
n
4 2
1 1
2 2 1 2
1
4 1
4 1
1
2
1
bei ber ber (7)
kei ber bei bei +
j
(
,
\
,
(
,
,
]
]
]
( ) ( ) ln ( ) ( )
( )
( )!( )!
x x
x
x
x
x
x
n n
m
n n
n
m
n
n
4 2
1 1
2 2 2 2 1
1
4 3
4 3
1
2 1
1
(8)
Rather than tabulating these four derivatives, Abramowitz and Stegun tabulate ber
1
( ) x ,
bei ( )
1
x , ker
1
( ) x and kei
1
( ) x which are related to ber( ) x , bei ( ) x , ker ( ) x and kei( ) x as
follows:
2ber = ber bei ( )
1
( ) ( ) x x x 2bei = ber bei ( )
1
( ) ( ) x x x +
2ker = ker kei ( )
1
( ) ( ) x x x 2kei = ker kei ( )
1
( ) ( ) x x x +
The EES user library contains KelvinFunctions.LIB. The suite of eight functions in
KelvinFunctions.LIB are used to calculate values of ber( ) x , bei( ) x , ker( ) x , kei( ) x , ber( ) x ,
bei ( ) x , ker ( ) x and kei( ) x . These values are calculated from (1) through (8), respectively.
The following EES program will evaluate ker( ) x and ker ( ) x for x = 2:
x = 2
a = Kelvin_ker(x)
b = Kelvin_ker`(x)
The solution is given as
a = 0.04166 b = 0.1066 x = 2.0