Numerov's method

From testwiki
Revision as of 06:05, 23 October 2022 by imported>Citation bot (Add: issue. | Use this bot. Report bugs. | Suggested by Whoop whoop pull up | #UCB_webform 923/3485)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Numerov's method (also called Cowell's method) is a numerical method to solve ordinary differential equations of second order in which the first-order term does not appear. It is a fourth-order linear multistep method. The method is implicit, but can be made explicit if the differential equation is linear.

Numerov's method was developed by the Russian astronomer Boris Vasil'evich Numerov.

The method

The Numerov method can be used to solve differential equations of the form

d2ydx2=g(x)y(x)+s(x).

In it, three values of yn1,yn,yn+1 taken at three equidistant points xn1,xn,xn+1 are related as follows:

yn+1(1+h212gn+1)=2yn(15h212gn)yn1(1+h212gn1)+h212(sn+1+10sn+sn1)+𝒪(h6),

where yn=y(xn), gn=g(xn), sn=s(xn), and h=xn+1xn.

Nonlinear equations

For nonlinear equations of the form

d2ydx2=f(x,y),

the method gives

yn+12yn+yn1=h212(fn+1+10fn+fn1)+𝒪(h6).

This is an implicit linear multistep method, which reduces to the explicit method given above if f is linear in y by setting f(x,y)=g(x)y(x)+s(x). It achieves order-4 accuracy Template:Harv.

Application

In numerical physics the method is used to find solutions of the unidimensional Schrödinger equation for arbitrary potentials. An example of which is solving the radial equation for a spherically symmetric potential. In this example, after separating the variables and analytically solving the angular equation, we are left with the following equation of the radial function R(r):

ddr(r2dRdr)2mr22(V(r)E)R(r)=l(l+1)R(r).

This equation can be reduced to the form necessary for the application of Numerov's method with the following substitution:

u(r)=rR(r)R(r)=u(r)r,
dRdr=1rdudru(r)r2=1r2(rdudru(r))ddr(r2dRdr)=dudr+rd2udr2dudr=rd2udr2.

And when we make the substitution, the radial equation becomes

rd2udr22mr2(V(r)E)u(r)=l(l+1)ru(r),

or

22md2udr2+(V(r)+22ml(l+1)r2)u(r)=Eu(r),

which is equivalent to the one-dimensional Schrödinger equation, but with the modified effective potential

Veff(r)=V(r)+22ml(l+1)r2=V(r)+L22mr2,L2=l(l+1)2.

This equation we can proceed to solve the same way we would have solved the one-dimensional Schrödinger equation. We can rewrite the equation a little bit differently and thus see the possible application of Numerov's method more clearly:

d2udr2=2m2(EVeff(r))u(r),
g(r)=2m2(EVeff(r)),
s(r)=0.

Derivation

We are given the differential equation

y(x)=g(x)y(x)+s(x).

To derive the Numerov's method for solving this equation, we begin with the Taylor expansion of the function we want to solve, y(x), around the point x0:

y(x)=y(x0)+(xx0)y(x0)+(xx0)22!y(x0)+(xx0)33!y(x0)+(xx0)44!y(x0)+(xx0)55!y′′′′′(x0)+𝒪(h6).

Denoting the distance from x to x0 by h=xx0, we can write the above equation as

y(x0+h)=y(x0)+hy(x0)+h22!y(x0)+h33!y(x0)+h44!y(x0)+h55!y′′′′′(x0)+𝒪(h6).

If we evenly discretize the space, we get a grid of x points, where h=xn+1xn. By applying the above equations to this discrete space, we get a relation between the yn and yn+1:

yn+1=yn+hy(xn)+h22!y(xn)+h33!y(xn)+h44!y(xn)+h55!y′′′′′(xn)+𝒪(h6).

Computationally, this amounts to taking a step forward by an amount h. If we want to take a step backwards, we replace every h with h and get the expression for yn1:

yn1=ynhy(xn)+h22!y(xn)h33!y(xn)+h44!y(xn)h55!y′′′′′(xn)+𝒪(h6).

Note that only the odd powers of h experienced a sign change. By summing the two equations, we derive that

yn+12yn+yn1=h2y'n+h412y'n+𝒪(h6).

We can solve this equation for yn+1 by substituting the expression given at the beginning, that is y'n=gnyn+sn. To get an expression for the y'n factor, we simply have to differentiate y'n=gnyn+sn twice and approximate it again in the same way we did this above:

y'n=d2dx2(gnyn+sn),
h2y'n=gn+1yn+1+sn+1+2gnyn2sngn1yn1+sn1+𝒪(h4).

If we now substitute this to the preceding equation, we get

yn+12yn+yn1=h2(gnyn+sn)+h212(gn+1yn+1+sn+1+2gnyn2sngn1yn1+sn1)+𝒪(h6),

or

yn+1(1+h212gn+1)2yn(15h212gn)+yn1(1+h212gn1)=h212(sn+1+10sn+sn1)+𝒪(h6).

This yields the Numerov's method if we ignore the term of order h6. It follows that the order of convergence (assuming stability) is 4.

References