This tutorial text is for those who use special functions in their work or study but are not mathematicians. Traditionally, special functions arise as solutions to certain linear second-order differential equations with variable coefficients—equations having applications in physics, chemistry, engineering, etc. This book introduces these differential equations, their solutions, and their applications in optical science and engineering. In addition to the common special functions, some less common functions are included. Also covered are Zernike polynomials, which are widely used in characterizing the quality of any imaging system, as well as certain integral transforms not usually covered in elementary texts. The book is liberally illustrated, and almost every chapter includes a set of Python 3.x codes that illustrate the use of these functions. Readers with a modest introduction to programming concepts will be able to modify these sample codes as needed.
"This is a monumental work that will be useful to people in many fields outside the optical domain. I have never seen all of this material in such a clear handbook-type format!"
--Alexander A. (Sandy) Sawchuk, Ph.D., University of Southern California
According to a quote attributed to Albert Einstein,
“Formal symbolic representation of physical phenomena takes its rightful second place in a world where flowers and beautiful women abound.”
That being said, the language of the optical scientist/engineer is mathematical! We only symbolically represent the beauty of optical phenomena.
It also happens that we primarily deal with second-order differential equations that describe these phenomena. In many cases of interest, these second-order differential equations take certain standard forms, usually depending on the coordinate system used. These standard forms have as solutions what are known as special functions. You are familiar with elementary functions such as trigonometric functions, exponential functions, etc. These are the second stage--Bessel functions, Hermite functions, and the like. In fact, special functions have even entered the cultural zeitgeist in an episode of the popular CBS sitcom, The Big Bang Theory, (season 5, episode 12 “The Bus Pants Utilization,” where spherical Hankel functions are mentioned), where the main characters develop an app for smartphones that will solve differential equations in terms of special functions.
So, what do you need to get going? A basic course in calculus including, if possible, an introduction to linear differential equations (don’t worry if you are not familiar with the Frobenius method; that is described in the appendix), a familiarity with solution by separation of variables, vectors, simple trigonometry, and basic ideas of complex numbers. You will also need some elementary knowledge of optics and electrodynamics, and some knowledge of quantum mechanics will be helpful. That’s it! We have avoided complicated material such as complex variable theory, residue theorem, etc. If you are looking for rigid formalism, existence proofs, theorems, mathematical rigor and the like, you are out of luck with this book. You are better off going to another, more sophisticated text, some of which are listed in the Bibliography. We follow Richard Feynman’s advice:
“However the emphasis should be somewhat more on how to do the mathematics quickly and easily and what formulas are true, rather than the mathematician’s interest in methods of rigorous proof.”
(He was commenting on operational calculus developed by Oliver Heaviside).
Now, this is not a traditional textbook. We have tried to explain the ideas as much as we can. However, as you know by now, the only way to master physics or math is to do problems. This book does not have exercises for you to do; the main reason for this is that there are many, many books that have umpteen unsolved problems for you. We wanted to write a “readable” book so that you can get a conceptual understanding, quickly. We have also tried to give examples from a wide range of optical science and engineering. We highly recommend that you consult the references and the bibliography for more information.
We have used Python code throughout the text. Python is a public domain scripting language that is quite easy to learn and is very powerful. If you are not familiar with it, Appendix B will give you a brief introduction. We assume that you are computer literate and that you are familiar with general concepts in programming. We encourage you to run the code(s) in the chapters. All codes provided in the book stick to the ‘Minimum Working Example’ types. You are encouraged to modify these and play with them to discover for yourself the properties of these special functions. This is an integral part of this book.
We hope you enjoy this book. We certainly did enjoy working on it. We appreciate your feedback so that if there is a second edition we can incorporate your suggestions.
Finally, it is said that a book does not get finished, it escapes from the authors. That is a truism in this case. There are many aspects and applications we would have/should have included; however, there are various constraints (time, book length, energy, to name a few) that have forced us to restrict the book to its current content. To our mind, the book is good. May you, the reader, learn and enjoy!
L. Srinivasa Varadharajan