This is a visualization of the three-dimensional slope field of a second-order differential equation:

Right-Hand Side ( z=y )    

For those without virtual reality devices, click on the visualization and use WASD keys for movement and rotation; the cursor keys allow movement up and down. This will at least provide a feel for the visualization, but it is much more interesting in virtual reality. The meaning of “right-hand side” is explained below.

A slope field is a way of displaying the general behavior of a differential equation. For a first order equation

y=f (x,y)

normalized vectors of the form [1, f(x,y)] are plotted in a regular grid over the xy-plane. These indicate the slopes of the tangents to particular solutions passing throughout the various points of the grid, letting one see at a glance the general behavior of all possible solutions. Here is an example using f=x2-x-2 along with three particular solutions:

To extend this idea to a second order equation

y =f(x,y, y)

first introduce an intermediate variable z=y to get the second-order linear system

y=z z=f (x,y,z)

and then display normalized vectors of the form [1,z, f(x,y,z )] in a regular grid over the three-dimensional xyz-space. While this can be done in a browser window as above, the result is much more impressive and informative in virtual reality.

When entering a custom right-hand side of the original second-order equation, remember to use the letter z for the first derivative of the solution. Normal JavaScript expression rules apply. The special functions of Math are also available for exploring nonlinear equations. The default setting of zero corresponds to straight-line solutions in the slope space.

The values on the coordinate axes are those of the current position of the user. Activating a trigger button on the virtual reality controller will add a numerical integration in both directions starting from a point just in front of the user, which helps with interpreting the slope field in terms of a particular solution.

Uploaded 2019.11.16 — Updated 2020.03.27