If we use the boundary conditions \(u(0) = u(L) = 0\) then the explicit method of the previous section has the form
\begin{equation*}
u_{i,j+1}= r u_{i-1,j}+ (1 - 2r) u_{i,j}+ r u_{i+1,j}\quad\text{for}\quad 1 \le i \le m-1\quad\text{and}\quad 0 \le j \le n-1 \text{,}
\end{equation*}
where \(u_{0,j}= 0\) and \(u_{m,j}=0\text{.}\) This is equivalent to the matrix equation
\begin{equation}
\ub_{j+1}= A \ub_{j}\text{,}\tag{4.7.1}
\end{equation}
where \(\ub_{j}\) is the column vector \((u_{1,j}, u_{2,j}, \ldots, u_{m,j})'\) representing the state at the \(j\)th time step and \(A\) is the matrix
\begin{equation}
A = \left( \begin{array}{ccccc}1-2r & r & 0 & \cdots & 0 \\ r & 1-2r & r & \ddots & \vdots \\ 0 & \ddots & \ddots & \ddots & 0 \\ \vdots & \ddots & r & 1-2r & r \\ 0 & \cdots & 0 & r & 1-2r\end{array} \right)\text{.}\tag{4.7.2}
\end{equation}
Unfortunately, this matrix can have a property which is very bad in this context. Namely, it can cause exponential growth of error unless \(r\) is small. To see how this happens, suppose that \(\Ub_{j}\) is the vector of correct values of \(u\) at time step \(t_{j}\) and \(\Eb_{j}\) is the error of the approximation \(\ub_{j}\text{,}\) then
\begin{equation*}
\ub_{j} = \Ub_{j} + \Eb_{j}\text{.}
\end{equation*}
From
(4.7.1), the approximation at the next time step will be
\begin{equation*}
\ub_{j+1}= A \Ub_{j} + A \Eb_{j}\text{,}
\end{equation*}
and if we continue for \(k\) steps,
\begin{equation*}
\ub_{j+k}= A^{k} \Ub_{j} + A^{k} \Eb_{j}\text{.}
\end{equation*}
The problem with this is the term
\(A^{k} \Eb_{j}\text{.}\) This term is exactly what we would do in the power method for finding the eigenvalue of
\(A\) with the largest absolute value. If the matrix
\(A\) has eigenvalues with absolute value greater than
\(1\text{,}\) then this term will grow exponentially.
Figure 4.7.1 shows the largest absolute value of an eigenvalue of
\(A\) as a function of the parameter
\(r\) for various sizes of the matrix
\(A\text{.}\) As you can see, for
\(r> 1/2\) the largest absolute eigenvalue grows rapidly for any
\(m\) and quickly becomes greater than
\(1\text{.}\)