3D visualization of special functions

Like the original handbook, the DLMF is designed primarily for the use of scientists. A secondary, but important goal is to reach a much broader audience by making aspects of the DLMF accessible to educators and students. An obvious way to support these dual goals is to create 3D visualizations that are both exciting and informative. Fortunately, the graphical representations of many special functions are so complex and interesting that by designing visualizations that illustrate the features of interest to scientists we automatically produce displays that grab the attention of less technically oriented viewers. In any case, the development of the display requires close coordination with an expert in the field of special functions. Currently, we are concentrating on visualizations for the chapter on Airy functions, written by Prof. Frank Olver, one of the authors of the original handbook. The Airy functions, Ai and Bi, occur in quantum mechanics, in the study of wave diffraction, electromagnetism, and other areas of physics and engineering, and arise as solutions of the second order differential equation

\begin{displaymath}\frac{d^2w}{dz^2} = zw.\end{displaymath}

To obtain reliable data for the visualizations we used a double precision Fortran routine for the calculation of Airy functions written by D.E.Amos [3]. We wrote a C program that accepted this input data and generated a VRML file as output. In many cases we found that the graphs had to be scaled very carefully in order to make interesting features visible. However, for some functions, the variation in values over the domain was so extreme that simply adjusting the scaling was not enough. A 3D clipping algorithm could potentially help with the scaling, but to date we have been unsuccessful in finding suitable routines in the literature or in available packages. We first tried resetting values above a certain height to the same constant as was done by Thompson [4], but that produced the misleading ``table" effect shown in Figure 1.

Figure: $\vert\mbox{Bi}'(z)\vert$, Modulus of the derivative of Bi($z$).
\includegraphics[width=4.5in]{bip0shelf}

We also tried suppressing the plotting of points where the function value was greater than a specified constant, but that produced plots with jagged edges that were equally misleading. Finally, we decided to use information from a contour plot of the function to restrict the domain to points where the function values were less than or equal to a specified constant. The contour information was used to construct the boundary of the domain, and a boundary fitted mesh was then placed over the domain as shown in Figure 2.

Figure 2: Contour mesh.
\includegraphics[width=3.5in]{grid}

By computing the Airy function only at values on the mesh, we obtained a smoothly clipped surface plot as shown in Figure 3.

Figure: Clipped version of $\vert\mbox{Bi}'(z)\vert$.
\includegraphics[width=4.5in]{bip0_2}

Interactive 3D Visualization of Mathematical Functions Using VRML
Qiming Wang, Bonita Saunders Information Technology Laboratory National Institute of Standards and Technology
Translated by Bruce R Miller on 2000-11-08
Comments? DLMF_feedback@nist.gov
Digital Library of Mathematical Functions