1D Wave Equation Implicit and Von Neumann Stability Analysis


The wave equation 1D acoustic and variable velocity $ V_j$ is defined as:

\begin{eqnarray}
\frac{\partial^2 U}{\partial t ^2} = V^2 \frac{\partial^2 U}{\partial x ^2}
\label{imp1}
\end{eqnarray}

And the implicit difference schema can be written as bellow for the unknown time $n+1$ (using the times $n$ and $n-1$ known):

\begin{eqnarray}
U_j^{n+1}  =  \left(\frac{\Delta t  V_j^n}{\Delta s}\right)^2 \left(  U_{j+1}^{n+1} - 2 U_j^{n+1} + U_{j-1}^{n+1}  \right) + 2 U_j^n - U_j^{n-1}
\label{imp2}
\end{eqnarray}
where $\Delta x = \Delta s $. \\
or as:
\begin{equation}
\left(U_j^{n-1} - 2 U_j^n \right) r_j^{2} =   U_{j+1}^{n+1} - (2 + r_j^2) U_j^{n+1} + U_{j-1}^{n+1}
\end{equation}

With $r_j = \frac{\Delta s}{\Delta t  V_j^n} $ \\

Applying the boundary condition $U_0^t=U_{N-1}^t=0$, the linear system of equations, in matrix form, for every unknown $ U_j^{n+1} $ for $j \in [0, N]$ being $NDs$ the 1D domain for the solution in $x$ is given by:

\begin{eqnarray}
\begin{pmatrix}
-(2+r_1^2)   &      1      &             &            &            \\
      1      & -(2+r_2^2)  &      1      &            &            \\
             &      1      & -(2+r_3^2)  &     1      &            \\
             &             &      1      & -(2+r_4^2) &    1       \\  
             &             &             &     1      & -(2+r_5^2) \\  
\end{pmatrix}
\begin{pmatrix}
 \ U_{1}^{n+1} \ \\
 \ U_{2}^{n+1} \ \\
 \ U_{3}^{n+1} \ \\
 \ U_{4}^{n+1} \ \\
 \ U_{5}^{n+1} \ \\
\end{pmatrix}
=
\begin{pmatrix}
\left(U_j^{n-1} - 2 U_j^n \right) r_1^{2} \\
\left(U_j^{n-1} - 2 U_j^n \right) r_2^{2} \\
\left(U_j^{n-1} - 2 U_j^n \right) r_3^{2} \\
\left(U_j^{n-1} - 2 U_j^n \right) r_4^{2} \\
\left(U_j^{n-1} - 2 U_j^n \right) r_5^{2} \\
\end{pmatrix}
\end{eqnarray}

Simplified to the case where $N=7$ and $ U_{6} = U_{0} = 0 $

Von Neumann Stability Analysis

Since $ u(x,t) = e^{i(wt+kx)} $ is a solution for (\ref{imp1}) the discrete schema can be written as:

\begin{eqnarray}
u(x_j,t_n) &=& e^{i(wt_n+kx_j)} \nonumber \\
&=& e^{iwn\Delta t} e^{ikj\Delta s} \nonumber \\
&=& \epsilon^n e^{ikj\Delta s}
\label{imp3}
\end{eqnarray}


Where $\epsilon = e^{iw \Delta t} $ and $ i = \sqrt{-1} $ .
To maintain stability we should make sure that $ \epsilon \leq 1 $ not growing exponentially with increasing time steps. So applying (\ref{imp3}) in (\ref{imp2}) we can analyse the growth factor $\epsilon $ .

\begin{equation}
 U_j^{n+1}  =  \left( \frac{\Delta t  V_j^n}{\Delta s} \right) ^2 \left(  U_{j+1}^{n+1} - 2 U_j^{n+1} + U_{j-1}^{n+1}  \right) + 2 U_j^n - U_j^{n-1} \nonumber
\end{equation}
\begin{equation}
\begin{split}
\epsilon^{n+1} e^{ikj\Delta s}  &=  r^2 \left(  \epsilon^{n+1} e^{ik(j+1)\Delta s}  - 2 \epsilon^{n+1} e^{ikj\Delta s} + \epsilon^{n+1} e^{ik(j-1)\Delta s}  \right) \\
&\quad + 2 \epsilon^n e^{ikj\Delta s}  - \epsilon^{n-1} e^{ikj\Delta s} \nonumber
\end{split}
\end{equation}
\begin{eqnarray}
 1 = r^2 (e^{ik\Delta s} -2 + e^{-ik\Delta s}) + 2 \epsilon^{-1} - \epsilon^{-2} \nonumber \\
\epsilon^{-2} - 2 \epsilon^{-1} -  r^2 (e^{ik\Delta s} -2 + e^{-ik\Delta s}) + 1 = 0  \nonumber \\
\epsilon^{-2} - 2 \epsilon^{-1} + 4 r^2 \sin^2 \left( k \Delta s / 2 \right) + 1 = 0
 \label{imp4}
\end{eqnarray}

Where $ r = \left( \frac{\Delta t  V_j^n}{\Delta s} \right) $

At equation (\ref{imp4}) we can substitute $ \phi = \epsilon^{-1} $ turning it to a second degree bellow:

\begin{eqnarray}
\phi^2 - 2 \phi +4 r^2 \sin^2 \left(k\Delta s/2 \right) +1 = 0  \nonumber \\
\phi^2 - 2 \phi + c = 0  \nonumber
\end{eqnarray}

With:
 $$ c = 1 +4 r^2 \sin^2 \left(k\Delta s/2 \right) $$

Has roots $ \phi^{'} $ and $ \phi^{''} $ as bellow. Replacing $c$ also.

\begin{eqnarray}
 &=& \frac{2 \pm \sqrt{4 - 4c}}{2} = 1 \pm \sqrt{1-c} \nonumber \\
 &=& 1 \pm \sqrt{-4 r^2 \sin^2 \left(k\Delta s/2 \right) } \nonumber \\
 &=& 1 \pm i \ 2 r \sin \left(k\Delta s/2 \right)  \nonumber \\
 \phi^{'} &=& 1 + i \ 2 r \sin \left(k\Delta s/2 \right)   \nonumber \\
 \phi^{''} &=& 1 - i \ 2 r \sin \left(k\Delta s/2 \right)   \nonumber
\end{eqnarray}

Analyzing the modulus, since $  \phi^{'} $ and $  \phi^{''} $ are conjugate pairs of the same complex number the modulus is the same for both.
We get:

$$ \| \phi \| = \| \phi^{'} \| = \| \phi^{''} \| = \sqrt{1+ 4 r^2 \sin ^2 \left(k\Delta s/2 \right)}$$

Going back to $\epsilon$ and getting its modulus we get :

\begin{eqnarray}
 \| \epsilon^{'} \| &=& \| \epsilon^{''} \| = \frac{1}{\| \phi  \|} \nonumber \\
 &=& \frac{1}{\sqrt{1+ 4 r^2 \sin ^2 \left(k\Delta s/2 \right)}}
 \label{imp5}
\end{eqnarray}

Looking at (\ref{imp5}) we can see that always $ r^2 > 0 $ and $ sin^2(x) \in \ [0,1] $ so:

$$ \| \epsilon \| \leq 1 \ \ \forall \ r, \ k,\ \Delta s$$

It shows that FTCS in (\ref{imp2}) is unconditionally stable

Comments