1
$\begingroup$

I am doing a Von Neumann analysis on a staggered finite difference scheme (for Maxwell's Equations).

The finite difference scheme is:

$$ \mathbf{u}_v|^{n+2}_{i,j} - \mathbf{u}_v|^{n}_{i,j} = - A \frac{\lambda_y}{2} \left[ (\mathbf{u}_v|^{n-1}_{i+1,j+1} - \mathbf{u}_v|^{n-1}_{i+1,j-1}) + (\mathbf{u}_v|^{n-1}_{i-1,j+1} - \mathbf{u}_v|^{n-1}_{i-1,j-1}) \right] + B \frac{\lambda_x}{2} \left[ (\mathbf{u}_v|^{n-1}_{i+1,j+1} - \mathbf{u}_v|^{n-1}_{i-1,j+1}) + (\mathbf{u}_v|^{n-1}_{i+1,j-1} - \mathbf{u}_v|^{n-1}_{i-1,j-1}) \right] \\+ \lambda_y^2 (\mathbf{u}_v|^{n}_{i,j+2} - 2\mathbf{u}_v|^{n}_{i,j} + \mathbf{u}_v|^{n}_{i,j-2}) \\+ \lambda_x^2 (\mathbf{u}_v|^{n}_{i+2,j} - 2\mathbf{u}_v|^{n}_{i,j} + \mathbf{u}_v|^{n}_{i-2,j}) $$

where the matrices $\mathbf{u}_v$, $A$ and $B$ are:

$$ A = \begin{bmatrix} 0 & 1 & 0\\ 1 & 0 & 0 \\ 0 & 0 & 0 \end{bmatrix}, B = \begin{bmatrix} 0 & 0 & 1\\ 0 & 0 & 0 \\ 1 & 0 & 0 \end{bmatrix}, \mathbf{u}_v = \begin{bmatrix} u_1\\ u_2 \\ u_3 \end{bmatrix} $$

and $\lambda_x = \frac{\Delta t}{\Delta x}, \lambda_y = \frac{\Delta t}{\Delta y}$

The values of $\mathbf{u}_1|^n_{i,j}$ are computed with even values of $i,j,n$, and the values of $\mathbf{u}_2|^n_{i,j}, \mathbf{u}_3|^n_{i,j}$ are computed with the odd values of $i,j,n$. The caveat is that you need to know more values for initial conditions.

By applying the Fourier inversion formula, and assuming for simplicity that $\Delta x = \Delta y$ we get (see Strikwerda, Finite Difference Schemes and Partial Differential Equations 2ed.):

$$ G^3 + 4 \{ \lambda^2[\sin^2(\theta_x) + \sin^2(\theta_y)] - 1 \} G = 4i\lambda[A \sin(\theta_y)\cos(\theta_x) - B \sin(\theta_x)\cos(\theta_y)], $$

where $G$ is the amplification matrix. I think I have understood properly the concept of Von Neumann analysis, and I want to derive sufficient stability conditions for $\lambda$.

The problem is that there are too many possible cases to consider for each branch of the roots of the polynomial and for each value of $\theta_x$ and $\theta_y$, and though the explicit value of $G$ may be very hard to find, some good estimates for $\lambda$ may be possible.

$\endgroup$
5
  • $\begingroup$ That doesn't look like a "leap-frog" scheme to me. The values on the right hand side ought to all be at time step $n+1$, but instead they are at steps $n-1$ and $n$. $\endgroup$ Commented Jul 30, 2020 at 7:14
  • $\begingroup$ The scheme is leap-frog because $\mathbf{u}_1|^n$ are computed with the odd values of $n$ and $\mathbf{u}_2|^n, \mathbf{u}_3|^n$ are computed with even values of $n$. I think I could have explained this better. $\endgroup$
    – Barros
    Commented Jul 30, 2020 at 12:42
  • $\begingroup$ There, I have edited the question... $\endgroup$
    – Barros
    Commented Jul 30, 2020 at 12:45
  • $\begingroup$ I suspect that it is still not correct. And it doesn't behave the way you claim, at least to my understanding. Additionally, what your comment describes would often be referred to as a "staggered" scheme, but not as leapfrog (which means something quite specific). $\endgroup$ Commented Jul 30, 2020 at 12:49
  • $\begingroup$ I understand. Maybe for correctness we can call this simply a staggered scheme. $\endgroup$
    – Barros
    Commented Jul 30, 2020 at 12:58

0

You must log in to answer this question.