next up previous [pdf]

Next: Discretization of SPML Up: Discretization Previous: Discretization

Higher-order approximation of staggered-grid finite difference

To approximate the 1st-order derivatives as accurate as possible, we express it in the following

\begin{displaymath}\begin{split}\frac{\partial f}{\partial x}=&a_1\frac{f(x+\Del...
...x+5\Delta x/2)-f(x-5\Delta x/2)}{\Delta x}+\cdots\\ \end{split}\end{displaymath} (32)

where $ c_i=a_i/(2i-1)$ . Substituting the $ f(x+h)$ and $ f(x-h)$ with (29) for $ h=\Delta x/2,3\Delta x/2, \ldots$ results in

\begin{displaymath}\begin{split}\frac{\partial f}{\partial x}=&c_1\left(\Delta x...
...4+\cdots)\frac{\partial^5 f}{\partial x^5}+\cdots\\ \end{split}\end{displaymath} (33)

Thus, taking first $ N$ terms means

\begin{equation*}\left\{ \begin{split}a_1+a_2+a_3+\cdots+a_N&=1\\ a_1+3^2a_2+5^2...
...a_2+5^{2N-2}a_3+\cdots)+(2N-1)^{2N-2}a_N&=0\\ \end{split} \right.\end{equation*} (34)

In matrix form,

$\displaystyle \underbrace{ \begin{bmatrix}1 & 1 & \ldots & 1\\ 1^2 & 3^2 & \ldo...
...= \underbrace{ \begin{bmatrix}1\\ 0\\ \vdots\\ 0\\ \end{bmatrix} }_{\textbf{b}}$ (35)

The above matrix equation is Vandermonde-like system: $ \textbf{V} \textbf{a}=\textbf{b}$ , $ \textbf{a}=(a_1, a_2,\ldots, a_N)^T$ . The Vandermonde matrix

$\displaystyle \textbf{V} = \begin{bmatrix}1 & 1 & \ldots & 1\\ x_1 & x_2 & \ldo...
... & \ddots & \vdots\\ x_1^{N-1} & x_2^{N-1} & \ldots & x_N^{N-1}\\ \end{bmatrix}$ (36)

in which $ x_i=(2i-1)^2$ , has analytic solutions. $ \textbf{V} \textbf{a}=\textbf{b}$ can be solved using the specific algorithms, see Bjorck (1996). And we obtain

$\displaystyle \frac{\partial f}{\partial x}=\frac{1}{\Delta x}\sum_{i=1}^N c_i(f(x+i\Delta x/2)-f(x-i\Delta x/2)+O(\Delta x^{2N})$ (37)

The MATLAB code for solving the 2N-order finite difference coefficients is provided in the following.

\begin{lstlisting}
function c=staggered_fdcoeff(NJ)N=NJ/2;
x=zeros(N,1);
b=zer...
...1
b(i)=b(i)-b(i+1);
end
end
for k=1:N
c(k)=b(k)/(2*k-1);
end
\end{lstlisting}

In general, the stability of staggered-grid difference requires that

$\displaystyle \Delta t\max(v)\sqrt{\frac{1}{\Delta x^2}+\frac{1}{\Delta z^2}} \leq \frac{1}{\sum_{i=1}^N \vert c_i\vert}.$ (38)

Define $ C=\frac{1}{\sum_{i=1}^N \vert c_i\vert}$ . Then, we have

\begin{displaymath}
\begin{cases}
N=1, & C=1\\
N=2, & C=0.8571\\
N=3, & C=0.8054\\
N=4, & C=0.7774\\
N=5, & C=0.7595\\
\end{cases}\end{displaymath}

In the 2nd-order case, numerical dispersion is limited when

$\displaystyle \max(\Delta x, \Delta z)<\frac{\min (v)}{10f_{\max}}.$ (39)

The 4th-order dispersion relation is:

$\displaystyle \max(\Delta x, \Delta z)<\frac{\min (v)}{5f_{\max}}.$ (40)


next up previous [pdf]

Next: Discretization of SPML Up: Discretization Previous: Discretization

2021-08-31