next up previous
Next: 4.3 Boundary Value Problems Up: 4.2 Initial Value Problems Previous: 4.2.5 Symplectic Algorithms


4.2.6 Numerov's Method

Mostly used for a certain kind of initial value problems (IVPs) that arise when boundary value problems (BVPs) are rewritten as IVPs. Many BVP has the general form

\begin{displaymath}
\frac{d^{2}y}{dx^{2}}=-g(x)y+s(x)
\end{displaymath}

with given boundary values $y(x_{1})$ and $y(x_{2})$.

Example: one-dimensional Poisson equation

\begin{displaymath}
\frac{d^{2}\phi}{dx^{2}}= -\rho(x)
\end{displaymath}

with $\phi$ given at $x_{1}$ and $x_{2}$. Thus $g(x)=0$ and $s(x)=-\rho(x)$.

Let us assume we have, instead of $y(x_{1})$ and $y(x_{2})$, the full set of initial values $y(x_{1})$ and $y'(x_{1})$.

Divide the interval $[x_{1},x_{2}]$ into sub-intervals of length $\Delta x$ and at each intermediate point $x_{n}$ expand $y(x)$ into a power series. Adding the Taylor formulae for $y_{n+1}$ and $y_{n-1}$ we find

\begin{displaymath}
y_{n+1}=2y_{n}-y_{n-1}+{y_{n}}''(\Delta x)^{2}+y_{n}^{(4)}
\frac{(\Delta x)^{4}}{12}+O[(\Delta x)^{6}]
\end{displaymath}

Inserting ${y_{n}}'' = -g_{n}\, y_{n}+s_{n}$ we have

\begin{displaymath}
y_{n+1}=2y_{n}-y_{n-1}+(\Delta x)^{2}[-g_{n}y_{n}+s_{n}]
+\frac{(\Delta x)^{4}}{12}y_{n}^{(4)} +O[(\Delta x)^{6}]
\end{displaymath}

The fourth derivative $y^{(4)}$ is approximated by
$\displaystyle y_{n}^{(4)}$ $\textstyle =$ $\displaystyle \left. \frac{d^{2}y''}{dx^{2}} \right\vert _{n} =
\left. \frac{d^...
...^{2}} \right\vert _{n} \approx \frac{1}{(\Delta x)^{2}}
\delta_{n}^{2}(-gy+s) =$  
  $\textstyle =$ $\displaystyle \frac{1}{(\Delta x)^{2}}
[-g_{n+1}y_{n+1}+2g_{n}y_{n}-g_{n-1}y_{n-1} +$  
    $\displaystyle \hspace{144pt}+s_{n+1}-2s_{n}+s_{n-1}]$  

In this way we find Numerov's formula
$\displaystyle y_{n+1}[1+\frac{(\Delta x)^{2}}{12}g_{n+1}]$ $\textstyle =$ $\displaystyle 2y_{n}[1-\frac{5}{12}(\Delta x)^{2}g_{n}]-
y_{n-1}[1+\frac{(\Delta x)^{2}}{12}g_{n-1}]+$  
    $\displaystyle +\frac{(\Delta x)^{2}}{12}
[s_{n+1}+10s_{n}+s_{n-1}]+O[(\Delta x)^{6}]$  



EXERCISE: Write a code that permits to solve a given second-order equation of motion by various algorithms. Apply the program to problems of point mechanics and explore the stabilities and accuracies of the diverse techniques.

next up previous
Next: 4.3 Boundary Value Problems Up: 4.2 Initial Value Problems Previous: 4.2.5 Symplectic Algorithms
Franz J. Vesely Oct 2005
See also:
"Computational Physics - An Introduction," Kluwer-Plenum 2001