Sturm’s separation theorem says that the zeros of independent solutions to an equation of the form
alternate. That is, between any two consecutive zeros of one solution, there is exactly one zero of the other solution. This is an important theorem because a lot of differential equations of this form come up in applications.
If we let p(x) = 0 and q(x) = 1, then sin(x) and cos(x) are independent solutions and we know that their zeros interlace. The zeros of sin(x) are of the form nπ, and the zeros of cos(x) are multiples of (n + 1/2)π.
What’s less obvious is that if we take two different linear combinations of sine and cosine, as long as they’re not proportional, then their zeros interlace as well. For example, we could take f(x) = 3 sin(x) + 5 cos(x) and g(x) = 7 sin(x) – 11 cos(x). These are also linearly independent solutions to the same differential equation, and so the Sturm separation theorem says their roots have to interlace.
If we take p(x) = 1/x and q(x) = 1 – (ν/x)² then our differential equation becomes Bessel’s equation, and the Bessel functions Jν and Yν are independent solutions. Here’s a little Python code to show how the zeros alternate when ν = 3.
import matplotlib.pyplot as plt from scipy import linspace from scipy.special import jn, yn x = linspace(4, 30, 100) plt.plot(x, jn(3, x), "-") plt.plot(x, yn(3, x), "-.") plt.legend(["$J_3$", "$Y_3$"]) plt.axhline(y=0,linewidth=1, color="k") plt.show()