[The Kelvin Functions: Ber, Bei, Ker, Kei]

Kelvin Functions and their Derivatives _________________

by Andrew C. Whyte, BSc, MSc, CEng, M.I.Mech.E.
© Copyright July 1998, January 2021
Web site: https://acwhyte.droppages.com


1.1 About Kelvin Functions
1.2 Why the Fourth Derivative?
1.3 About Schleicher Functions

2.1 The Power Series
2.2 The First Derivative
2.3 The Second Derivative
2.4 The Third Derivative
2.5 The Fourth Derivative
2.6 The Asymptotic Series




KELGEN-1 is a Kelvin Function Generator program that will calculate and plot Kelvin and Schleicher functions up to the 4th derivative

The program is public domain. You can download the program and documentation [0.6MB]. The README text file should be read. To run the program double click the file KELGEN (or KELGEN.EXE).

1.1 ABOUT KELVIN FUNCTIONS. Kelvin functions were defined by Lord Kelvin (William Thomson) of Largs in his presidential address to the Institution of Electrical Engineers in 1889 (ref. 1). Kelvin was describing the ohmic resistance of a wire with a current density distribution given by a relationship containing two functions Ber and Bei. The origins of the functions stem from the paper by Oliver Heaviside in 1884 (ref. 2). In this paper the solution for oscillatory currents include two functions defined as M and N which Kelvin subsequently defined as Ber and Bei respectively. Kelvin defined these functions by three letters for convenience in a similar way that we have Sin, Cos and Tan. The functions stand for: Bessel real and Bessel imaginary. F. W. Bessel being a German astronomer who was interested in the perturbation of planets. He is famous for his work in certain types of equations and functions known as Bessel equations and Bessel functions.

Closely associated with Ber and Bei are the complementary functions Ker and Kei defined by Alexander Russell in his paper of 1909 (ref. 3). The four functions Ber, Bei, Ker, and Kei, collectively are known as the Kelvin or Thomson functions. The functions are related to the zero order Bessel functions Jo(xÖi) and Ko(xÖi).


Jo(xÖi) = Ber(x) - iBei(x)

Ko(xÖi) = Ker(x) + iKei(x)

x is the argument of the function

i = Ö-1

and it is customary to omit the zero order subscript when referring to the Kelvin functions.

Although Kelvin was interested in applying the functions to an electrical problem, McLachlan (ref. 4) shows that there are a range of applications in acoustics, electrical, fluid and mechanical engineering for which Bessel functions can provide a solution. My own interest lies in mechanical engineering and in particular to developing AJAP1 and reference (6) to include a larger range of plate and shell applications including: cylinders with variable thickness, shallow spherical shells, circular flat plates on an elastic foundation, etc.

1.2 WHY THE FOURTH DERIVATIVE? Mechanical engineers are generally interested in obtaining internal loads (forces and moments) and deformations (deflections and rotations) of a structure (e.g. a cylinder, spherical shell , flat plate etc.) when subjected to a given set of external loads and boundary conditions. A knowledge of the internal loads allow the stresses in the structure to be calculated and these can be assessed for safety, against a set of rules such as a pressure vessel code. In some cases deformation is the limiting criterion rather than stress. e.g. bolted flanges have been known to leak because the flange and hub were not stiff enough, even though they met strength criteria.

As an example, if we consider a cylindrical water tank with variable wall thickness. This problem has been analysed by several investigators (ref. 8, 9 and 10). A solution for the rotation, moment and shear force requires successive differentiation starting from a knowledge of the deflection of the structure. The solution involves the Bessel equation of standard form with a parameter of unity.

[Cylindrical Water Tank with Variable Thickness]

h2d2z/dh2 + h dz/dh + (h2 - 1)z = 0

The solution of this equation is known and after some mathematics the radial deflection of the cylinder can be shown to be:

y = [C1 Ber'(x) + C2 Bei'(x) + C3 Ker'(x) + C4 Kei'(x)]/Öx

Where Ber'(x), Bei'(x), Ker'(x) and Kei'(x) are the first derivatives of the Kelvin functions and x is a real argument of the length x. i.e. x = 2lÖx. The terms C1 , C2 , C3 and C4 are constants that require to be determined from the boundary conditions for the particular problem being investigated.

Thus it can be seen that the solution for the radial deflection contains the first derivative of the Kelvin functions. The derivative dy/dx gives the rotation of the cylinder and hence contains the second derivative of the Kelvin functions. The meridional bending moment is obtained from Mx = -Ddy2/dx2 and hence contains the third derivative of the Kelvin functions. Finally the radial shear force Qx = dMx /dx and will contain the fourth derivative.

The above approach, with some modifications, can be used to obtain solutions for a range of mechanical engineering problems including: shallow spherical shells, conical shells, circular plates on an elastic foundation, nozzles in pressure vessels and heat exchanger tube sheets. References (8), (9), (10), (11), (13), (14), (15) and (16) provide examples of the solution to these problems.

1.3 ABOUT SCHLEICHER FUNCTIONS. Some references e.g. (9), (10), (14) and (15) make use of the Schleicher functions Z1 , Z2 , Z3 and Z4 . These functions were introduced by F. Schleicher (ref. 13). Note however that the various references use different notation and presentation of the functions. The relationship between the Schleicher and the Kelvin functions (and their derivatives) are as follows:

Z1 (x) = Ber(x)

Z2 (x) = -Bei(x)

Z3 (x) = -(2/p)Kei(x)

Z4 (x) = -(2/p)Ker(x)


2.1 THE POWER SERIES. There are many text that quote the Kelvin functions (or in the form of Schleicher functions) e.g. references (4), (5), (7), (9), (10), (13), (14), (15), (16), (17) and (18). Reference (5) by Watson is comprehensive though very mathematical. The text by McLachlan (ref. 4) is suitable for engineers and there are several interesting practical problems discussed. References (17) and (18) are also worth reading. The text of particular use to engineers interested in the stress analysis of plates and shells are references (7), (8), (9), (10), (11), (13), (14), (15) and (16). The notation and presentation used by the various references differ and this text is no different in this respect, so it is necessary to be careful when comparing the various text.

The functions are given by the following power series:

Ber(x) = 1 - x4/(24 2!2) + x8/(28 4!2) - x12/(212 6!2) + - . . .

Bei(x) = x2/(22 1!2) - x6/(26 3!2) + x10/(210 5!2) - + . . .

Kei(x) = -(p/4)Ber(x) - ln(gx/2)Bei(x) + x2f(1)/(22 1!2) - x6f(3)/(26 3!2) + x10f(5)/(210 5!2) - + . . .

Ker(x) = (p/4)Bei(x) - ln(gx/2)Ber(x) - x4f(2)/(24 2!2) + x8f(4)/(28 4!2) - x12f(6)/(212 6!2) + - . . .

where x is a positive real argument

ln is Loge

g = 1.781073 i.e. ln(g) = 0.577216 is Euler's constant.

f(1) = 1

f(2) = 1 + 1/2

f(3) = 1 + 1/2 + 1/3

f(4) = 1 + 1/2 + 1/3 + 1/4

f(5) = 1 + 1/2 + 1/3 + 1/4 + 1/5

f(6) = 1 + 1/2 + 1/3 + 1/4 + 1/5 + 1/6

Thumbnail views of plots of: Ber, Bei, Kei and Ker. Click view for a larger plot.

[Plot of Ber - click for a larger view] [Plot of Bei - click for a larger view] [Plot of Kei - click for a larger view] [Plot of Ker - click for a larger view]

2.2 THE FIRST DERIVATIVE. The first derivative can be obtained by a term by term differentiation of the power series in paragraph 2.1.

Ber'(x) = - x3/(23 1! 2!) + x7/(27 3! 4!) - x11/(211 5! 6!) + - . . .

Bei'(x) = x/(21 0! 1!) - x5/(25 2! 3!) + x9/(29 4! 5!) - + . . .

Kei'(x) = -(p/4)Ber'(x) - ln(gx/2)Bei'(x) - (1/x)Bei(x)

+ xf(1)/(21 0! 1!) - x5f(3)/(25 2! 3!) + x9f(5)/(29 4! 5!) - + . . .

Ker'(x) = (p/4)Bei'(x) - ln(gx/2)Ber'(x) - (1/x)Ber(x)

- x3f(2)/(23 1! 2!) + x7f(4)/(27 3! 4!) - x11f(6)/(211 5! 6!) + - . . .

Thumbnail views of plots of: Ber', Bei', Kei' and Ker'. Click view for a larger plot.

[Plot of Ber' - click for a larger view] [Plot of Bei' - click for a larger view] [Plot of Kei' - click for a larger view] [Plot of Ker' - click for a larger view]

2.3 THE SECOND DERIVATIVE. For the second derivative we can make use of the fact that the the functions satisfy a differential equation of the Bessel type. Hence we can write:

Ber''(x) = -Bei(x) - (1/x)Ber'(x)

Bei''(x) = Ber(x) - (1/x)Bei'(x)

Kei''(x) = Ker(x) - (1/x)Kei'(x)

Ker''(x) = -Kei(x) - (1/x)Ker'(x)

Thumbnail views of plots of: Ber'', Bei'', Kei'' and Ker''. Click view for a larger plot.

[Plot of Ber'' - click for a larger view] [Plot of Bei'' - click for a larger view] [Plot of Kei'' - click for a larger view] [Plot of Ker'' - click for a larger view]

2.4 THE THIRD DERIVATIVE. The third derivative is obtained by differentiating the equations in paragraph 2.3

Ber'''(x) = -Bei'(x) - (1/x)Ber''(x) + (1/x2)Ber'(x)

Bei'''(x) = Ber'(x) - (1/x)Bei''(x) + (1/x2)Bei'(x)

Kei'''(x) = Ker'(x) - (1/x)Kei''(x) + (1/x2)Kei'(x)

Ker'''(x) = -Kei'(x) - (1/x)Ker''(x) + (1/x2)Ker'(x)

Thumbnail views of plots of: Ber''', Bei''', Kei''' and Ker'''. Click view for a larger plot.

[Plot of Ber''' - click for a larger view] [Plot of Bei''' - click for a larger view] [Plot of Kei''' - click for a larger view] [Plot of Ker''' - click for a larger view]

2.5 THE FOURTH DERIVATIVE. The fourth derivative is obtained by differentiating the equations in paragraph 2.4

BerIV(x) = -Bei''(x) - (1/x)Ber'''(x) + (2/x2)Ber''(x) - (2/x3)Ber'(x)

BeiIV(x) = Ber''(x) - (1/x)Bei'''(x) + (2/x2)Bei''(x) - (2/x3)Bei'(x)

KeiIV(x) = Ker''(x) - (1/x)Kei'''(x) + (2/x2)Kei''(x) - (2/x3)Kei'(x)

KerIV(x) = -Kei''(x) - (1/x)Ker'''(x) + (2/x2)Ker''(x) - (2/x3)Ker'(x)

Thumbnail views of plots of: BerIV, BeiIV, KeiIV and KerIV. Click view for a larger plot.

[Plot of 4th derivative of Ber - click for a larger view] [Plot of 4th derivative of Bei - click for a larger view] [Plot of 4th derivative of Kei - click for a larger view] [Plot of 4th derivative of Ker - click for a larger view]

2.6 THE ASYMPTOTIC SERIES. The power series discussed in paragraphs 2.1 to 2.5 are applicable for small values of the argument x. With large values of the argument, typically x>6, it is appropriate to use the asymptotic series to represent the functions. There are several forms of presenting the asymptotic series ranging from the most basic first approximation (references 8, 9, and 10) through to formulas involving many series terms, e.g. Flügge (ref. 7). Two cases will be considered: case 1 the most basic approximation and case 2 the more complete series due to Russell (ref. 3).

Case 1. The most basic approximation generally considered sufficiently accurate for most engineering purposes, e.g. references (8), (9) and (10), is to use the following first term in the series.

Ber(x) {e(x/Ö2)/Ö(2px)}Cos(x/Ö2 - p/8)

Bei(x) {e(x/Ö2)/Ö(2px)}Sin(x/Ö2 - p/8)

Kei(x) -{Ö(p/2x)e(-x/Ö2)}Sin(x/Ö2 + p/8) or {Ö(p/2x)e(-x/Ö2)}Sin(-x/Ö2 - p/8)

Ker(x) {Ö(p/2x)e(-x/Ö2)}Cos(x/Ö2 + p/8) or {Ö(p/2x)e(-x/Ö2)}Cos(-x/Ö2 - p/8)

the first derivative becomes:

Ber'(x) {e(x/Ö2)/Ö(2px)}[Cos(x/Ö2 - p/8) - Sin(x/Ö2 - p/8)]/Ö2

- {e(x/Ö2)/Ö(2px)}Cos(x/Ö2 - p/8)/(2x)

Bei'(x) {e(x/Ö2)/Ö(2px)}[Cos(x/Ö2 - p/8) + Sin(x/Ö2 - p/8)]/Ö2

- {e(x/Ö2)/Ö(2px)}Sin(x/Ö2 - p/8)/(2x)

Kei'(x) {Ö(p/2x)e(-x/Ö2)}[Cos(x/Ö2 + p/8) - Sin(x/Ö2 + p/8)]/Ö2

- {e(x/Ö2)/Ö(2px)}Sin(x/Ö2 - p/8)/(2x)

Ker'(x) -{Ö(p/2x)e(-x/Ö2)}[Cos(x/Ö2 + p/8) + Sin(x/Ö2 + p/8)]/Ö2

- {e(x/Ö2)/Ö(2px)}Cos(x/Ö2 - p/8)/(2x)

It is customary to omit the third term (the one with (2x) in the denominator) so the first derivative becomes:

Ber'(x) {e(x/Ö2)/Ö(2px)}[Cos(x/Ö2 - p/8) - Sin(x/Ö2 - p/8)]/Ö2

Bei'(x) {e(x/Ö2)/Ö(2px)}[Cos(x/Ö2 - p/8) + Sin(x/Ö2 - p/8)]/Ö2

Kei'(x) {Ö(p/2x)e(-x/Ö2)}[Cos(x/Ö2 + p/8) - Sin(x/Ö2 + p/8)]/Ö2

Ker'(x) -{Ö(p/2x)e(-x/Ö2)}[Cos(x/Ö2 + p/8) + Sin(x/Ö2 + p/8)]/Ö2

and this can be simplified to:

Ber'(x) {e(x/Ö2)/Ö(2px)}Cos(x/Ö2 + p/8)

Bei'(x) {e(x/Ö2)/Ö(2px)}Sin(x/Ö2 + p/8)

Kei'(x) {Ö(p/2x)e(-x/Ö2)}Sin(x/Ö2 - p/8) or -{Ö(p/2x)e(-x/Ö2)}Sin(-x/Ö2 + p/8)

Ker'(x) -{Ö(p/2x)e(-x/Ö2)}Cos(x/Ö2 - p/8) or -{Ö(p/2x)e(-x/Ö2)}Cos(-x/Ö2 + p/8)

Case 2. If the additional terms quoted by Russell (ref. 3) are included we have a more complete asymptotic series as follows:

Ber(x)= {e(a)/Ö(2px)}Cos(b)

Bei(x)= {e(a)/Ö(2px)}Sin(b)

Kei(x)= {Ö(p/2x)e(e)}Sin(y)

Ker(x)= {Ö(p/2x)e(e)}Cos(y)


a = x/Ö2 + 1/(8Ö2x) - 25/(384Ö2x3) -13/(128x4) - . . .

e = -x/Ö2 - 1/(8Ö2x) + 25/(384Ö2x3) -13/(128x4) + . . .

b = x/Ö2 - p/8 - 1/(8Ö2x) - 1/(16x2) -25/(384Ö2x3) + . . .

y = -x/Ö2 - p/8 + 1/(8Ö2x) - 1/(16x2) +25/(384Ö2x3) + . . .

the first derivative becomes:

Ber'(x)= {a' - 1/(2x)}Ber(x) - {b'}Bei(x)

Bei'(x)= {b'}Ber(x) + {a' - 1/(2x)}Bei(x)

Kei'(x)= {y'}Ker(x) + {e' - 1/(2x)}Kei(x)

Ker'(x)= {e' - 1/(2x)}Ker(x) - {y'}Kei(x)


a' = 1/Ö2 - 1/(8Ö2x2) + 75/(384Ö2x4) + 52/(128x5)

e' = -1/Ö2 + 1/(8Ö2x2) - 75/(384Ö2x4) + 52/(128x5)

b' = 1/Ö2 + 1/(8Ö2x2) + 1/(8x3) + 75/(384Ö2x4)

y' = -1/Ö2 - 1/(8Ö2x2) + 1/(8x3) - 75/(384Ö2x4)

The higher derivatives of the asymptotic series are calculated by the relationships discussed previously in paragraphs 2.3 to 2.5.


In order to test the results the following steps have been taken:

(1) The results of the program KELGEN-1 have been compared against the quoted tables of results in references 8, 9, and 10. This was done by starting with a low number of terms in the power series and then increasing the number of terms until the results from KELGEN-1 and references 8, 9, and 10 were identical (or virtually identical) over the quoted range of argument X from 0 to 6. It was found that 10 terms in the power series were required to achieve this.

(2) A facility was incorporated into the program to plot the percentage difference (Mode Diff) between the results for terms in the power series and results for terms in the power series minus one. i.e. a plot of:

%Diff = (Result, for terms in series - Result, for terms in series-1)/Result, for terms in series

The %Diff between 10 and 9 terms in the series is so small that it plots as zero (or virtually zero) over the range of argument X = 0 to 6.

(3) A facility was incorporated into the program to plot the percentage error (Mode Error) between the asymptotic series and the power series. i.e. a plot of:

%Error = (Result, for asymptotic series - Result, for power series)/Result, for asymptotic series

By inspection it was found that Russell's asymptotic series gave a smoother transition from the power to the asymptotic series and the percentage error was much reduced compared to the basic simplified asymptotic series. Hence Russell's asymptotic series (the case 2 series) is recommended and made the program default for large values of the argument.

All these findings can be checked by the user by running the program, altering the defaults to suit and comparing results.


1. Thomson, W. Ether, Electricity, and Ponderable Matter. Presidential Address to the Institution of Electrical Engineers, 10th January 1889 and addition of 13th May 1890. Mathematical & Physical Papers, Sir William Thomson, Volume III, Cambridge University Press 1890.

2. Heaviside, O. The Inductance of Currents in Cores. The Electrician, Volume XII, 3rd May 1884.

3. Russell, A. The Effective Resistance and Inductance of a Concentric Main, and Methods of Computing the Ber and Bei and Allied Functions. Philosophical Magazine and Journal of Science. 6 Series, Volume XVII, Number C, April 1909.

4. McLachlan, N.W. Bessel Functions for Engineers. 2nd Edition, Oxford Clarendon Press 1955.

5. Watson, G. N. A Treatise on the Theory of Bessel Functions. 2nd Edition, Cambridge 1962.

6. Whyte, A. C. Basic Discontinuity Analysis of Multishell Axisymmetric Junctions. Self published 1994 including the BASIC program AJAP1 (Axisymmetric Junction Analysis Program Version 1).

7. Flügge, W. Four Place Tables of Transcendental Functions. Pergamon Press 1954.

8. Turner, C. E. Introduction to Plate and Shell Theory. Longmans 1965.

9. Hetényi, M. Beams on Elastic Foundation. The University of Michigan Press 1974.

10. Timoshenko, S.P. and Woinowsky-Krieger, S. Theory of Plates and Shells. 2nd Edition, McGraw- Hill 1959.

11. Flügge, W. Stresses in Shells. 2nd edition, Springer-Verlag 1973.

12. Schleicher, F. Kreisplatten auf elastischer Unterlage. Berlin 1926.

13. Jawad, M. H. and Farr, J. R. Structural Analysis & Design of Process Equipment. 2nd Edition, Wiley Interscience 1989.

14. Singh, K. P. and Soler, A. I. Mechanical Design of Heat Exchangers. Arcturus Publishers 1984.

15. Murray, N. W. and Stuart, D. G. Behaviour of large taper hub flanges. Symposium on Pressure Vessel Research Towards Better Design. I.Mech.E. 1961.

16. Leckie, F. A. and Penny, R. K. Solutions for the Stresses at Nozzles in Pressure Vessels. Welding Research Council Bulletin No. 90, 1963.

17. Bowman, F. Introduction to Bessel Functions. Dover Publications, 1958.

18. Farrell, O. J. and Ross, B. Solved Problems: Gamma and Beta Functions, Legendre Polynomials, Bessel Functions. MacMillan, 1963.