%%\documentclass[handout]{beamer}
%\documentclass[aspectratio=169,13pt]{beamer}

%\input{./preamble}

\subtitle{Linear Systems}
\date{}
\begin{document}

\begin{frame}
  \titlepage
\end{frame}

\section{Vector and Matrix Norms}

\begin{frame}{Vector Norms}

\urcornerlinkdemo{01-error-and-fp}{Vector Norms}

\begin{itemize}
\item {\bf Properties of vector norms}
  \mdcond{
    \begin{align*}
    ||\B x|| &\geq 0 \\
    ||\B x|| &= 0  \quad\Leftrightarrow \quad\B x = \B 0 \\
    ||\alpha \B x|| &= |\alpha|\cdot ||\B x|| \\
    ||\B x + \B y|| &\leq ||\B x|| + ||\B y||\quad \text{(\coloremph{triangle inequality}) implies continuity}
    \end{align*}
    }
\item {\bf A norm is uniquely defined by its unit sphere:}
  \mdcond{
    Surface defined by space of vectors $\mathbb{V}\subset \mathbb{R}^n$ such that $\forall \B x\in\mathbb{V}, ||\B x||=1$
  }
\item {\bf $p$-norms}
  \mdcond{
    $||\B x||_p = \bigg(\sum_{i} |x_i|^p\bigg)^{1/p}$
    \begin{itemize}
    \sitem $p=1$ gives sum of absolute values of entry (unit sphere is diamond-like)
    \sitem $p=\infty$ gives maximum entry in absolute value (unit sphere is box-like)
    \sitem $p=2$ gives Euclidean distance metric (unit sphere is spherical)
    \end{itemize}
  }

\end{itemize}

\end{frame}

\begin{frame}{Inner-Product Spaces}

\begin{itemize}
\item {\bf Properties of inner-product spaces}:
%
%  \lgcond{
    Inner products $\langle \B x, \B y \rangle$ must satisfy
    \begin{align*}
    \langle \B x, \B x\rangle  &\geq 0 \\
    \langle \B x, \B x\rangle &= 0  \quad\Leftrightarrow \quad\B x = \B 0 \\
    \langle \B x, \B y \rangle & =\langle \B y, \B x \rangle \\
    \langle \B x, \B y + \B z \rangle & =\langle \B x, \B y \rangle + \langle \B x, \B z \rangle\\
    \langle \alpha \B x, \B y \rangle & =\alpha \langle \B x, \B y \rangle
    \end{align*}
%  }

\item {\bf Inner-product-based vector norms}

\lgcond{
The $p=2$ vector norm is the Eucledian inner-product norm,
  $$||\B x||_2=\sqrt{\B x^\T \B x}$$
and due to Cauchy-Schwartz inequality $|\langle \B x, \B y\rangle|\leq \sqrt{\langle \B x, \B x\rangle\cdot \langle \B y, \B y\rangle}$,
  $$|\B x^T\B y| \leq ||\B x||_2||\B y||_2.$$
  Other inner-products can be expressed as $\langle \B x, \B y \rangle=\B x^\T\B A\B y$ where $\B A$
  is symmetric positive definite, yielding norms $||\B x||_{\B A} = \sqrt{\B x^\T \B A \B x}$
}

\end{itemize}
\end{frame}

\begin{frame}{Matrix Norms}

\urcornerlinkdemo{02-linear-systems}{Matrix norms}

\begin{itemize}
\item {\bf Properties of matrix norms}:
  %\lgcond{
    \begin{align*}
    ||\B A|| &\geq 0 \\
    ||\B A|| &= 0  \quad\Leftrightarrow \quad\B A = \B 0 \\
    ||\alpha \B A|| &= |\alpha|\cdot ||\B A|| \\
    ||\B A + \B B|| &\leq ||\B A|| + ||\B B||\quad \text{(\coloremph{triangle inequality})}
    \end{align*}
   % }
\item {\bf Frobenius norm}:
    \smcond{
      $$||\mathbf{A}||_F=\bigg(\sum_{i,j} a_{ij}^2\bigg)^{1/2}$$
    }
\item {\bf Operator/induced/subordinate matrix norms}:

\lgcond{
  For any vector norm $||\cdot ||$, the induced matrix norm is
  \[||\B A|| = \max_{\B x\neq \B 0} ||\B A \B x||/||\B x|| = \max_{||\B x||=1} ||\B A \B x||\]

}

\end{itemize}
\end{frame}

\begin{frame}{Induced Matrix Norms}

\begin{itemize}
\item {\bf Interpreting induced matrix norms}:
  \lgcond{
  A matrix is uniquely defined with respect to a norm by a unit-ball, which is the space of vectors $\B y = \B A\B x$ for all $\B x$ on the unit-sphere of the norm.

  $$||\B A||_{p}=\max_{||\B x||_p=1} ||\B A \B x||_p$$ is the maximum possible $p$-norm
  \coloremph{amplification} due to application of $\B A$
%(radius of unit-sphere enclosing unit-ball)

  $$1/||\B A^{-1}||_{p}=\min_{||\B x||_p=1} ||\B A \B x||_p$$ is the maximum possible $p$-norm
  \coloremph{reduction} due to application of $\B A$
%(radius of unit-sphere enclosed by unit-ball)
  }
\item {\bf General induced matrix norms}:
  \lgcond{
  $$||\B A||_{mp}=\max_{||\B x||_p=1} ||\B A \B x||_m$$
  typically $m=p$ so we write $||\B A||_{p}$ and almost always we have $p\in\{1,2,\infty\}$.
  (Computing the matrix norm for certain choices of $m\neq p$ is NP-complete.)
  }

\end{itemize}
\end{frame}

\section{Matrix Condition Number}

\begin{frame}{Matrix Condition Number}

\dblurcornerlinkdemo{02-linear-systems}{Conditioning of 2x2 Matrices}{02-linear-systems}{Condition number visualized}

\begin{itemize}
\item {\bf Definition}: $\kappa(\B A) = ||\B A|| \cdot||\B A^{-1}||$ is the ratio between the shortest/longest distances from the unit-ball center to any point on the surface.
\mitem {\bf Intuitive derivation}:
\begin{align*}
\kappa(\B A) &= \max_{\text{inputs}} \quad \max_{\text{perturbations in input}}\left|\frac{\text{relative perturbation in output}}{\text{relative perturbation in input}}\right|
\end{align*}
since a matrix is a linear operator, we can decouple its action on
the input $\B x$ and the perturbation $\B{\delta x}$ since $\B A(\B x +\B{\delta x}) = \B A \B x + \B A \B{\delta x}$, so
%&= \left|\frac{\max_{\text{perturbations in input}}\text{relative perturbation growth}}{\max_{\text{inputs}}\text{relative input reduction}}\right| \\
\begin{align*}
\kappa(\B A) &= \left|\frac{\overbrace{\max_{\text{perturbations in input}}\text{relative perturbation growth}}^{||\B A||}}{\underbrace{\max_{\text{inputs}} \text{relative input reduction}}_{1/||\B A^{-1}||}}\right|
\end{align*}
\end{itemize}
\end{frame}

\begin{frame}{Matrix Conditioning}

\begin{itemize}
\item The matrix condition number $\kappa(\B A)$ is the ratio between the max and min distance from the surface to the center of the unit ball transformed by $\kappa(\B A)$:
\lgcond{
\begin{itemize}
\item The max distance to center is given by the vector maximizing $\max_{||\B x||=1} ||\B A\B x||_2$.
\sitem The min distance to center is given by the vector minimizing $\min_{||\B x||=1} ||\B A\B x||_2 = 1/(\max_{||\B x||=1} ||\B A^{-1}\B x||_2)$.
\sitem Thus, we have that $\kappa(\B A) = ||\B A||_2||\B A^{-1}||_2$
\end{itemize}
}
\item The matrix condition number bounds the worst-case amplification of error in a matrix-vector product:
  \lgcond{
  Consider $\B y + \B{\delta y}= \B A (\B x + \B{\delta x})$, assume $||\B x||_2=1$
  \begin{itemize}
  \mitem In the worst case, $||\B y||_2$ is minimized, that is $||\B y||_2 = 1/||\B A^{-1}||_2$
  \mitem In the worst case, $||\B{\delta y}||_2$ is maximized, that is $||\B{\delta y}||_2 = ||\B A||_2||\B{\delta y}||_2$
  \mitem So $||\B{\delta y}||_2/||\B{y}||_2$ is at most $\kappa(\B A)||\B{\delta x}||_2/||\B{x}||_2$
  \end{itemize}
  }

\end{itemize}

\end{frame}

\begin{frame}{Norms and Conditioning of Orthogonal Matrices}

\begin{itemize}
\item {\bf Orthogonal matrices}:
  \mdcond{
  A matrix $\B Q$ is orthogonal, if its square and its columns are orthonormal,
  %\[ \B Q =\begin{bmatrix}\B {q_1} & \cdots & \B{q_2}\end{bmatrix}, \quad \langle \B{q_i},\B{q_j}\rangle =\delta_{i,j} = \begin{cases} 1 & : i=j \\ 0 & :i\neq j \end{cases}\]
  or equivalently $\B Q^\T= \B Q^{-1}$.
  }
\item {\bf Norm and condition number of orthogonal matrices}:
  \smcond{}
  \lgcond{
  For any $||\B v||_2=1$,
  \begin{align*}
    ||\B Q\B v||_2 &= \bigg( \Big\langle\B v^\T \B Q^\T,  \B{Q} \B v\Big\rangle\bigg)^{1/2}
                   = \bigg( \B v^\T \B Q^\T  \B{Q} \B v\bigg)^{1/2}  =\bigg( \B v^\T \B v\bigg)^{1/2} \\
                   &= ||\B v||_2
  \end{align*}
  Consequently, $||\B Q||_2=||\B Q^{-1}||_2 = \kappa(\B Q) = 1$.

  \smallskip
  $\B Q \B v$ expresses $\B v$ in a coordinate system whose axes
  are columns of $\B Q^T$
  }

\end{itemize}

\end{frame}

\section{Singular Value Decomposition}

\begin{frame}{Singular Value Decomposition}

\begin{itemize}
\item {\bf The singular value decomposition (SVD)}:

  \lgcond{
    We can express \coloremph{any} matrix $\B A$ as
    $$\B A = \B U \B \Sigma \B V^\T$$
    where $\B U$ and $\B V$ are orthogonal, and $\B \Sigma$ is square nonnegative and diagonal,
    \[\B \Sigma = \begin{bmatrix} \sigma_\text{max} & & \\ & \ddots &\\& & \sigma_\text{min}\end{bmatrix}\]
    \coloremph{Any matrix is diagonal when expressed as an operator mapping vectors from a coordinate
    system given by $\B V$ to a coordinate system given by $\B U^\T$}.
  }
  \lgcond{}

\end{itemize}
\end{frame}

\begin{frame}{Norms and Conditioning via SVD}

\urcornerlinkinclass{inclass-svdnorm}{Singular Value Decomposition and Norms}

\begin{itemize}
\item {\bf Norm and condition number in terms of singular values}:

  \lgcond{
    When multiplying a vector by matrix $\B A = \B U \B \Sigma \B V^\T$
    \begin{itemize}
    \mitem Multiplication by $\B V^\T$ changes coordinate systems, leaving the norm unchanged
    \mitem Multiplication by $\B U$ changes coordinate systems, leaving the norm unchanged
    \end{itemize}
    \medskip
    so, only multiplication by $\B \Sigma$ has an effect on the vector norm
    \begin{itemize}
    \mitem Note that $||\B \Sigma||_2=\sigma_\text{max}$, $||\B \Sigma^{-1}||_2=1/\sigma_\text{min}$, so
    \[\kappa(\B A) =\kappa(\B \Sigma)=\frac{\sigma_\text{max}}{\sigma_\text{min}}\]
    \end{itemize}
  }
  \lgcond{}
\end{itemize}
\end{frame}

\section{Perturbation Analysis}

\begin{frame}{Conditioning of Linear Systems}

\begin{itemize}
\item {\bf Lets now return to formally deriving the conditioning of solving $\B A \B x = \B b$}:

  \lgcond{
  Consider a perturbation to the right-hand side (input) $\B {\hat{b}} = \B b + \B{\delta b}$
  \begin{align*}
  \B A \B{\hat{x}} &= \B{\hat{b}} \\
  \B A (\B x  +\B{\delta x}) &= \B{b} + \B{\delta b} \\
  \B A\B{\delta x} &= \B{\delta b}
  \end{align*}
  we wish to bound the size of the relative perturbation to the output $||\B{\delta x}||/||\B{x}||$ with respect to the size of the relative perturbation the the input $||\B{\delta b}||/||\B{b}||$
  \begin{align*}
  \B{\delta x} &= \B A^{-1}\B{\delta b} \\
  \frac{||\B{\delta x}||}{||\B{x}||} &= \frac{||\B A^{-1}\B{\delta b}||}{||\B{x}||}
  \leq  \frac{||\B A^{-1}||\cdot ||\B{\delta b}||}{||\B{x}||}
%  \frac{||\B{\delta b}||}{||\B{b}||} =  \frac{||\B A\B{\delta x}||}{||\B{b}||} \leq  \frac{||\B A||\cdot ||\B{\delta x}||}{||\B{b}||}
%  \frac{||\B{\delta b}||}{||\B{b}||} =  \frac{||\B A\B{\delta x}||}{||\B{b}||} \leq  \frac{||\B A||\cdot ||\B{\delta x}||}{||\B{b}||}
  \end{align*}
  we can use that $||\B{x}|| \geq ||\B{b}||/\sigma_\text{max}= ||\B{b}||/||\B{A}||$ so
  \begin{align*}
  \frac{||\B{\delta x}||}{||\B{x}||} \leq  \underbrace{||\B A||\cdot ||\B A^{-1}||}_{\kappa(\B A)}\cdot \frac{||\B{\delta b}||}{||\B{b}||} = \frac{\sigma_\text{max} ||\B{\delta b}||}{\sigma_\text{min} ||\B{b}||}
  \end{align*}
  }
  \lgcond{}
\end{itemize}
\end{frame}

\begin{frame}{Conditioning of Linear Systems II}

\begin{itemize}
\item {\bf Consider perturbations to the input coefficients $\B {\hat{A}} = \B{A} + \B{\delta A}$}:

  \lgcond{
  In this case we solve the perturbed system
  \begin{align*}
  \B{\hat{A}} \B{\hat{x}} &= \B{b} \\
  \B A \B x  +\B{\delta \B A} \B x &= \B{b} - \B{\hat{A}} \B{\delta x} \\
  \B{\delta A}\B x &=  -\B{\hat{A}} \B{\delta x} \approx - \B{A} \B{\delta x}
  \end{align*}
  we wish to bound the size of the relative perturbation to the output $||\B{\delta x}||/||\B{x}||$ with respect to the size of the relative perturbation the the input $||\B{\delta A}||/||\B{A}||$
  \begin{align*}
  \B{\delta x} &= -\B A^{-1}\B{\delta A}\B{x} \\
  ||\B{\delta x}|| &= ||\B A^{-1}\B{\delta A}\B{x}|| \leq ||\B A^{-1}||\cdot ||\B{\delta A}|| \cdot ||\B{x}|| \\
  \frac{||\B{\delta x}||}{||\B{x}||} &\leq \underbrace{||\B A^{-1}||\cdot ||\B {A}||}_{\kappa(\B A)} \cdot \frac{||\B{\delta A}||}{||\B A||}
  \end{align*}
  }
  \lgcond{
  }
\end{itemize}
\end{frame}

\section{Algorithms for Simple Linear Systems}

\begin{frame}[fragile]{Solving Basic Linear Systems}

\begin{itemize}
\item Solve $\B D \B x = \B b$ if $\B D$ is diagonal

    \smcond{$x_i = b_i/d_{ii}$ with total cost $O(n)$}

\item Solve $\B Q \B x = \B b$ if $\B Q$ is orthogonal

    \smcond{$\B x= \B Q^\T \B b$ with total cost $O(n^2)$}

\item Given SVD $\B A = \B U \B \Sigma \B V^T$, solve $\B A \B x = \B b$

    \mdcond{
    \begin{itemize}
    \item Compute $\B z = \B U^T\B b$
    \item Solve $\B \Sigma \B y = \B z$ (diagonal)
    \item Compute $\B x = \B V \B x$
    \end{itemize}
    }

\end{itemize}
\end{frame}

\begin{frame}{Solving Triangular Systems}

\urcornerlinkdemo{02-linear-systems}{Coding back-substitution}

\begin{itemize}
\item {\bf $\B L \B x = \B b$ if $\B L$ is lower-triangular is solved by forward substitution:}
    \filufil{
    \begin{alignat*}{4}
    l_{11}x_1 &= b_1 && &&x_{1} &&= b_1/l_{11} \\
    l_{21}x_1 + l_{22}x_2 &=b_2 && \quad\Rightarrow \quad&& x_{2} &&= (b_2-l_{21}x_1)/l_{22} \\
    l_{31}x_1 + l_{32}x_2 + l_{33}x_3 &=b_3 && && x_{3} &&= (b_3-l_{31}x_1-l_{32}x_2)/l_{33} \\
          &\ \ \vdots && &&  && \ \ \vdots
    \end{alignat*}
    }{
    \begin{alignat*}{4}
    l_{11}x_1 &= b_1 && &&x_{1} &&= \quad\quad\quad  \quad\quad\quad\quad\quad\quad\\
    l_{21}x_1 + l_{22}x_2 &=b_2 && \quad\Rightarrow \quad&& x_{2} &&= \hfill \\
    l_{31}x_1 + l_{32}x_2 + l_{33}x_3 &=b_3 && && x_{3} &&= \hfill  \\
          &\ \ \vdots && &&  && \ \ \vdots
    \end{alignat*}
  }
\item {\bf Algorithm can also be formulated recursively by blocks:}

  \lgcond{
    \[\blomat{l} \begin{bmatrix} x_1 \\ \B{x_2} \end{bmatrix} = \begin{bmatrix} b_1 \\ \B{b_2}\end{bmatrix}\]
    $x_1=b_1/l_{11}$, then solve recursively for $\B{x_2}$ in $\B{L_{22}}\B{x_2} = \B{b_2}-\B{l_{21}}x_1$.
  }
\end{itemize}
\end{frame}

\begin{frame}{Solving Triangular Systems}

\begin{itemize}

\item {\bf Existence of solution to $\B L \B x =\B b$:}

    \mdcond{
      If some $l_{ii}=0$, the solution may not exist, and $\B L^{-1}$ does not exist.
    }
\item {\bf Uniqueness of solution:}
    \mdcond{
      Even if some $l_{ii}=0$ and $\B L^{-1}$ does not exist, the system may have a solution.
      The solution will not be unique since columns of $\B{L}$ are necessarily linearly dependent if a diagonal element is zero.
      May want to select solution minimizing norm of $\B x$.
    }
\item {\bf Computational complexity of forward/backward substitution:}

  \mdcond{
  The recursive algorithm has the cost recurrence,
  $$T(n)=T(n-1)+n=\sum_{i=1}^{n} i = n(n+1)/2.$$
  The total cost is $n^2/2$ multiplications and $n^2/2$ additions to leading order.
  }

\end{itemize}
\end{frame}

\begin{frame}{Properties of Triangular Matrices}

\begin{itemize}
\item {\bf $\B Z = \B X \B Y$ is lower triangular is $\B X$ and $\B Y$ are both lower triangular:}

  \lgcond{
    \[\bomat{z}=\blomat{x}\blomat{y}.\]
    Clearly, $z_{11}=x_{11}y_{11}$ and $\B z_{12}=0$, then we proceed by the same argument for the triangular matrix product
    $\B{Z}_{22}=\B{X}_{22}\B{Y}_{22}$.
  }

\item {\bf $\B{L^{-1}}$ is lower triangular if it exists:}

  \lgcond{
    We give a constructive proof by providing an algorithm for triangular matrix inversion.
    We need $\B{Y}=\B{X}^{-1}$ so
    \[\blmat{Y}\blmat{X} = \begin{bmatrix} \B I & \\ & & \B I \end{bmatrix},\]
    from which we can deduce
    \[\B{Y}_{11} = \B{X}_{11}^{-1},\quad \B{Y}_{22}=\B{X}_{22}^{-1},\quad \B{Y}_{21} = -\B{Y}_{22}\B{X}_{21}\B{Y}_{11}.\]
  }

\end{itemize}
\end{frame}

\section{Gaussian Elimination}

\subsection{LU Decomposition}

\begin{frame}{LU Factorization}

\begin{itemize}
\item {\bf An \coloremph{LU factorization} consists of a unit-diagonal lower-triangular \coloremph{factor} $\B L$ and upper-triangular factor $\B U$ such that $\B  A = \B L \B U$:}

\lgcond{
\begin{itemize}
\mitem Unit-diagonal implies each $l_{ii}=1$, leaving $n(n-1)/2$ unknowns in $\B L$ and $n(n+1)/2$ unknowns in $\B U$, for a total of $n^2$, the same as the size of $\B A$.
%\mitem The latter is done by forward substitution, the former involves an upper-triangular matrix and requires backward substitution
%\mitem It suffices to have a forward substitution routine and reversing the ordering of vector elements,
%      done by taking the product with $\B P$, $p_{ij} = \delta(i,n+1-j)$,
%    \[\B L \B U = \B L \B P \underbrace{\B P \B U \B P}_{\B{\tilde L}} \B P = \B L \B P \B{\tilde L} \B P\]
\mitem For rectangular matrices $\B{A}\in \mathbb{R}^{m\times n}$, one can consider a full LU factorization,
      with $\B{L}\in \mathbb{R}^{m \times \max(m,n)}$ and $\B{U} \in \mathbb{R}^{\max(m,n) \times n}$,
      but it is fully described by a reduced LU factorization, with lower-trapezoidal
      $\B{L}\in \mathbb{R}^{m \times \min(m,n)}$ and upper-trapezoidal $\B{U} \in \mathbb{R}^{\min(m,n) \times n}$.
\end{itemize}
}
\item {\bf Given an LU factorization of $\B A$, we can solve the linear system $\B A \B x = \B b$:}
\lgcond{
    \begin{itemize}
    \sitem using forward substitution $\B L \B y = \B b$
    \sitem using backward substitution to solve $\B U \B x = \B y$
    \end{itemize}
\smallskip
    Backward substitution is the same as forward substitution with a reversal of the ordering of the elements of the vectors and the ordering of the rows/columns of the matrix.
}

\lgcond{}

\end{itemize}
\end{frame}

\subsection{Naive Algorithm}

\begin{frame}{Gaussian Elimination Algorithm}

\urcornerlinkdemo{02-linear-systems}{LU factorization}

\begin{itemize}
\item {\bf Algorithm for factorization is derived from equations given by $\B A = \B L \B U$:}

\lgcond{
%\[\bmat{A} = \blmat{L}\brmat{U}\]
\[\begin{bmatrix} a_{11} & \B{a}_{12} \\ \B{a}_{21} & \B{A}_{22} \end{bmatrix}=
\begin{bmatrix} 1 &  \\ \B{l}_{21} & \B{L}_{22} \end{bmatrix}
\begin{bmatrix} u_{11} & \B{u}_{12} \\  & \B{U}_{22} \end{bmatrix}
 = \blmat{L}\brmat{U}\]
\begin{itemize}
%\item Obtain LU factorization of the leading minor \(\B{A}_{11}=\B L_{11}\B{U}_{11}\) by recursion
\sitem First, observe $\begin{bmatrix} u_{11} & \B{u}_{12}\end{bmatrix} = \begin{bmatrix}{a}_{11} & \B{a}_{12}\end{bmatrix}$
\sitem To obtain $\B{l}_{21}$ compute $\B{l}_{21} = \B{a}_{21}/u_{11}$
%\item Solve  sets of triangular linear systems can be solved to obtain $\B L_{21}$ and $\B{U}_{12}$ from $\B{A}_{21}=\B{L}_{21}\B{U}_{11}$ and $\B{A}_{12}=\B{L}_{11}\B{U}_{12}$
\sitem
Obtain $\B{L}_{22}$ and $\B{U}_{22}$ by recursively computing LU of the \coloremph{Schur complement} \[\B{S}= \B{A}_{22}-\B{l}_{21}\B{u}_{12}\]
\end{itemize}
}
\item {\bf The computational complexity of LU is $O(n^3)$:}

\lgcond{
Computing $\B{l}_{21} = \B{a}_{21}/u_{11}$ requires $O(n)$ operations, finding $\B S$ requires $2n^2$, so to leading order the complexity of LU is
$$T(n)=T(n-1)+2n^2=\sum_{i=1}^n 2i^2 \approx 2n^3/3$$
}
%\item {\bf The $k$th column of $\B L$ is given by the $k$th \coloremph{elementary matrix} $\B{M}_k$:}
%
%\lgcond{
%\[\B{M}_k\begin{bmatrix} v_1 & \cdots & v_k & 0 & \cdots & 0 \end{bmatrix}^\T= \B{v} \]
%}

\end{itemize}
\end{frame}

\subsection{Existence of LU}

\begin{frame}{Existence of LU Factorization}

\begin{itemize}
\item {\bf The LU factorization may not exist:}
Consider matrix $\begin{bmatrix} 3 & 2 \\ 6 & 4 \\ 0 & 3\end{bmatrix}$.

\lgcond{
%We can infer what the first row of $\B L$ and column of $\B U$ directly from the matrix,
Proceeding with Gaussian elimination we obtain
\[\begin{bmatrix} 3 & 2 \\ 6 & 4 \\ 0 & 3\end{bmatrix} =\begin{bmatrix} 1 & 0 \\ 2 & 1 \\ 0 & l_{32} \end{bmatrix} \begin{bmatrix} 3 & 2 \\ 0 & u_{21} \end{bmatrix}.\]
Then we need that $4 = 4+u_{21}$ so $u_{21}=0$, but at the same time $l_{32}u_{21}=3$.

More generally, if and only if for any partitioning $\bmat{A}$ the leading minor is singular ($\det(\B{A}_{11})=0$), $\B{A}$ has no LU factorization.
}

\item {\bf Permutation of rows enables us to transform the matrix so the LU factorization does exist:}

\lgcond{
Gaussian elimination can only fail if dividing by zero.
At every recursive step of Gaussian elimination, if the leading entry of the first row is zero, we permute it with a row with an leading nonzero (if $\B{a}_{21}=\B 0$, we set $u_{11}=0$ and $\B{l}_{21}=\B 0$).
}

\end{itemize}
\end{frame}
%\begin{frame}{Elimination Matrices}
%
%\begin{itemize}
%\item {\bf An elimination matrix $\B{M}_k$ satisfies the following properties:}
%
%\lgcond{
%\begin{itemize}
%\item It is a rank-$1$ perturbation of the identity that is unit-diagonal and lower-triangular,
%\[ \B{M}_k = \B{I} - \B{m}_k \B{e}_k^\T=\B{I}-\begin{bmatrix} \B{\tilde{m}}_k \\ \B{0}\end{bmatrix} \B{e}_k^\T\]
%\item It reduces a given vector to its first $k$ elements \[\B{M}_k\begin{bmatrix} a_1 \\ \vdots \\ a_k \\ 0 \\ \vdots\end{bmatrix}= \B{a} \]
%\item $\B{M}_k^{-1}= \B{I}+\B{m}_k \B{e}_k^\T = 2\B{I} - \B{M}_k$
%\item $\B{M}_j\B{M}_k=(\B{I} - \B{m}_j \B{e}_j^\T)(\B{I} - \B{m}_k \B{e}_k^\T)=(\B{I} - \begin{bmatrix} \B{m}_j & \B{m}_k \end{bmatrix}\begin{bmatrix} \B{e}_j & \B{e}_k\end{bmatrix}^\T)=\B{M}_j+\B{M}_k-\B I$
%\end{itemize}
%}
%
%\lgcond{}
%
%\end{itemize}
%\end{frame}
%

\subsection{Pivoting}

\begin{frame}{Gaussian Elimination with Partial Pivoting}

\urcornerlinkdemo{02-linear-systems}{LU with Partial Pivoting}

\begin{itemize}
\item {\bf \coloremph{Partial pivoting} permutes rows to make divisor $u_{ii}$ is maximal at each step:}

\lgcond{
Based on our argument above, for any matrix $\B A$ there exists a permutation matrix $\B P$ that
can permute the rows of $\B A$ to permit an LU factorization,
\[\B P \B A = \B L \B U. \]
Partial pivoting finds such a permutation matrix $\B P$ one row at a time.
The $i$th row is selected to maximize the magnitude of the leading element (over elements in the first column),
which becomes the entry $u_{ii}$.
This selection ensures that we are never forced to divide by zero during Gaussian elimination and that the magnitude
of any element in $\B L$ is at most $1$.
}

\item {\bf A row permutation corresponds to an application of a \coloremph{row permutation matrix} $\B{P}_{jk} = \B{I} -(\B{e}_j-\B{e}_k)(\B{e}_j-\B{e}_k)^\T$:}

\lgcond{
If we permute row $i_j$ .o be the leading ($i$th) row at the $i$th step, the overall permutation matrix is given by
\(\B P^T =\prod_{i=1}^{n-1} \B{P}_{ii_j}.\)
}

\end{itemize}
\end{frame}

\begin{frame}{Partial Pivoting Example}

\begin{itemize}
\item Lets consider again the matrix $\B A = \begin{bmatrix} 3 & 2 \\ 6 & 4 \\ 0 & 3\end{bmatrix}$.

\lgcond{
\begin{itemize}
\item The largest magnitude element in the first column is $6$, so we select this as our pivot and perform the first step of LU
\[\underbrace{\begin{bmatrix} & 1 & \\ 1 & & \\ & & 1 \end{bmatrix}}_{\B P_1} \begin{bmatrix} 6 & 4 \\ 3 & 2 \\ 0 & 3\end{bmatrix} = \begin{bmatrix} 1 \\ 1/2 \\ 0 \end{bmatrix} \begin{bmatrix} 6 & 4 \end{bmatrix} + \begin{bmatrix} 0 & 0  \\ 0 & 2 - (1/2)\cdot 4 \\ 0 & 3 - 0\cdot 4 \end{bmatrix}\]
\item The Schur complement is $\begin{bmatrix} 0 & 3 \end{bmatrix}^T$ and we proceed with pivoted LU, %to obtain its (reduced) LU factorization, we pivot again
\[\underbrace{\begin{bmatrix} & 1 \\ 1 & \end{bmatrix}}_{\B P_2} \begin{bmatrix} 0 \\ 3\end{bmatrix} = \begin{bmatrix} 1 \\ 0 \end{bmatrix} \begin{bmatrix} 3 \end{bmatrix} \]
\item The overall LU factorization is then given by
\(\B P_1 \begin{bmatrix} 1 & \\ & \B P_2 \end{bmatrix} \B A = \begin{bmatrix} 1 & \\ 0 & 1 \\ 1/2 & 0\end{bmatrix}\begin{bmatrix} 6 & 4 \\ & 3 \end{bmatrix}\)
\end{itemize}
}
\lgcond{
}
\end{itemize}
\end{frame}

\begin{frame}{Complete Pivoting}

\begin{itemize}
\item {\bf \coloremph{Complete pivoting} permutes rows and columns to make divisor $u_{ii}$ is maximal at each step:}

\lgcond{
\begin{itemize}
\sitem Partial pivoting ensures that the magnitude of the \coloremph{multipliers} satisfies $|\B l_{21}|= |\B a_{21}|/|u_{11}|\leq \B 1$
\sitem Complete pivoting also gives $||\B u_{12}||_\infty\leq |u_{11}|$ and consequently $|\B l_{21}|\cdot ||\B u_{12}||_\infty = |\B a_{21}|\cdot ||\B u_{12}||_\infty/|u_{11}|\leq |\B a_{21}|$
\sitem Complete pivoting yields a factorization of the form $\B L \B U = \B P \B A \B Q$ where $\B P$ and $\B Q$ are permutation matrices
\end{itemize}
}

\item {\bf Complete pivoting is noticeably more expensive than partial pivoting:}
\lgcond{
\begin{itemize}
\sitem Partial pivoting requires just $O(n)$ comparison operations and a row permutation
\sitem Complete pivoting requires $O(n^2)$ comparison operations, which somewhat increases the leading order cost of LU overall
\end{itemize}
}
\end{itemize}
\end{frame}

\begin{frame}{Round-off Error in LU}

\begin{itemize}
\item {\bf Lets consider factorization of $\begin{bmatrix} \epsilon & 1 \\ 1 & 1 \end{bmatrix}$ where $\epsilon<\epsilon_\text{mach}$:}

\lgcond{
\begin{itemize}
\item Without pivoting we would compute
$\B L = \begin{bmatrix}1  & 0 \\ 1/\epsilon & 1 \end{bmatrix}$,
$\B U = \begin{bmatrix}\epsilon  & 1 \\ 0 & 1-1/\epsilon \end{bmatrix}$
\sitem Rounding yields $\fl(\B U) = \begin{bmatrix}\epsilon  & 1 \\ 0 & -1/\epsilon \end{bmatrix}$
\sitem This leads to $\B L\fl(\B U) = \begin{bmatrix} \epsilon & 1 \\ 1 & 0 \end{bmatrix}$, a backward error of $\begin{bmatrix} 0 & 0 \\ 0 & 1 \end{bmatrix}$
\end{itemize}
}
\item {\bf Permuting the rows of $\B A$ in partial pivoting gives $\B P \B A = \begin{bmatrix} 1 & 1 \\ \epsilon & 1 \end{bmatrix} $}
\lgcond {
\begin{itemize}
\item We now compute
$\B L = \begin{bmatrix}1  & 0 \\ \epsilon & 1 \end{bmatrix}$,
$\B U = \begin{bmatrix}1  & 1 \\ 0 & 1-\epsilon \end{bmatrix}$, so $\fl(\B U)=\begin{bmatrix}1  & 1 \\ 0 & 1 \end{bmatrix}$
\sitem This leads to $\B L\fl(\B U) = \begin{bmatrix} 1 & 1 \\ \epsilon & 1+\epsilon \end{bmatrix}$, a backward error of $\begin{bmatrix} 0 & 0 \\ 0 & \epsilon \end{bmatrix}$
\end{itemize}
}

\end{itemize}

\end{frame}

\subsection{Error Analysis}

\begin{frame}{Error Analysis of LU}

\begin{itemize}

\item {\bf The main source of round-off error in LU is in the computation of the Schur complement:}

\lgcond{
\begin{itemize}
\sitem Recall that division is well-conditioned, while addition can be ill-conditioned
\sitem After $k$ steps of LU, we are working on Schur complement $\B{A}_{22}-\B{L}_{21}\B{U}_{12}$ where $\B{A}_{22}$ is $(n-k)\times (n-k)$, $\B{L}_{21}$ and $\B{U}_{12}^T$ are $(n-k)\times k$
\sitem Partial pivoting and complete pivoting improve stability by making sure $\B{L}_{21}\B{U}_{12}$ is small in norm
\end{itemize}
}

\item {\bf When computed in floating point, absolute backward error $\B{\delta A}$ in LU (so $\B{\hat L}\B{\hat U}=\B{A}+\B{\delta A}$) is} $|\delta a_{ij}| \leq  \epsilon_\text{mach} (|\B{\hat L}|\cdot |\B{\hat{U}}|)_{ij}$

\lgcond{
%The major source of error is the Schur complement updates.
For any $a_{ij}$ with $j\geq i$ (lower-triangle is similar), we compute
\[a_{ij}-\sum_{k=1}^i\hat{l}_{ik}\hat{u}_{kj} = a_{ij} - \langle \B{\hat{l}}_i,\B{\hat{u}}_j\rangle,\]
which in floating point incurs round-off error at most $\epsilon_\text{mach} \langle|\B{\hat{l}}_i|,|\B{\hat{u}}_j|\rangle$.
Using this, for complete pivoting, we can show $|\delta a_{ij}| \leq \epsilon_\text{mach} n^2||\B A||_\infty.$
%For an arbitrary $a_{ij}$, consider the partitioning $\bmat{A}$ where $\B{A}_{11}$ is of dimension $\min(i,j)-1$.
%After the Schur complement update $\B{S}= \fl(\B{A}_{22}-\B{\hat L}_{21}\B{\hat U}_{12})$,
%the entry in $\B S$ corresponding to $a_{ij}$ (an entry in $\B{A}_{22}$) will become an entry of $\B U$ or an entry of $\B{\hat L}$ (after a division that can only shrink the error).
%Thus the $\B{\hat L}$ and $\B{\hat{U}}$ are factors of a matrix $\B{A}+\B{\delta A}$ where the perturbation is bounded by the error of the inner product necessary to compute any Schur complement entry,
%so $|\delta a_{ij}| \leq \epsilon_\text{mach}(|\B{\hat{L}}|\cdot |\B{\hat{U}}|)_{ij}$.
}

\end{itemize}
\end{frame}

\section{Linear System Problem Variants}

\begin{frame}{Helpful Matrix Properties}

\begin{itemize}
\item {\bf  Matrix is \coloremph{diagonally dominant}, so $\sum_{i\neq j} |a_{ij}| \leq |a_{ii}|$:}

\mdcond{
Pivoting is not required if matrix is strictly diagonally dominant $\sum_{i\neq j} |a_{ij}| < |a_{ii}|$.
}
\item {\bf Matrix is \coloremph{symmetric positive definite (SPD)}, so $\forall_{\B x\neq 0}, \B x^T\B A \B x>0$:}

\mdcond{
$\B L = \B U$ and pivoting is not required, \coloremph{Cholesky} algorithm $\B A = \B L \B L^T$ can be used ($\B L$ in Cholesky is not unit-diagonal).
}
\item {\bf Matrix is symmetric but indefinite}:

\mdcond{
Compute pivoted \coloremph{LDL factorization} $\B P \B A \B P^T = \B L \B D \B L^T$ (where $\B L$ is lower-triangular and unit-diagonal, while $\B D$ is diagonal)
}
\item {\bf Matrix is \coloremph{banded}, $a_{ij}= 0$ if $|i-j|>b$}:

\mdcond{
LU without pivoting and Cholesky preserve banded structure and require only $O(nb^2)$ work.
}
\end{itemize}

\end{frame}

\begin{frame}{Solving Many Linear Systems}

\urcornerlinkdemoinclass{02-linear-systems}{Sherman-Morrison}{inclass-sherman-morrison-woodbury}{Sherman-Morrison-Woodbury Formula}

\begin{itemize}
\item {\bf Suppose we have computed $\B A = \B L \B U$ and want to solve $\B A \B X = \B B$ where $\B B$ is $n\times k$ with $k<n$:}

\mdcond{
Cost is $O(n^2k)$ for solving the $k$ independent linear systems
}

\item {\bf Suppose we have computed $\B A = \B L \B U$ and now want to solve a perturbed system $(\B A - \B u \B v^T)\B x = \B b$:}

Can use the \coloremph{Sherman-Morrison-Woodbury} formula
\[(\B A - \B u \B v^T)^{-1} = \B A^{-1} + \frac{\B{A}^{-1}\B u\B v^T\B A^{-1}}{1- \B v^T \B{A}^{-1}\B u}\]
\lgcond{
\begin{itemize}
\item Consequently we have $\B A \B x = \B b + \frac{\B u\B v^T\B A^{-1}}{1- \B v^T \B{A}^{-1}\B u}\B b =\B b + \frac{\B v^T\B A^{-1}\B b}{1- \B v^T \B{A}^{-1}\B u}\B u  $
\sitem Need not form $\B A^{-1}$ or $\B L^{-1}$ or $\B U^{-1}$, suffices to use backward/forward substitution to solve $\B w^T \B A = \B v^T$, i.e. solve $\B U^T \B L^T \B w = \B v$ and then solve
\[\B L \B U \B x = \B b + \underbrace{\bigg(\frac{\B w^T\B b}{1- \B w^T \B u}\bigg)}_\text{scalar}\B u \]
\end{itemize}
}
\end{itemize}

\end{frame}

%\end{document}


Following \cite{Hirsch}, the DGMPM discretization of scalar linear advection problems are now written in a finite difference sense.
The equations thus obtained are the starting point for von Neumann linear stability analyses.
First, the one-dimensional problem is considered and the equations of the DGMPM space discretization combined with both forward Euler and RK2 explicit time integrations are derived.
Second, the two-dimensional equations are written using the DGMPM space discretization along with the explicit forward Euler time integration only.

\subsection{One-dimensional stability analysis}
\label{subsec:scheme_equations}
\subsubsection*{Model equation - Space discretization}
We consider the scalar linear advection equation for an arbitrary quantity $q=\rho \bar{q}$ moving at the constant speed $a \in \Rbb^{+*}$ in a homogeneous one-dimensional medium of length $l$:
\begin{equation}
\drond{\bar{q}}{t} + \drond{\bar{f}}{X} = 0
\end{equation}
with specific flux function $\bar{f} = a\bar{q}$, leading to the quasi-linear form:
\begin{equation}
\drond{\bar{q}}{t} + a\drond{\bar{q}}{X} = 0 \label{eq:scalar_advection}
\end{equation}
Equation \eqref{eq:scalar_advection} is discretized with the discontinuous Galerkin material point method. Thus, the medium is divided with $N_p$ material points arbitrarily distributed in $E$ two-node elements of constant length $\Delta X$ (figure~\ref{fig:1Dmesh}). The grid is such that at least one particle lies in every cell during the computation in order to ensure that there is no hole in the bar. Moreover, periodic boundary conditions are considered to simplify the analysis.
\begin{figure}[h!]
  \centering
  \input{chapter3/pgfFigures/1D_domain}
  \caption{One-dimensional mesh made of $E$ elements of constant length $\Delta X = \frac{l}{E}$.}\label{fig:1Dmesh}
\end{figure}

Since fields are carried by particles, we seek the scheme equation that gives the solution at a material point for a given time step, with respect to the solutions at other particles at the prior time step. In this section, Latin and Greek symbols are respectively devoted to nodes and material points.
Since we consider here scalar quantities, the information on nodes and particles can be written as subscripts without ambiguity with vector components.
In addition, to make the distinction between fields easier, upper and lower case Latin symbols are used for particle and nodal fields respectively.
Hence, the solution at material point $\alpha$ and time step $n$ reads $\bar{Q}^{n}_\alpha$ whereas that of node $i$ is $\bar{q}^n_i$.
Then, the cell containing the particle $\alpha$ will be denoted by $c(\alpha)$ so that the nodes interacting with this particle are $2c(\alpha)-1$ and $2c(\alpha)$.
At last, the linear shape functions defined in element $c(\alpha)$ are:
\begin{equation}
S_{2c(\alpha)-1}(X)= \frac{X^{2c(\alpha)} - X}{\Delta X} \qquad S_{2c(\alpha)}(X)= \frac{X -X^{2c(\alpha)-1}}{\Delta X} \qquad X \in \[X^{2c(\alpha)-1},X^{2c(\alpha)}\]
\end{equation}
and $S_{i\alpha}$ or $S_{i,\alpha}$ correspond to the shape function of node $i$ evaluated at the position of the $\alpha$th material point.

\subsubsection*{Scheme equation: Euler time discretization}
The method followed in order to write the scheme equation consists in tracing backward the numerical procedure described in section \ref{sec:DGMPM} in order to get an expression of the form \eqref{eq:general_scheme} for the material point $\alpha$:
\begin{equation}
\bar{Q}^{n+1}_\alpha = H\(\bar{Q}^{n}_\beta\) \qquad  \beta=1,..,N_p
\end{equation}
Quantities at time $t^{n+1}$ are obtained by interpolating nodal solutions of the discrete equation \eqref{eq:DGMPM_discrete} in the cell containing the $\alpha$th particle:
\begin{equation}
\bar{Q}^{n+1}_\alpha = S_{2c(\alpha)-1,\alpha}\bar{q}_{2c(\alpha)-1}^{n+1} + S_{2c(\alpha),\alpha}\bar{q}_{2c(\alpha)}^{n+1} \label{eq:updated_MP}
\end{equation}
The linear scalar advection equation leads to the interface flux function $\Fc_N =  (aq^*) N $, where
%With the interface fluxes in the case of the linear scalar advection equation $\Fc_N =  (aq^*) N $, in which
$q^*$ is the stationary solution of Riemann's problem at a cell interface and $N=\pm 1$ the outward unit normal. The discrete form \eqref{eq:DGMPM_discrete} thus reads for both nodes of cell $c(\alpha)$:
\begin{equation}
  \label{eq:nodal_discrete_forms}
  \begin{aligned}
    & \bar{q}_{2c(\alpha)-1}^{n+1}= \bar{q}_{2c(\alpha)-1}^{n} + \frac{\Delta t}{M^L_{2c(\alpha)-1}}\( K_{2c(\alpha)-1,j} a\bar{q}_{j}^{n}- a\rho \bar{q}_{2c(\alpha)-1}^*N_{2c(\alpha)-1} \)\\
    &\bar{q}_{2c(\alpha)}^{n+1}= \bar{q}_{2c(\alpha)}^{n} + \frac{\Delta t}{M^L_{2c(\alpha)}}\( K_{2c(\alpha),j} a\bar{q}_{j}^{n}- a\rho \bar{q}_{2c(\alpha)}^*N_{2c(\alpha)} \)
  \end{aligned}
\end{equation}
where in a one-dimensional grid, the outward unit vectors are $N_{2c(\alpha)-1}=-1$ and $N_{2c(\alpha)}=1$. Discrete equations \eqref{eq:nodal_discrete_forms} are then simplified by first considering that the mass density is defined in a cell as the ratio of total nodal mass and the element volume:
%First, the mass density is defined in a cell as the ratio of total nodal mass and the element volume:
\begin{equation}
  \label{eq:grid_density}
  \rho(X) = \frac{M^L_{2c-1}+M^L_{2c}}{\Delta X} = \frac{\sum_{\mu=1}^{N_p^c} m_\mu}{\Delta X}, \qquad X \in [X^{2c-1},X^{2c}]
\end{equation}
where $N_p^{c}$ is the number of particles in cell $c$ and $m_\mu$, the mass carried by the $\mu$th material point. For homogeneous medium, we further assume that the mass is uniformly distributed between particles so that the previous definition reduces to $\rho = N_p^{c} m^c/\Delta X$, with $m^c$ the mass carried by particles lying in $c$. Second, linear shape functions lead to the following the lumped mass matrix and pseudo-stiffness matrices:
\begin{align}
  & M^L_i = \sum_{\mu=1}^{N_p} S_{i\mu} m_\mu = m^{c(i)} \sum_{\mu=1}^{N_p} S_{i\mu}\\
  & K_{2c(\alpha)-1,j} = \sum_{\mu=1}^{N_p} \drond{S_{2c(\alpha)-1,\mu}}{X} m_\mu S_{j\mu} = -m^{c(i)} \sum_{\mu=1}^{N_p} \frac{ S_{j\mu}}{\Delta X} \\
  & K_{2c(\alpha),j} = \sum_{\mu=1}^{N_p} \drond{S_{2c(\alpha),\mu}}{X} m_\mu S_{j\mu} = m^{c(i)}\sum_{\mu=1}^{N_p} \frac{ S_{j\mu}}{\Delta X}
\end{align}
The discontinuous approximation basis moreover yields a bloc diagonal pseudo-stiffness matrix so that one can write:
\begin{equation}
  \label{eq:block_diag_K}
  K_{ij} \bar{q}_{j}^{n}= K_{i,2c(i)-1} \bar{q}_{2c(i)-1}^{n}+K_{i,2c(i)} \bar{q}_{2c(i)}^{n}
\end{equation}
Third, a right-going wave (\textit{i.e. $a>0$}) leads to a stationary solution of the Riemann problem equal to the state of the upwind node of an interface, that is:
\begin{align}
  & q_{2c(\alpha)-1}^* = \rho \bar{q}^n_{2c(\alpha)-2}=  N_p^{c(\alpha)}\frac{ m^{c(\alpha)}}{\Delta X}\bar{q}^n_{2c(\alpha)-2} \\
  & q_{2c(\alpha)}^* = \rho \bar{q}^n_{2c(\alpha)} =  N_p^{c(\alpha)}\frac{ m^{c(\alpha)}}{\Delta X} \bar{q}^n_{2c(\alpha)}
\end{align}
Therefore, gathering all the previous considerations, equations \eqref{eq:nodal_discrete_forms} read:
\begin{equation}
  \label{eq:nodal_euler}
  \begin{aligned}
    & \bar{q}_{2c(\alpha)-1}^{n+1}= \bar{q}_{2c(\alpha)-1}^{n} - \frac{a\Delta t}{\Delta X}\( \frac{\sum_{\mu=1}^{N_p^{c(\alpha)}} \[S_{2c(\alpha)-1,\mu}\bar{q}_{2c(\alpha)-1}^{n}+ S_{2c(\alpha),\mu}\bar{q}_{2c(\alpha)}^{n}\] - N_p^{c( \alpha)} \bar{q}^n_{2c(\alpha)-2}}{\sum_{\mu=1}^{N_p^{c(\alpha)}}S_{2c(\alpha)-1,\mu}}\)\\
    &\bar{q}_{2c(\alpha)}^{n+1}= \bar{q}_{2c(\alpha)}^{n} + \frac{a\Delta t}{\Delta X}\( \frac{\sum_{\mu=1}^{N_p^{c(\alpha)}} \[S_{2c(\alpha)-1,\mu}\bar{q}_{2c(\alpha)-1}^{n}+ S_{2c(\alpha),\mu}\bar{q}_{2c(\alpha)}^{n}\]- N_p^{c( \alpha)} \bar{q}^n_{2c(\alpha)}}{\sum_{\mu=1}^{N_p^{c(\alpha)}} S_{2c(\alpha),\mu}} \)
  \end{aligned}
\end{equation}
where the volume flux contributions $\sum_{\mu=1}^{N_p^{c}} \[S_{2c-1,\mu}\bar{q}_{2c-1}^{n}+ S_{2c,\mu}\bar{q}_{2c}^{n}\]$ are written for simplicity $f_{c}^{n}$, and Courant number $a\Delta t/\Delta X$ arises. Introduction of these equations in the updated material point solution \eqref{eq:updated_MP} leads after some simplifications to:
\begin{equation}
  \label{eq:euler_before_mapping}
  \begin{split}
    \bar{Q}^{n+1}_\alpha = S_{2c(\alpha)-1,\alpha}q^n_{2c(\alpha)-1}  &+ S_{2c(\alpha),\alpha}\(1-\frac{a\Delta t}{\Delta X}\frac{N_p^{c(\alpha)}}{\sum_\mu S_{2c(\alpha),\mu}}\)q^n_{2c(\alpha)} +N_p^{c(\alpha)}\frac{a\Delta t}{\Delta X} \frac{S_{2c(\alpha)-1,\alpha}}{\sum_\mu S_{2c(\alpha)-1,\mu}}q^n_{2c(\alpha)-2} \\
    & + \frac{a\Delta t}{\Delta X}\(\frac{S_{2c(\alpha),\alpha}}{\sum_\mu S_{2c(\alpha),\mu}}-\frac{S_{2c(\alpha)-1,\alpha}}{\sum_\mu S_{2c(\alpha)-1,\mu}}\)f_{c(\alpha)}^{n}
  \end{split}
\end{equation}

Then, the solution at nodes and time step $n$ in equation \eqref{eq:euler_before_mapping} result from the projection between particles and the grid \eqref{eq:DGMPM_points2nodes}:
%In equation \eqref{eq:euler_before_mapping} the solutions at nodes result from the convection step \eqref{eq:DGMPM_points2nodes}:
\begin{equation}
\bar{q}^{n}_{i} = \frac{\sum_\beta S_{i\beta}m_\beta \bar{Q}^n_{\beta}}{\sum_\gamma S_{i\gamma}m_\gamma} = \frac{\sum_\beta S_{i\beta} \bar{q}^n_{\beta}}{\sum_\beta S_{i\beta}} \label{eq:stab_mapping}
\end{equation}
In particular, volume flux contributions can be written:
\begin{equation}
  f_{c}^{n}=\sum_{\mu=1}^{N_p^{c}}\[S_{2c-1,\mu}\frac{\sum_\beta S_{2c-1,\beta}\bar{q}^n_{\beta}}{\sum_\gamma S_{2c-1,\gamma}}+ S_{2c,\mu}\frac{\sum_\beta S_{2c,\beta} \bar{q}^n_{\beta}}{\sum_\gamma S_{2c,\gamma}} \]=\sum^{N_p}_{\beta=1}\(S_{2c-1,\beta} +S_{2c,\beta} \)\bar{q}^n_{\beta} \label{eq:volume_fluxes_mapped}
\end{equation}
Thus, introduction of mappings \eqref{eq:stab_mapping} and \eqref{eq:volume_fluxes_mapped} in equation \eqref{eq:euler_before_mapping} and permutation of sums over $\beta$ and $i$ lead after some simplifications to the scheme equation:
\begin{equation}
  \begin{split}
    \bar{Q}^{n+1}_\alpha = \sum_{\beta=1}^{N_p} \bar{Q}^{n}_\beta & \left\lbrace \vphantom{\frac{S_{2c(\alpha)-1,\beta}}{\sum_\mu S_{2c(\alpha)-1,\mu}}}S_{2c(\alpha)-1,\alpha}\frac{S_{2c(\alpha)-1,\beta}}{\sum_\mu S_{2c(\alpha)-1,\mu}} + S_{2c(\alpha),\alpha}\frac{S_{2c(\alpha),\beta}}{\sum_\mu S_{2c(\alpha),\mu}} \right. \\
    & -\frac{a\Delta t}{\Delta X}N_p^{c(\alpha)}\frac{S_{2c(\alpha),\alpha}}{\sum_\mu S_{2c(\alpha),\mu}}\frac{S_{2c(\alpha),\beta}}{\sum_\mu S_{2c(\alpha),\mu}}\\
    & + \frac{a\Delta t}{\Delta X}N_p^{c(\alpha)} \frac{S_{2c(\alpha)-1,\alpha}}{\sum_\mu S_{2c(\alpha)-1,\mu}}\frac{S_{2c(\alpha)-2,\beta}}{\sum_\mu S_{2c(\alpha)-2,\mu}} \\
    &\left.+ \frac{a\Delta t}{\Delta X}\[\frac{S_{2c(\alpha),\alpha}}{\sum_\mu S_{2c(\alpha),\mu}}-\frac{S_{2c(\alpha)-1,\alpha}}{\sum_\mu S_{2c(\alpha)-1,\mu}}\]\(S_{2c(\alpha)-1,\beta} +S_{2c(\alpha),\beta}\) \right\rbrace \label{eq:scheme_euler1}
  \end{split}
\end{equation}
Note that the last term of formula \eqref{eq:scheme_euler1} is non-zero if particles $\beta$ and $\alpha$ share the same cell, and in that case the parenthesis is one. Hence, the scheme equation can be rewritten as:
\begin{equation}
  \label{eq:Euler_scheme}
  \begin{split}
    \bar{Q}^{n+1}_\alpha = \sum_{\beta=1}^{N_p} \bar{Q}^{n}_\beta  &\left\lbrace\sum_{i=1}^{2E}S_{i\beta}\frac{S_{i\alpha}}{\sum_\mu S_{i\mu}}  + N_p^{c(\alpha)}\frac{a\Delta t}{\Delta X} \[\frac{S_{2c(\alpha)-1,\alpha}}{\sum_{\mu}  S_{2c(\alpha)-1,\mu}}\frac{S_{2c(\alpha)-2,\beta}}{\sum_{\mu}  S_{2c(\alpha)-2,\mu}}-\frac{S_{2c(\alpha),\alpha}S_{2c(\alpha),\beta}}{\(\sum_{\mu}  S_{2c(\alpha),\mu}\)^2}\]\right.\\
    & + \left.   \frac{a\Delta t}{\Delta X} \[\frac{S_{2c(\beta),\alpha}}{\sum_{\mu}  S_{2c(\beta),\mu}}-\frac{S_{2c(\beta)-1,\alpha}}{\sum_\mu S_{2c(\beta)-1,\mu}}\] \vphantom{\sum_{i=1}^{2E}}\right\rbrace
  \end{split}
\end{equation}
The first (\textit{resp. second}) bracket in equation \eqref{eq:Euler_scheme} involves shape functions that are non zero if material points $\beta$ and $\alpha$ lie in adjacent cells (\textit{resp. the same cell}).
Hence, the numerical domain of dependence of the DGMPM for the scalar linear advection equation covers two cells regardless of the number of material points.
It is worth noticing that in the particular case of one material point lying in every cell, the convective phase \eqref{eq:stab_mapping} simplifies to: $\bar{q}^n_i = \bar{Q}^n_\alpha$ for $c(i)=c(\alpha)$. The mapping therefore amounts to a piece-wise constant reconstruction of the field on the background grid that makes the DGMPM equivalent to the \textit{First Order Upwind (FOU)} method.
However, this no longer holds for other distributions of material points within the computational grid.

\subsubsection*{Scheme equation: RK2 time discretization}

The discrete system on the grid resulting from the second-order Runge-Kutta time integration consists of the two-stage procedure \eqref{eq:DGMPM_discrete_RK2} which, for the one-dimensional scalar linear advection equation, particularizes at node $i$  as:
\begin{subequations}
  \begin{alignat}{1}
    \label{eq:RK2_stage1}& \bar{q}^{n+1/2}_{i}  =\bar{q}^{n}_{i} + \frac{1}{2}\frac{\Delta t}{M^L_{i}} a \( \sum_{j=1}^{2E} K_{i,j} \bar{q}^n_{j} - q^{*,n}_{i}N_i \) \quad \text{(no sum on $i$)} \\
    \label{eq:RK2_stage2}& \bar{q}^{n+1}_{i}  =\bar{q}^{n}_{i} + \frac{\Delta t}{M^L_{i}} a \( \sum_{j=1}^{2E} K_{i,j} \bar{q}^{n+1/2}_{j} - q^{*,n+1/2}_{i}N_i \) \quad \text{(no sum on $i$)}
  \end{alignat}
\end{subequations}
This procedure can be seen as a recursive use of the Euler scheme \eqref{eq:nodal_euler} with suitable time step sizes. The first stage \eqref{eq:RK2_stage1} yields the intermediate nodal fields in cell $c(\alpha)$:
\begin{equation}
  \label{eq:discrete_RK2_step1}
  \begin{aligned}
    &\bar{q}_{2c(\alpha)-1}^{n+1/2}= \bar{q}_{2c(\alpha)-1}^{n} - \frac{a\Delta t}{2\Delta X}\( \frac{f_{c(\alpha)}^{n} - N_p^{c( \alpha)} \bar{q}^n_{2c(\alpha)-2}}{\sum_{\mu=1}^{N_p^{c(\alpha)}}  S_{2c(\alpha)-1,\mu}}\)\\
    &\bar{q}_{2c(\alpha)}^{n+1/2}= \bar{q}_{2c(\alpha)}^{n} + \frac{a\Delta t}{2\Delta X}\( \frac{f_{c(\alpha)}^{n}- N_p^{c( \alpha)}  \bar{q}^n_{2c(\alpha)}}{\sum_{\mu=1}^{N_p^{c(\alpha)}}  S_{2c(\alpha),\mu}} \)
  \end{aligned}
\end{equation}
and the second stage \eqref{eq:RK2_stage2} leads to the expression of nodal quantities at the end of the time step:
\begin{equation}
  \label{eq:discrete_RK2_step2}
  \begin{aligned}
    &\bar{q}_{2c(\alpha)-1}^{n+1}= \bar{q}_{2c(\alpha)-1}^{n} - \frac{a\Delta t}{\Delta X}\( \frac{\sum_{\gamma=1}^{N_p^{c(\alpha)}}\[S_{2c(\alpha)-1,\gamma}\bar{q}_{2c(\alpha)-1}^{n+1/2}+ S_{2c(\alpha),\gamma}\bar{q}_{2c(\alpha)}^{n+1/2}\] - N_p^{c( \alpha)} \bar{q}^{n+1/2}_{2c(\alpha)-2}}{\sum_{\mu=1}^{N_p^{c(\alpha)}}  S_{2c(\alpha)-1,\mu}}\)\\
    &\bar{q}_{2c(\alpha)}^{n+1}= \bar{q}_{2c(\alpha)}^{n} + \frac{a\Delta t}{\Delta X}\( \frac{\sum_{\gamma=1}^{N_p^{c(\alpha)}}\[S_{2c(\alpha)-1,\gamma}\bar{q}_{2c(\alpha)-1}^{n+1/2}+ S_{2c(\alpha),\gamma}\bar{q}_{2c(\alpha)}^{n+1/2}\]- N_p^{c( \alpha)}  \bar{q}^{n+1/2}_{2c(\alpha)}}{\sum_{\mu=1}^{N_p^{c(\alpha)}}  S_{2c(\alpha),\mu}} \)
  \end{aligned}
\end{equation}
Then, introduction of the interpolation from nodes to particles \eqref{eq:updated_MP} in equations \eqref{eq:discrete_RK2_step2} leads to the solution at material point $\alpha$ and time step $n+1$:
\begin{equation}
  \begin{split}
    \bar{Q}^{n+1}_\alpha =  &S_{2c(\alpha)-1,\alpha}\bar{q}_{2c(\alpha)-1}^{n} - \(\frac{a\Delta t}{\Delta X}\[S_{2c(\alpha)-1,\alpha} - S_{2c(\alpha),\alpha}\frac{\sum_{\gamma} S_{2c(\alpha)-1,\gamma}}{\sum_{\mu}  S_{2c(\alpha),\mu}}\] \)\bar{q}_{2c(\alpha)-1}^{n+1/2} \\ & +S_{2c(\alpha),\alpha}\bar{q}_{2c(\alpha)}^{n} + \frac{a\Delta t}{\Delta X}\[S_{2c(\alpha),\alpha} - S_{2c(\alpha)-1,\alpha}\frac{\sum_{\gamma} S_{2c(\alpha),\gamma}}{\sum_{\mu}  S_{2c(\alpha)-1,\mu}}- N_p^{c(\alpha)}\frac{S_{2c(\alpha),\alpha}}{\sum_{\mu}  S_{2c(\alpha),\mu}}\] \bar{q}_{2c(\alpha)}^{n+1/2}\\
    &+N_p^{c(\alpha)}\frac{a\Delta t}{\Delta X}\frac{S_{2c(\alpha)-1,\alpha}}{\sum_{\mu}  S_{2c(\alpha)-1,\mu}}\bar{q}_{2c(\alpha)-2}^{n+1/2}
  \end{split}
\end{equation}
Nodal values $q_i^{n+1/2}$ are provided by the first stage of RK2 algorithm and can be substituted in the second stage:
%Note that the volume fluxes contributions $f_c^{n}$ are used in equations \eqref{eq:discrete_RK2_step1} and not in \eqref{eq:discrete_RK2_step2}. Indeed, nodal values $q_i^{n+1/2}$ provided by the first stage of RK2 algorithm are substituted in the second one, it is therefore better to make them appear explicitly. It thus comes:
\begin{equation}
  \begin{split}
    \bar{Q}^{n+1}_\alpha &=  S_{2c(\alpha)-1,\alpha}\bar{q}_{2c(\alpha)-1}^{n} +S_{2c(\alpha),\alpha}\bar{q}_{2c(\alpha)}^{n} \\
    -& \frac{a\Delta t}{\Delta X}\[S_{2c(\alpha)-1,\alpha} - S_{2c(\alpha),\alpha}\frac{\sum_{\mu} S_{2c(\alpha)-1,\mu}}{\sum_{\mu}  S_{2c(\alpha),\mu}}\] \(\bar{q}_{2c(\alpha)-1}^{n} - \frac{a\Delta t}{2\Delta X}\( \frac{f_{c(\alpha)}^{n} - N_p^{c( \alpha)} \bar{q}^n_{2c(\alpha)-2}}{\sum_{\mu}  S_{2c(\alpha)-1,\mu}}\)\) \\
    +& \frac{a\Delta t}{\Delta X}\[S_{2c(\alpha),\alpha}\(1- \frac{N_p^{c(\alpha)}}{\sum_{\mu}  S_{2c(\alpha),\mu}}\) - S_{2c(\alpha)-1,\alpha}\frac{\sum_{\mu} S_{2c(\alpha),\mu}}{\sum_{\mu}  S_{2c(\alpha)-1,\mu}}\] \(\bar{q}_{2c(\alpha)}^{n} + \frac{a\Delta t}{2\Delta X}\( \frac{f_{c(\alpha)}^{n}- N_p^{c( \alpha)}  \bar{q}^n_{2c(\alpha)}}{\sum_{\mu}  S_{2c(\alpha),\mu}} \)\)\\
    +& N_p^{c(\alpha)}\frac{a\Delta t}{\Delta X}\frac{S_{2c(\alpha)-1,\alpha}}{\sum_{\mu}  S_{2c(\alpha)-1,\mu}}\(\bar{q}_{2c(\alpha)-2}^{n} + \frac{a\Delta t}{2\Delta X}\( \frac{f_{c(\alpha)-1}^{n}- N_p^{c( \alpha)}  \bar{q}^n_{2c(\alpha)-2}}{\sum_{\mu}  S_{2c(\alpha)-2,\mu}} \)\) \label{eq:Mp_before_mapping}
  \end{split}
\end{equation}
Note that the solution of the downstream node of the adjacent cell $q^{n+1/2}_{2c(\alpha)-2}$ results from the second equation of the set \eqref{eq:discrete_RK2_step1}. Therefore, by rearranging formula \eqref{eq:Mp_before_mapping} as:
%Note that the second equation of the set \eqref{eq:discrete_RK2_step1} is used for $q^{n+1/2}_{2c(\alpha)-2}$ since it is the downwstream node of the adjacent cell $c(\alpha)-1$. At last, by rearranging formula \eqref{eq:Mp_before_mapping} as:
\begin{equation}
  \begin{split}
    \bar{Q}^{n+1}_\alpha =  &\(S_{2c(\alpha)-1,\alpha} -\frac{a\Delta t}{\Delta X}\[S_{2c(\alpha)-1,\alpha} - S_{2c(\alpha),\alpha}\frac{\sum_{\mu} S_{2c(\alpha)-1,\mu}}{\sum_{\mu}  S_{2c(\alpha),\mu}}\]\)\bar{q}_{2c(\alpha)-1}^{n} \\
    +&\(S_{2c(\alpha),\alpha} + \frac{a\Delta t}{\Delta X}\[S_{2c(\alpha),\alpha}\(1-\frac{N_p^{c(\alpha)}}{\sum_{\mu}  S_{2c(\alpha),\mu}}\) - S_{2c(\alpha)-1,\alpha}\frac{\sum_{\mu} S_{2c(\alpha),\mu}}{\sum_{\mu}  S_{2c(\alpha)-1,\mu}}\]\) \bar{q}_{2c(\alpha)}^{n} \\
    +&\frac{1}{2}\(\frac{a\Delta t}{\Delta X}\)^2\(N_p^{c( \alpha)}\[\frac{S_{2c(\alpha)-1,\alpha}}{\sum_\mu S_{2c(\alpha)-1,\mu}} - \frac{S_{2c(\alpha),\alpha}}{\sum_{\mu}  S_{2c(\alpha),\mu}}\] +S_{2c(\alpha),\alpha} \(\frac{N_p^{c(\alpha)}}{\sum_{\mu}  S_{2c(\alpha),\mu}}\)^2\)\bar{q}_{2c(\alpha)}^{n}\\
    +&N_p^{c( \alpha)}\frac{a\Delta t}{\Delta X}  \[ \frac{S_{2c(\alpha)-1,\alpha}}{\sum_{\mu}  S_{2c(\alpha)-1,\mu}}\(1 -   \frac{a\Delta t}{2\Delta X}\(1+\frac{N_p^{c( \alpha)} }{\sum_{\mu}  S_{2c(\alpha)-2,\mu}} \)\)+\frac{a\Delta t}{2\Delta X} \frac{S_{2c(\alpha),\alpha}}{\sum_{\mu}  S_{2c(\alpha),\mu}}\]\bar{q}^n_{2c(\alpha)-2}\\
    -&\frac{1}{2}\(\frac{a\Delta t}{\Delta X}\)^2 N_p^{c(\alpha)}\frac{S_{2c(\alpha),\alpha}}{\(\sum_{\mu}  S_{2c(\alpha),\mu}\)^2} f_{c(\alpha)}^{n} +\frac{1}{2}\(\frac{a\Delta t}{\Delta X}\)^2N_p^{c(\alpha)}\frac{S_{2c(\alpha)-1,\alpha}}{\sum_{\mu}  S_{2c(\alpha)-1,\mu}}\frac{ f_{c(\alpha)-1}^{n}}{\sum_{\mu}  S_{2c(\alpha)-2,\mu}}
  \end{split}
\end{equation}
the use of mapping equations \eqref{eq:stab_mapping} and \eqref{eq:volume_fluxes_mapped} allows to write:
\begin{equation}
  \begin{split}
    \bar{Q}^{n+1}_\alpha =  &\sum_{\beta} \bar{Q}_\beta^n  \left\lbrace \frac{S_{2c(\alpha)-1,\beta}}{\sum_\mu S_{2c(\alpha)-1,\mu}}\(S_{2c(\alpha)-1,\alpha} -\frac{a\Delta t}{\Delta X}\[S_{2c(\alpha)-1,\alpha} - S_{2c(\alpha),\alpha}\frac{\sum_{\gamma} S_{2c(\alpha)-1,\gamma}}{\sum_{\mu}  S_{2c(\alpha),\mu}}\]\)  \right. \\
    &+\frac{S_{2c(\alpha),\beta}}{\sum_\mu S_{2c(\alpha),\mu}}\(S_{2c(\alpha),\alpha} + \frac{a\Delta t}{\Delta X}\[S_{2c(\alpha),\alpha}\(1-\frac{N_p^{c(\alpha)}}{\sum_{\mu}  S_{2c(\alpha),\mu}}\) - S_{2c(\alpha)-1,\alpha}\frac{\sum_{\gamma} S_{2c(\alpha),\gamma}}{\sum_{\mu}  S_{2c(\alpha)-1,\mu}}\]\)  \\
    &+\frac{S_{2c(\alpha),\beta}}{\sum_\mu S_{2c(\alpha),\mu}}\frac{1}{2}\(\frac{a\Delta t}{\Delta X}\)^2\(N_p^{c( \alpha)}\[\frac{S_{2c(\alpha)-1,\alpha}}{\sum_\mu S_{2c(\alpha)-1,\mu}} - \frac{S_{2c(\alpha),\alpha}}{\sum_{\mu}  S_{2c(\alpha),\mu}}\] +S_{2c(\alpha),\alpha} \(\frac{N_p^{c(\alpha)}}{\sum_{\mu}  S_{2c(\alpha),\mu}}\)^2\)  \\
    &+\frac{N_p^{c( \alpha)} S_{2c(\alpha)-2,\beta}}{\sum_\mu S_{2c(\alpha)-2,\mu}}\frac{a\Delta t}{\Delta X} \[ \frac{S_{2c(\alpha)-1,\alpha}}{\sum_{\mu}  S_{2c(\alpha)-1,\mu}}\(1 -   \frac{a\Delta t}{2\Delta X}\(1+\frac{N_p^{c( \alpha)} }{\sum_{\mu}  S_{2c(\alpha)-2,\mu}} \)\)+\frac{a\Delta t}{2\Delta X} \frac{S_{2c(\alpha),\alpha}}{\sum_{\mu}  S_{2c(\alpha),\mu}}\]\\
    &+\frac{1}{2}\(\frac{a\Delta t}{\Delta X}\)^2 N_p^{c(\alpha)}\left.\( \frac{\[S_{2c(\alpha)-2,\beta} +S_{2c(\alpha)-3,\beta} \]}{\sum_{\mu}  S_{2c(\alpha)-1,\mu}\sum_{\mu}  S_{2c(\alpha)-2,\mu}} S_{2c(\alpha)-1,\alpha}-\frac{\[S_{2c(\alpha)-1,\beta} +S_{2c(\alpha),\beta} \]}{\(\sum_{\mu}  S_{2c(\alpha),\mu}\)^2} S_{2c(\alpha),\alpha}\)  \right\rbrace
  \end{split}
\end{equation}
Once the previous formula is simplified, the one-dimensional scheme equation of the DGMPM with the RK2 time discretization can be written:
\begin{equation}
  \label{eq:RK2_scheme}
  \begin{split}
    \bar{Q}^{n+1}_\alpha =  &\sum_{\beta} \bar{Q}_\beta^n  \left\lbrace \sum_i S_{i\beta}\frac{S_{i\alpha}}{\sum_\mu S_{i\mu}}
      +\frac{a\Delta t}{\Delta X}\[\frac{S_{2c(\beta),\alpha}}{\sum_{\mu}  S_{2c(\beta),\mu}} - \frac{S_{2c(\beta)-1,\alpha}}{\sum_{\mu}  S_{2c(\beta)-1,\mu}}\] \right.\\
    &+\frac{a\Delta t}{\Delta X}N_p^{c( \alpha)}\[\frac{S_{2c(\alpha)-1,\alpha}}{\sum_{\mu}  S_{2c(\alpha)-1,\mu}}\frac{S_{2c(\alpha)-2,\beta}}{\sum_\mu S_{2c(\alpha)-2,\mu}}-\frac{S_{2c(\alpha),\alpha}S_{2c(\alpha),\beta}}{\(\sum_\mu S_{2c(\alpha),\mu}\)^2}\] \\
    &+\frac{1}{2}\(\frac{a\Delta t}{\Delta X}\)^2N_p^{c( \alpha)} \(\frac{S_{2c(\alpha),\beta}}{\sum_\mu S_{2c(\alpha),\mu}}-\frac{S_{2c(\alpha)-2,\beta}}{\sum_\mu S_{2c(\alpha)-2,\mu}}\)\[\frac{S_{2c(\alpha)-1,\alpha}}{\sum_\mu S_{2c(\alpha)-1,\mu}} - \frac{S_{2c(\alpha),\alpha}}{\sum_{\mu}  S_{2c(\alpha),\mu}}\]\\
    &+\frac{1}{2}\(\frac{a\Delta t}{\Delta X}\)^2N_p^{c( \alpha)}\frac{S_{2c(\beta),\alpha}}{\(\sum_{\mu}  S_{2c(\alpha),\mu}\)^2} \[N_p^{c( \alpha)}\frac{S_{2c(\alpha),\beta} }{\sum_\mu S_{2c(\alpha),\mu}}-1\]\\
    &+ \frac{1}{2}\(\frac{a\Delta t}{\Delta X}\)^2\frac{S_{2c(\beta)+1,\alpha}N_p^{c(\alpha)}}{\sum_{\mu}  S_{2c(\alpha)-1,\mu}\sum_{\mu}  S_{2c(\alpha)-2,\mu}} \left.\[ 1 - N_p^{c( \alpha)}\frac{S_{2c(\alpha)-2,\beta} }{\sum_{\mu}  S_{2c(\alpha)-2,\mu}}\] \right\rbrace
    \end{split}
\end{equation}
The three first terms of the latter scheme equation correspond to that obtained for the Euler algorithm \eqref{eq:Euler_scheme} while the second order terms are provided by the two-stage time integration. The brackets in those higher-order corrections vanish when only one point is in each cell of the grid, so that the scheme is, as that of the previous section, equivalent to the FOU method.

\subsubsection*{The von Neumann linear stability analysis}
The scheme equations obtained above are written for simplicity:
\begin{equation}
\bar{Q}^{n+1}_\alpha = \sum_{\beta=1}^{N_p}  D_{\alpha\beta} \bar{Q}^n_{\beta}\label{eq:scheme_Dpi}
\end{equation}
Moreover, the computational domain is repeated periodically by mapping it to the domain $[-l,0]$ so that the solution at material point $\alpha$ and time step $n$ is expanded into a discrete Fourier basis of $2E+1$ harmonics over the domain $X \in \[-l,l\]$:
\begin{equation}
\bar{Q}^{n}_\alpha = \sum_{j=-E}^{E}A_j^n e^{i \alpha k_j \Delta X}
\end{equation}
with $A^n_j$, the magnitude of the $j$th harmonic at time step $n$, $i = \sqrt{-1}$, and $k_j$ a wave number. Introduction of this expansion in equation \eqref{eq:scheme_Dpi} yields:
\begin{equation}
A_j^{n+1} e^{i\alpha k_j \Delta X} = \sum_{\beta=1}^{N_p} A_j^n D_{\alpha\beta}e^{i \beta k_j \Delta X}\quad \forall j=-E,...,E
\end{equation}
The amplification factor between two time steps at a given point is defined as:
\begin{equation}
\frac{A_j^{n+1}}{A_j^n} = \sum_{\beta=1}^{N_p} e^{i (\beta -\alpha)k_j \Delta X} D_{\alpha\beta} \quad \forall j=-E,...,E \label{eq:fourier_expansion}
\end{equation}
A necessary condition to ensure the stability of a numerical scheme is that the amplification factor must be lower than or equal to one in modulus: $\abs{A^{n+1}/A^n} \leq 1$. This upper bound prevents an increasing error during the computation. For expression \eqref{eq:fourier_expansion}, this leads to:
\begin{equation}
 \abs{\sum_{\beta=1}^{N_p} e^{i (\beta -\alpha)k_j \Delta X} D_{\alpha\beta}} \leq \sum_{\beta=1}^{N_p} \abs{e^{i (\beta -\alpha)k_j \Delta X} D_{\alpha\beta}} = \sum_{\beta=1}^{N_p} \abs{D_{\alpha\beta}} \quad \forall j=-E,...,E
\end{equation}
where the triangle inequality, and the unit modulus of the complex number $e^{i (\beta -\alpha)k_j \Delta X}$ have been used.
Hence, the Courant number must be set so that the following condition is satisfied for all material points:
\begin{equation}
  \label{eq:stability} \sum_{\beta=1}^{N_p} \abs{D_{\alpha\beta}} \leq 1 \quad \forall \: \alpha = 1,...,N_p
\end{equation}
% The stability of the scheme is thus ensured by using the lowest CFL number satisfying \eqref{eq:stability}.
Note however that the use of the triangle inequality leads to a more severe constraint than the one really holding.
As a consequence, the Courant number can be set in practice to higher values than that resulting from the solution of \eqref{eq:stability}.

%According to scheme equations \eqref{eq:Euler_scheme} or \eqref{eq:RK2_scheme}, such a stability condition can be very hard to find analytically for general discretizations.
According to scheme equations \eqref{eq:Euler_scheme} or \eqref{eq:RK2_scheme}, the stability condition \eqref{eq:stability} can be very hard to find analytically for general discretizations.
Nevertheless, though the infinity of possible material point distributions prevents the explicit derivation of a general stability condition, the optimal CFL number satisfying the equality in \eqref{eq:stability} can be found numerically. Some configurations are studied in table \ref{tab:CFL_comparison} where the critical Courant number resulting from the two time discretizations studied above are compared. Those results have been obtained by using the same particle distribution in every element of a one-dimensional regular mesh.
% so that a material point $\alpha$ must lie between the nodes of the cell it belongs to, that is, $X^I \in \[X^{2c-1},X^{2c}\]$.
First, the DGMPM scheme is stable for all CFL numbers lower than or equal to one when cells contain one particle only regardless of their positions.
This property characterizes the FOU method that is retrieved with this discretization.
Then, when many material points share the same element, several configurations are considered:
\begin{itemize}
\item[(i)] particles are positioned symmetrically with respect to cell centers and regularly spaced in the mesh.
  This space discretization is referred to as the natural configuration in the following.
\item[(ii)] particles in the natural configuration are all shifted by $u=\Delta X/10$.
\item[(iii)] the same as (ii) with $u$ so that one material point overlaps every left node of the cells.
\item[(iv)] the same as (iii) for right nodes.
\item[(v)] particles are placed symmetrically with respect to cell centers but not regularly spaced in the mesh. Material points in the left half of cells are shifted by $u_1=-\Delta X/10$ while those in the right half are shifted by $u_2=\Delta X/10$.
\item[(vi)] the same as (v) with the first and last particles overlapping left and right nodes of cells respectively.
\end{itemize}
\begin{table}[h]
  \centering
  \input{chapter3/tabular/CFL_comparison}
  \caption{DGMPM critical Courant number values for Euler or RK2 time integration with respect to the number and positions of material points in a one-dimensional grid. Black circles denote material points while white ones represent grid nodes.}
  \label{tab:CFL_comparison}
\end{table}
%RK2 results bad when the upwind material point move to the right
%One can see in table \ref{tab:CFL_comparison} that the RK2 time discretization generally provides better results in terms of CFL number for the particles distributions considered. However, a uniform translation of material points in the mesh leads to a decrease in the Courant number for both time integrations.
First, table \ref{tab:CFL_comparison} shows that the natural configuration leads to a better stability bound for the RK2 integrator while the CFL number allowed by using Euler time discretization decreases with increasing numbers of particles per cell.
Second, moving every point rightward in the mesh (\textit{i.e. cases (ii) and (iv)}) causes a drop in the critical Courant number for both RK2 and Euler algorithms. In particular, stability conditions for more than two particles per cell provided by the RK2 are, in those cases, more restrictive than that of the Euler.
Third, the leftward shift (\textit{i.e. case (iii)}) leads to an improvement of the stability condition for Euler time integration compared to that in the natural configuration.
The CFL number provided by RK2 integration also decreases due to the shift while remaining higher than the Euler.
At last, particle distributions conserving the symmetry with respect to cell centers (\textit{i.e. cases (v) and (vi)}), yield the optimal stability condition for the RK2 integrator while the Euler CFL depends on the spacing between material points.
More specifically, the Euler algorithm leads to a vanishing CFL for the case (vi), thus preventing any simulation.

% In table \ref{tab:CFL_comparison}, we see that in the natural configuration, RK2 integrator leads to the optimal Courant number whereas the one allowed by using Euler discretization depends on the number of material points in cells. Next, those stability conditions become more restrictive when particles are uniformly translated leftward or rightward in the mesh, whit a more significant decrease in CFL number for a translation in the stream direction (\textit{i.e. cases (ii) and (iv)}). In particular, the RK2 algorithm may yields a lower stability bound than that of Euler approach in situation (iv) with more than two particles per cell.
% % Furthermore the impact of such a translation is more significant in the stream direction (\textit{i.e. cases (ii) and (iv)}) in such a way that the decline in CFL number is bigger than for an inverse stream direction (\textit{i.e. cases (iii)}).
% In the latter situation, the Euler algorithm provides even better results than in the natural configuration. One the other hand, particles distributions that conserve the symmetry with respect to cells centers lead to the optimal stability condition when using the RK2 time integration while the Euler CFL depends on the spacing between material points. More specifically, Euler algorithm leads to a vanishing CFL for the case (vi), thus preventing any simulation.
The distribution of material points, and therefore the resulting quadrature, has an influence on the stability of the scheme. The optimal Courant number can be reached even with the Euler discretization, whereas the classical DGFEM scheme developed in \cite{Chavent_Salzano} is restricted to condition $\Delta t / \Delta X = \Oc(\sqrt{\Delta X})$. This limitation has been addressed by introducing slope limiters in order to remove non-physical oscillations in the vicinity of sharp solutions while providing high-order accuracy in smooth regions \cite{Chavent_Cockburn}. However, the stability of the method is still bounded by $CFL\leq 1/2$ and the scheme is first-order accurate. The use of a second-order Runge-Kutta \cite{DGFEM_CFL} allows second-order accuracy of the scheme, but the stability condition then reduced to $CFL\leq1/3$. It is worth noting that space–time DGFEM formulations \cite{ST_DGFEM1,ST_DGFEM2} provided more recently the ability to relax constraints of pure space DGFEM and obtain a critical CFL of 1.

\subsection{Space convergence analysis of the one-dimensional scheme}
\label{sec:convergence}
We now propose to focus numerically on convergence properties of DGMPM schemes for linear elasticity problems in homogeneous solids undergoing one-dimensional stress and strain states so that the bar assumption under small strains holds.
The following system of one-dimensional linear scalar advection equations is then considered:
\begin{equation}
  \label{eq:conv_hyperbolic}
  \drond{}{t} \matrice{v \\ \sigma} -\drond{}{X}\matrice{\frac{1}{\rho}\sigma \\ Ev} = \matrice{0 \\0}
\end{equation}
in a bar of length $l=1\:m$, with Young's modulus $E=2\times10^{11}\: Pa$, and mass density $\rho=7800 \:kg\cdot m^{-3}$.
The bar is assumed to be initially motionless in a free-stress state, that is: $v(X,0)=0 \:;\:\sigma(X,0)=0 \quad \forall X \in [0,l]$, and subject to the following boundary conditions on its left and right ends respectively:
\begin{equation}
  \label{eq:conv_Bcs}
    \begin{aligned}
    &\sigma(X=0,t) = \tilde{\sigma} \sin\(\frac{0.4\pi t}{T}\)\\
    &\sigma(X=l,t) =0,  \qquad \forall t \in [0,T]
  \end{aligned}
\end{equation}
where $T=l/c$ is the time taken by waves to travel from one end of the bar to the other at the sound speed $c=\sqrt{\frac{E}{\rho}}$. The combination of the hyperbolic system \eqref{eq:conv_hyperbolic} and boundary conditions \eqref{eq:conv_Bcs} yields a Picard problem whose exact solution is \cite[Ch.2]{Wang}:
\begin{equation}
    \label{eq:exact_solution_convergence}
  \begin{aligned}
    &\sigma(X,t)=\tilde{\sigma} \sin\(\frac{0.4\pi (t-X/c)}{T}\) \\
    & v(X,t)=-\frac{\tilde{\sigma}}{\rho c}\sin\(\frac{0.4\pi (t-X/c)}{T}\), \quad \forall \:X, t \in \[0,l\]\times\[0,T\]
  \end{aligned}
\end{equation}
The continuum system \eqref{eq:conv_hyperbolic} is discretized with both MPM (the USF formulation is selected to limit the numerical dissipation) and DGMPM by using $2^i$ cells ($i=2,3,...,7$) each containing $N_p=2,3,4,8$ regularly spaced material points so that the regular grid size is $\Delta X= l/2^i$.
The refinement of the mesh operates on both nodes and particles in such a way that the number and position of material points per cell initially selected is held constant.
Configurations involving different numbers of particles per element are studied separately and the CFL number can therefore be set once and for all (optimal for DGMPM, and $0.5$ for the MPM).
Numerical solutions are then compared to the exact one \eqref{eq:exact_solution_convergence} according to the relative $L^2$ norm of the error, also referred to as the $L^2$ error $\epsilon$:
\begin{subequations}
  \begin{alignat}{1}
    \label{eq:L2_error_S}
    & \epsilon_\sigma(t) = \(\Delta X \sum_{\alpha=1}^{N_p}\frac{(\sigma_\alpha - \sigma_{\text{exact}}(X_\alpha,t))^2}{\sigma_{\text{exact}}(X_\alpha,t)^2}\)^{\frac{1}{2}} \\
    \label{eq:L2_error_V}
    & \epsilon_v(t) = \(\Delta X \sum_{\alpha=1}^{N_p}\frac{(v_\alpha - v_{\text{exact}}(X_\alpha,t))^2}{v_{\text{exact}}(X_\alpha,t)^2}\)^{\frac{1}{2}}
  \end{alignat}
\end{subequations}
The errors are computed at time $t=0.5 T$ so that no reflection of waves on the right boundary occur and the stress amplitude is set at $\tilde{\sigma}=4\times 10^4\:Pa$. Figure \ref{fig:convergence_stress} shows the evolution of the $L^2$ errors $\epsilon_\sigma$ with regard to the grid size for the MPM and the DGMPM using Euler and RK2 time discretizations for several numbers of particles per element.
We see that, despite the rates of convergence of stress are close to one (obtained by means of non-linear least squares fitting and reported in table \ref{tab:accuracy}), the DGMPM--Euler and DGMPM--RK2 exhibit lower rates compared to those of the MPM.
\begin{figure}[h!]
  \centering
  {\input{chapter3/pgfFigures/convS_2ppc.tex}\phantomsubcaption\label{subfig:convS_2ppc}}
  {\input{chapter3/pgfFigures/convS_6ppc.tex}\phantomsubcaption\label{subfig:convS_6ppc}}
  {\input{chapter3/pgfFigures/convS_10ppc.tex}\phantomsubcaption\label{subfig:convS_10ppc}}
  {\input{chapter3/pgfFigures/convS_20ppc.tex}\phantomsubcaption\label{subfig:convS_20ppc}}
  \caption{Evolution of the $L^2$ errors in stress with regard to the number of particles lying in every cell.}
  \label{fig:convergence_stress}
\end{figure}
\begin{table}[h!]
  \centering
  \input{chapter3/tabular/accuracy}
  \caption{Order of accuracy of MPM and DGMPM with regard to the number of particles per cell}
  \label{tab:accuracy}
\end{table}
Second, an increase in the number of particles per cell provides slightly higher convergence rates, according to table \ref{tab:accuracy}, and shifts DGMPM curves upward as can be seen in figures \ref{fig:convergence_stress}\subref{subfig:convS_2ppc} to \ref{fig:convergence_stress}\subref{subfig:convS_20ppc}.
On the other hand, the MPM error curves do not exhibit this behavior as observed in \cite{MPM_BSpline1}.
At last, for coarse grids (\textit{i.e.} $\Delta X= l/2^i$ for $i \leq 3$) the DGMPM--Euler leads to the lowest error but its smaller rate of convergence makes it quickly less accurate than the two other methods.
Similar behavior can be seen for the velocity, whose convergence curves are depicted in figure \ref{fig:convergence_velocity} for the same discretizations.
Again, the DGMPM shows lower rates of convergence than the MPM, and increasing the number of particles per cell leads to more error in DGMPM solutions.
The same order of accuracy for velocity and stress resulting from the DGMPM (see table \ref{tab:accuracy}) was expected since the weak form of system \eqref{eq:conv_hyperbolic} leads to the same approximation for both fields.
The MPM is on the other hand, as FEM, characterized by a higher order of convergence for velocity than stress owing to the use of shape function derivatives for the computation of gradients.
Hence, the MPM rate of convergence in terms of velocity is getting closer to two.

The loss of accuracy for velocity in DGMPM can be explained by the mapping procedure it uses from nodes to particles since the FLIP mapping has been introduced in order to reach second-order accuracy \cite{PIC_Nishiguchi}.
Convergence properties of the MPM using the PIC projection shown in table \ref{tab:accuracy} and figure \ref{fig:convergence_velocity} confirm the previous remark.
Indeed, modifying the way fields are projected from nodes to particles does not affect dramatically the rate of convergence of stress but leads to a significant decrease in velocity accuracy.
\begin{figure}[h!]
  \centering
  {\input{chapter3/pgfFigures/convV_2ppc.tex}\phantomsubcaption\label{subfig:convV_2ppc}}
  {\input{chapter3/pgfFigures/convV_6ppc.tex}\phantomsubcaption\label{subfig:convV_6ppc}}
  {\input{chapter3/pgfFigures/convV_10ppc.tex}\phantomsubcaption\label{subfig:convV_10ppc}}
  {\input{chapter3/pgfFigures/convV_20ppc.tex}\phantomsubcaption\label{subfig:convV_20ppc}}
  \caption{Evolution of the $L^2$ error in velocity with regard to the number of particles lying in every cell.}
  \label{fig:convergence_velocity}
\end{figure}

We now propose to set the Courant number to $0.1$ for the MPM and the DGMPM-Euler in order to compare the accuracy of those first order in time schemes with the same time steps.
\begin{figure}[h!]
  \centering
  {\label{subfig:lowCFL_stress}\input{chapter3/pgfFigures/convS_2ppclowCFL.tex}}
  {\label{subfig:lowCFL_velo}\input{chapter3/pgfFigures/convV_2ppclowCFL.tex}}
  \caption{Evolution of the $L^2$ errors in stress and velocity for two particles per cell. CFL set to 0.1.}
  \label{fig:convergence_lowCFL}
\end{figure}
% \begin{table}[h!]
%   \centering
%   \input{chapter3/tabular/accuracy_lowCFL}
%   \caption{Order of accuracy of MPM and DGMPM for two particles per cell and CFL number set to 0.1.}
%   \label{tab:accuracy_low}
% \end{table}
A comparison between the convergence curves obtained for a CFL set to $0.1$ and the previous results (\textit{i.e. figures \ref{fig:convergence_stress} and \ref{fig:convergence_velocity}}) is made in figure \ref{fig:convergence_lowCFL}.
The results first show that the order of accuracy of the DGMPM-Euler is also lower than that of the MPM when the same CFL is used in the methods.
Second, as can be seen in figure \ref{fig:convergence_lowCFL}, the reduction of the time step yields additional error which can be explained by the numerical diffusion introduced in the solutions.
As a consequence, the curves resulting from computations performed with a Courant number set to $0.1$ are above those obtained previously.
However, a lower CFL enables an improvement of the rates of convergence of the methods. Indeed, the rates of convergence for both velocity and stress are in that case $0.66$ for the DGMPM-Euler, and $1.00$ for the MPM.

Since the DGMPM aims at capturing non-regular solutions (discontinuities), its first-order of convergence is sufficient. Indeed, the achievable accuracy for such solutions is at most one \cite[p.149]{Leveque}.
Nevertheless, one might be interested in solving problems that involve smooth solutions so that the need for higher-order accuracy arises.
Although linear shape functions have been employed so far, the method may handle higher-order approximation by using Legendre polynomials or B-Spline functions for instance (higher-order Lagrange polynomials being to be avoided for moving particles \cite{MPM_BSpline1}).
Furthermore, DG features enable the local increase in the approximation order in regions where the solution is smooth.
Note however that the particle-based quadrature rule limits the shape function order one can select since few material points may lead to reduced integration.
This issue can however be avoided by means of function reconstruction techniques which build a (\textit{linear, quadratic etc.}) function on the grid that is based on the values a field takes at particle locations and which can be evaluated everywhere in a cell.
In particular, the use of \textit{moving least squares} \cite{IMPM} or \textit{spline interpolation} \cite{MPM_BSpline1,MPM_BSpline2} within the MPM, enables evaluation of a reconstructed function at Gauss point locations in order to improve the quadrature rule.
However, the introduction of such reconstruction techniques in the DGMPM might lead to a restrictive stability condition as it would make the method closer to DGFEM.

Finally, it is worth noticing that only regularly-spaced material points have been considered in the above convergence analysis.
An additional means of achieving high-order accuracy can be derived from the following theorem applying to the one-dimensional scalar linear advection equation with $a>0$:
\begin{theorem}[Roe \cite{Toro}]
  \label{th:Roe}
  A numerical scheme of the form:
  \begin{equation}
    \label{eq:scheme_Roe}
    Q^{n+1}_\alpha=\sum_{\beta=-\infty}^{\infty} D_{\beta} Q^{n}_{\alpha+\beta}
  \end{equation}
  is $p$th order accurate ($p\geq 0$) in space and time if and only if:
  \begin{equation}
    \label{eq:Roe_condition}
    \sum_\beta \beta^k D_{\beta} = \(-a\frac{\Delta t}{\Delta X}\)^k \quad 0 \leq k \leq p
  \end{equation}
\end{theorem}
The complexity of scheme equations \eqref{eq:Euler_scheme} and \eqref{eq:RK2_scheme} developed previously, and the lack of such equations for MPM formulations prevent the straightforward calculation of convergence rates.
% However, one can imagine to build adaption strategies of the set of particles based on theorem \ref{th:Roe}, so that a given order of accuracy is reached.
However, one can imagine the building of adaptive strategies of the set of particles based on theorem \ref{th:Roe}, so that a given order of accuracy is reached.
If such a distribution of material point exists, the corresponding Courant number can also be computed, thus ensuring both stability and accuracy of the numerical scheme.

\subsection{Two-dimensional stability analysis}
\subsubsection*{Model equation -- Space discretization}
We now move on to the scalar linear advection equation for an arbitrary quantity $q=\rho \bar{q}$ moving at constant speeds $a,b \in \Rbb^{+*}$ in the $X$ and $Y$ directions respectively in a homogeneous two-dimensional medium:
\begin{equation}
  \label{eq:2D_model_equation}
  \drond{\bar{q}}{t} + a\drond{\bar{q}}{X} + b\drond{\bar{q}}{Y}= 0
\end{equation}
Note that the flux functions are in this case $\bar{f}^X = a\bar{q}$ and $\bar{f}^Y = b\bar{q}$.
The physical domain $[0,l]\times[0,h]$ is discretized with $N_p$ material points arbitrarily distributed in a Cartesian grid made of $E$ four-node bilinear elements with constant size $\Delta X \times \Delta Y$.
\begin{figure}[h!]
  \centering
  \input{chapter3/pgfFigures/2Dparent}
  \caption{Parent and current configurations of a rectangular four-node bilinear element}
  \label{fig:2Dparent}
\end{figure}
With the nodal positions in cell $C$ denoted by $\vect{X}_i^C=\matrice{X^C_i \\ Y_i^C}$, as depicted in figure \ref{fig:2Dparent}, the current location $\vect{X}$ of an arbitrary point in cell $C$ maps to the parent coordinates $(\xi,\eta)$ in the domain $\[-1,1\]\times\[-1,1\]$ according to:
\begin{equation}
  \label{eq:parentCoordinates}
  \begin{aligned}
      &\xi = 2\frac{X-X^C_1}{\Delta X} -1 \quad ; \quad d\xi = 2\frac{dX}{\Delta X} \\
      &\eta = 2\frac{Y-Y^C_1}{\Delta Y} -1 \quad ; \quad d\eta = 2\frac{dY}{\Delta Y}
  \end{aligned}
\end{equation}
Horizontal and vertical edges lengths are distinguished here in spite of the Cartesian nature of the grid in order to easily extend the following study to rectilinear grids. Again, there are no empty cells inside the physical domain so that no hole is generated, and periodic boundary conditions are considered to simplify the analysis.

\subsubsection*{Two-dimensional scheme equation}
One can imagine the combination of the DGMPM discretization with a multi-stage time integration, as proposed for one-dimensional problems.
The analysis of the DGMPM scheme for two-dimensional problems carried out here however only considers the Euler time discretization.
%As we shall see, the use of the CTU method (see section \ref{subsec:interface_fluxes}) introduces second-order corrections in time within the original DCU approach.
Therefore, the updated solution at material point $\alpha$ is obtained by interpolation of nodal solutions satisfying equation \eqref{eq:2D_model_equation}, discretized as:
\begin{equation}
  \bar{q}_i^{n+1} = \bar{q}_i^n + \frac{\Delta t}{M^L_i} \(K_{ij}^X a\bar{q}_j^n + K_{ij}^Y b\bar{q}_j^n - \hat{f}_i^{*}\) \label{eq:discrete2D}
\end{equation}
so that:
\begin{equation}
  \label{eq:2D_updatedMP}
  \bar{Q}^{n+1}_\alpha = \sum_{i=1}^{4E}S_{i\alpha} \bar{q}_i^{n+1}
\end{equation}
The lumped mass matrix in equation \eqref{eq:discrete2D} has the same expression as in the one-dimensional case that depends on the shape functions of the four-node bilinear element: $M_i^L=\sum_\mu m_\mu S_{i\mu}$. Making use of parent coordinates \eqref{eq:parentCoordinates}, the pseudo-stiffness matrices read:
\begin{equation}
  \begin{aligned}
    & K_{ij}^X = \sum_\beta \drond{S_{i\beta}}{X}m_\beta S_{j\beta}=\frac{2}{\Delta X}\sum_\beta\drond{S_{i\beta}}{\xi}m_\beta S_{j\beta} \\
    &K_{ij}^Y = \sum_\beta\drond{S_{i\beta}}{Y}m_\beta S_{j\beta}=\frac{2}{\Delta Y}\sum_\beta\drond{S_{i\beta}}{\eta}m_\beta S_{j\beta} \\
  \end{aligned}
\end{equation}
As for the one-dimensional case, the homogeneous medium yields the same mass for every particle so that, by writing $\drond{(\bullet)}{\xi}=\partial_\xi(\bullet)$, one gets:
\begin{equation}
  \label{eq:2Dpseudo_stiffness}
  \begin{aligned}
    & \frac{K_{ij}^X}{M_i^L}  =  \frac{2}{\Delta X} \frac{\sum_\lambda\partial_\xi S_{i\lambda}  S_{j\lambda}}{\sum_\gamma  S_{i\gamma}} \\
    & \frac{K_{ij}^Y}{M_i^L} = \frac{2}{\Delta Y} \frac{\sum_\lambda\partial_\eta S_{i\lambda} S_{j\lambda}}{\sum_\gamma S_{i\gamma}}
  \end{aligned}
\end{equation}
The nodal solutions at time $n$ being given by the projection $\bar{q}^{C,n}_i=\frac{\sum_\beta S_{i\beta}\bar{Q}^n_\beta}{\sum_\gamma S_{i\gamma}}$, volume fluxes of the discrete form can be rewritten as:
\begin{equation}
  \label{eq:2Dvolume_fluxes}
  \begin{aligned}
    & a\frac{K_{ij}^X}{M_i^L}\bar{q}^n_j  = \sum_\beta \bar{Q}^n_\beta \frac{2}{\Delta X} \frac{a\sum_\lambda\partial_\xi S_{i\lambda}  \sum_j S_{j\lambda} S_{j\beta}}{\sum_\gamma  S_{i\gamma}\sum_\mu S_{j\mu}}\\
    & b\frac{K_{ij}^Y}{M_i^L}\bar{q}^n_j = \sum_\beta \bar{Q}^n_\beta\frac{2}{\Delta Y}  \frac{b \sum_\lambda\partial_\eta S_{i\lambda}  \sum_j S_{j\lambda} S_{j\beta}}{\sum_\gamma  S_{i\gamma}\sum_\mu S_{j\mu}}
  \end{aligned}
\end{equation}
Then, the nodal interface flux $\hat{f}_i^{*}$ results from the integration of Godunov fluxes along edges connected to the node, according to the weak form \eqref{eq:DGMPM_semi_discrete}.
Referring to a quantity defined at an interface by means of superscripts in parentheses, the Godunov flux corresponding to equation \eqref{eq:2D_model_equation} at interface $(i)$ is:
\begin{equation}
  \label{eq:2d_Godunov_fluxes}
  f^{(i)}= c_n q^{(i)}_U = \underbrace{c_nq^{(i)}_D}_{f_N(q^{(i)}_D)} - \underbrace{c_n (q^{(i)}_D -q^{(i)}_U)}_{A^{+}_{U/D}}
\end{equation}
where $c_n$ is the speed in the normal direction to the interface (\textit{i.e. b for horizontal and a for vertical edges}). Equation \eqref{eq:2d_Godunov_fluxes} further involves state vectors $q^{(i)}_U$ and $q^{(i)}_D$ obtained by averaging nodal values connected to interface $(i)$ on upwind and downwind sides respectively, and the right-going fluctuation $A_{U/D}^+$.
The CTU is adopted by subtracting from fluxes \eqref{eq:2d_Godunov_fluxes} transverse corrections based on those fluctuations according to equation \eqref{eq:transverse_fluctuations}:
\begin{equation}
  \label{eq:2D_transverse_corrections}
  B^+A^+_{U/D}=c_t c_n (q^{(i)}_D -q^{(i)}_U)
\end{equation}
with $c_t$ the speed in the tangent direction to the interface. The final expression of intercell fluxes is hence:
\begin{equation}
  \label{eq:CTU-fluxes}
  f^{(i)}= c_n q^{(i)}_U - c_t c_n \frac{\Delta t}{2\Delta X^{(i)}}(q^{(i)}_D -q^{(i)}_U)
\end{equation}
%with $\Delta X^{(i)}$ the length of edge $(i)$.
\begin{figure}[h!]
  \centering
  \input{chapter3/pgfFigures/2D_domain}
  \caption{Two-dimensional patch of cells of constant size $\Delta X \times \Delta Y$.}\label{fig:2Dmesh}
\end{figure}
Figure \ref{fig:2Dmesh} shows transverse corrections in the cell $C$ based on fluctuations coming from Bottom ($B$), Left ($L$), Bottom Left ($BL$) neighbor elements. The use of the numbering of interfaces and nodes adopted in figure \ref{fig:2Dmesh} allows the specialization of equation \eqref{eq:CTU-fluxes} to intercell fluxes of cell $C$:
\begin{align}
  & f^{(1)} = b \frac{q_3^{B,n} + q_4^{B,n}}{2} - a b \frac{\Delta t}{2\Delta Y}\(\frac{q_1^{B,n}+q_4^{B,n}}{2}-\frac{q_2^{BL,n}+q_3^{BL,n}}{2}\) \\
  & f^{(2)} = a \frac{q_2^{C,n} + q_3^{C,n}}{2} - a b \frac{\Delta t}{2\Delta X}\(\frac{q_1^{C,n}+q_2^{C,n}}{2}-\frac{q_3^{B,n}+q_4^{B,n}}{2}\) \\
  & f^{(3)} = b \frac{q_3^{C,n} + q_4^{C,n}}{2} - a b \frac{\Delta t}{2\Delta Y}\(\frac{q_1^{C,n}+q_4^{C,n}}{2}-\frac{q_2^{L,n}+q_3^{L,n}}{2}\) \\
  & f^{(4)} = a \frac{q_3^{L,n} + q_4^{L,n}}{2} - a b \frac{\Delta t}{2\Delta X}\(\frac{q_1^{L,n}+q_2^{L,n}}{2}-\frac{q_3^{BL,n}+q_4^{BL,n}}{2}\)
\end{align}
where $q^{C,n}_i= \rho \bar{q}^{C,n}_i$ is the value at time step $n$ and node $i$ of cell $C$. Denoting the number of particles in cell $C$ and the mass they carry by $N_p^C$ and $m^C$ respectively, the mass density reads $\rho = \frac{N_p^{C} m^C}{\Delta X \Delta Y}$. Thus, introduction of the particle fields projection yields the following expressions for interface fluxes:
\begin{align}
  & f^{(1)} = \sum_{\beta=1}^{N_p}\bar{Q}_\beta^n\frac{b N^C_p m^C }{2\Delta X \Delta Y} \[  \(\frac{S_{3\beta}^{B} }{\sum_\gamma S_{3\gamma}^{B}} + \frac{S_{4\beta}^{B}}{\sum_\gamma S_{4\gamma}^{B}}\) - a  \frac{\Delta t}{2\Delta Y}\(\frac{S_{1\beta}^{B}}{\sum_\gamma S_{1\gamma}^B} + \frac{S_{4\beta}^{B}}{\sum_\gamma S_{4\gamma}^{B} }-\frac{S_{2\beta}^{BL}}{\sum_\gamma S_{2\gamma}^{BL}} - \frac{S_{3\beta}^{BL}}{\sum_\gamma S_{3\gamma}^{BL}}\) \]\\
  & f^{(2)} = \sum_{\beta=1}^{N_p} \bar{Q}_\beta^n\frac{a N^C_p m^C }{2\Delta X \Delta Y} \[  \(\frac{S_{2\beta}^{C}}{\sum_\gamma S_{2\gamma}^{C}} + \frac{S_{3\beta}^{C}}{\sum_\gamma S_{3\gamma}^{C}} \)- b \frac{\Delta t}{2\Delta X}\(\frac{S_{1\beta}^{C}}{\sum_\gamma S_{1\gamma}^{C}} + \frac{S_{2\beta}^{C}}{\sum_\gamma S_{2\gamma}^{C}}-\frac{S_{3\beta}^{B}}{\sum_\gamma S_{3\gamma}^{B}} -\frac{S_{4\beta}^{B}}{\sum_\gamma S_{4\gamma}^{B}}\) \]\\
  & f^{(3)} =\sum_{\beta=1}^{N_p}\bar{Q}_\beta^n\frac{b N^C_p m^C}{2\Delta X \Delta Y} \[  \(\frac{S_{3\beta}^{C}}{\sum_\gamma S_{3\gamma}^{C}} + \frac{ S_{4\beta}^{C}}{\sum_\gamma S_{4\gamma}^{C}}\) - a  \frac{\Delta t}{2\Delta Y}\(\frac{S_{1\beta}^{C}}{\sum_\gamma S_{1\gamma}^{C}} + \frac{S_{4\beta}^{C}}{\sum_\gamma S_{4\gamma}^{C}}-\frac{S_{2\beta}^{L}}{\sum_\gamma S_{2\gamma}^{L}} - \frac{S_{3\beta}^{L}}{\sum_\gamma S_{3\gamma}^{L}}\) \]\\
  & f^{(4)} = \sum_{\beta=1}^{N_p}\bar{Q}_\beta^n\frac{a N^C_p m^C }{2\Delta X \Delta Y}  \[  \(\frac{S_{3\beta}^{L}}{\sum_\gamma S_{3\gamma}^{L}} + \frac{ S_{4\beta}^{L}}{\sum_\gamma S_{4\gamma}^{L}}\) - b \frac{\Delta t}{2\Delta X}\(\frac{S_{1\beta}^{L}}{\sum_\gamma S_{1\gamma}^{L}} + \frac{S_{2\beta}^{L}}{\sum_\gamma S_{2\gamma}^{L}}-\frac{S_{3\beta}^{BL}}{\sum_\gamma S_{3\gamma}^{BL}} - \frac{S_{4\beta}^{BL}}{\sum_\gamma S_{4\gamma}^{L}}\)\]
\end{align}
written for simplicity:
\begin{equation}
  \label{eq:interface_flux_mapped}
  f^{(i)}=\sum^{N_p}_\beta \bar{Q}_\beta^n \frac{c_n N^C_p m^C}{2\Delta X \Delta Y}\[ \phi_\beta^{(i)} + \phi_\beta^{(i),T} \]
\end{equation}
In the last expression, $\phi^{(i)}$ is devoted to normal contributions while $\phi^{(i),T}$ stands for transverse corrections at interface $(i)$. Numerical fluxes considered above are based on normal vectors oriented in the direction of the stream (see figure \ref{fig:2Dmesh}). Nodal interface fluxes on the other hand, as defined in the semi-discrete system:
%Fluxes contribute to nodes through the boundary integrals of the discrete form:
\begin{equation}
  \hat{f}_i^{*} = \int_{\Gamma} S_i(\vect{X}) f^*_N  \: d\Gamma
\end{equation}
are based on the outgoing flux to an element so that $f^{(1)}$ and $f^{(4)}$ must be counted negatively. The integral for cell $C$ is then:
\begin{equation}
  \hat{f}_i^{*} =  -\int_{X^C_1}^{X_2^C} S_i(X,Y^C_{1}) f^{(1)}  dX + \int_{Y^C_2}^{Y_3^C} S_i(X^C_{2},Y) f^{(2)}  dY +\int_{X^C_2}^{X_3^C} S_i(X,Y^C_{3}) f^{(3)}  dX -\int_{Y^C_1}^{Y_4^C} S_i(X^C_{1},Y) f^{(4)}  dY
\end{equation}
which can be computed analytically using parent coordinates \eqref{eq:parentCoordinates}:
\begin{subequations}
  \begin{alignat}{4}
    &\hat{f}_1^{*} = -&\frac{1}{2}\[\Delta X f^{(1)} + \Delta Y f^{(4)}\] \quad;\quad &\hat{f}_2^{*} = -&\frac{1}{2}\[\Delta X f^{(1)} - \Delta Y f^{(2)}\]\\
    &\hat{f}_3^{*} =  &\frac{1}{2}\[\Delta X f^{(3)} + \Delta Y f^{(2)}\] \quad;\quad &\hat{f}_4^{*} = &\frac{1}{2}\[\Delta X f^{(3)} - \Delta Y f^{(4)}\]
  \end{alignat}
\end{subequations}
A condensed way of writing those fluxes is adopted by means of the middle point of edge $(j)$ with coordinates $\vect{X}^{(j)}_{1/2}$, at which the shape functions are:
\begin{equation*}
  S_i(\vect{X}^{(j)}_{1/2}) =
  \left\lbrace
  \begin{aligned}
    & \frac{1}{2} \quad \text{if node i belongs to edge (j)} \\
    & 0 \quad \text{otherwise.}
  \end{aligned}
  \right.
\end{equation*}
In addition, components of the outward normal vector to edges $N^{(i)}_X$ and $N^{(i)}_Y$ allow taking into account different signs of intercell fluxes in the Cartesian grid. One thus writes:
\begin{equation}
  \hat{f}_i^{*}= \frac{1}{2}\sum_j^{\text{edges}} 2S_{i}(\vect{X}^{(j)}_{1/2})\(\Delta Y N^{(j)}_X + \Delta X N^{(j)}_Y\) f^{(j)}
\end{equation}
which, combined with equation \eqref{eq:interface_flux_mapped} leads to:
\begin{equation}
  \hat{f}_i^{*}= \sum^{N_p}_\beta \bar{Q}_\beta^n \sum_j^{\text{edges}} S_{i}(\vect{X}^{(j)}_{1/2})\(a\Delta Y N^{(j)}_X + b\Delta X N^{(j)}_Y\)  \frac{ N^C_p m^C}{2\Delta X\Delta Y}\[ \phi_\beta^{(i)} + \phi_\beta^{(i),T} \]
\end{equation}
These terms are divided by the lumped mass matrix in the discrete form:
\begin{equation}
  \label{eq:nodal_fluxes}
  \frac{\hat{f}_i^{*}}{M_i^L}=\sum_\beta \frac{\bar{Q}_\beta^n}{\sum_\mu S_{i\mu}}   \sum_{j=1}^{\text{edges}}\frac{1}{2} S_{i}(\vect{X}^{(j)}_{1/2}) N^C_p m^C \(\frac{aN^{(j)}_X}{\Delta X}  + \frac{bN^{(j)}_Y}{\Delta Y} \) \[\phi_\beta^{(j)} + \phi_\beta^{(j),T}\]
\end{equation}

At last, gathering the mapping of updated nodal quantities to the particles \eqref{eq:2D_updatedMP}, expressions of volume fluxes \eqref{eq:2Dvolume_fluxes} and intercell fluxes \eqref{eq:nodal_fluxes}, the updated value at material point $\alpha$ contained in cell $C$ reads:
\begin{equation}
  \label{eq:2Dscheme_equation}
  \begin{split}
    \bar{Q}_\alpha^{n+1}=  \sum_{\beta=1}^{N_p}\bar{Q}_\beta^n\sum_{i=1}^{4E}\frac{S_{i\alpha}}{\sum_\mu S_{i\mu}}  \left\lbrace \vphantom{\sum_{j=1}^{\text{edges}} } \right.& S_{i\beta} +  2  \sum_{j=1}^{4E} \frac{ S_{j\beta}}{\sum_\gamma S_{j\gamma}}\sum_{\lambda=1}^{N_p}S_{j\lambda}\[ a\frac{\Delta t}{\Delta X}\partial_\xi S_{i\lambda}  + b\frac{\Delta t}{\Delta Y} \partial_\eta S_{i\lambda} \] \\ - & \frac{1}{2}\left.\sum_{k=1}^{\text{edges}} S_{i}(\vect{X}^{(k)}_{1/2}) N_p^C \(a\frac{\Delta t}{\Delta X}N^{(j)}_X  + b\frac{\Delta t}{\Delta Y}N^{(j)}_Y \)\[\phi_\beta^{(k)} + \phi_\beta^{(k),T}\] \right\rbrace
  \end{split}
\end{equation}
Recall that transverse contributions $\phi_\beta^{(j),T}$ depend on $\Delta t$, thus providing second-order corrections in the two-dimensional scheme equation \eqref{eq:2Dscheme_equation}, that can also be rewritten as:
\begin{equation}
  \label{eq:2Dscheme_D_alphabeta}
  \bar{Q}_\alpha^{n+1}= \sum_{\beta=1}^{N_p}\bar{Q}_\beta^n D_{\alpha\beta}
\end{equation}

\subsubsection*{The von Neumann linear stability analysis}
Analogously to the one-dimensional case, the solution at a material point can be expanded into a discrete Fourier basis over the domain $\[-l,l\]\times\[-h,h\]$. We consider here a structured distribution of particles made of $N_p=N_p^X\times N_p^Y$ material points so that one can denote the solution at particles by $\bar{Q}_{\alpha\beta}$, where $\alpha$ and $\beta$ are the row and column of material point indices. For one arbitrary Fourier mode, one has \cite[Ch.20]{Leveque}:
\begin{equation}
\bar{Q}^{n}_{\alpha \beta} = A_{jq}^n e^{i (\alpha k_j + \beta k_q)\Delta X}
\end{equation}
where $k_j$ and $k_q$ are wave numbers. Then, the amplification factor reads:
\begin{equation}
\frac{A_{jq}^{n+1}}{A_{jq}^n} =  \sum_{\gamma=1}^{N_p^X}\sum_{\mu=1}^{N_p^Y} e^{i ([\alpha-\gamma]k_j + [\beta-\mu]k_q)\Delta X}D_{\alpha\beta,\gamma\mu}
\end{equation}
with $i=\sqrt{-1}$. The requirement that the absolute value of the amplification factor is lower than or equal to one leads to the following stability condition:
\begin{equation}
\abs{\frac{A_{jq}^{n+1}}{A_{jq}^n}} = \abs{\sum_{\gamma=1}^{N_p^X}\sum_{\mu=1}^{N_p^Y} e^{i ([\alpha-\gamma]k_j + [\beta-\mu]k_q)\Delta X}D_{\alpha\beta,\gamma\mu}} \leq 1 \Leftrightarrow  \sum_{\gamma=1}^{N_p^X}\sum_{\mu=1}^{N_p^Y} \abs{D_{\alpha\beta,\gamma\mu}} \leq 1
\end{equation}
or more simply:
\begin{equation}
\label{eq:2D_stability}
\sum_{\beta=1}^{N_p} \abs{D_{\alpha\beta}} \leq 1 \quad \forall \alpha=1,...,N_p
\end{equation}

Again, the single particle-per-cell discretization leads to a piece-wise constant reconstruction of the field on the computational grid after the projection from material points to nodes, thus providing the first order upwind method. This method is known to be bounded by the stability requirements \cite[Ch.20]{Leveque}:
\begin{subequations}
  \begin{alignat}{2}
    \label{eq:2DCFL_DCU}
    & \abs{a}\frac{\Delta t}{\Delta X} + \abs{b} \frac{\Delta t}{\Delta Y} \leq 1 \qquad &\text{for DCU} \\
    \label{eq:2DCFL_CTU}
    & \max \( \abs{a} \frac{\Delta t}{\Delta X}  , \abs{b} \frac{\Delta t}{\Delta Y}\) \leq 1 \qquad &\text{for CTU}
  \end{alignat}
\end{subequations}

Configurations involving more particles in the computational grid cells are then studied numerically by assuming the same material points distribution in every element.
Furthermore, we consider only regular cells $\Delta Y = \Delta X$ and wave speeds satisfying $a\geq b >0$, so that Courant the number is $a\Delta t/\Delta X$.
%Coefficients $D_{\alpha \mu}$ depending on both horizontal and vertical wave speeds, the scheme equation \eqref{eq:2Dscheme_D_alphabeta} can be written as a function of the CFL number by means of the speed ratio  $a/b$.
The scheme equation \eqref{eq:2Dscheme_D_alphabeta} can then be written as a function of the CFL number by means of the speed ratio  $a/b$.
Hence, the maximal Courant number satisfying the stability condition \eqref{eq:2D_stability} also depends on the speed ratio.
Evolutions of the CFL numbers corresponding to several distributions of particles in a two-dimensional grid are gathered in tables \ref{tab:2DCFL_comparison_2ppc} and \ref{tab:2DCFL_comparison_4ppc} for the DGMPM scheme using DCU and CTU methods.
The first column of these tables shows the positions of material points inside cells for discretizations based on $2$ or $4$ particles per element.

%% 2ppc
The space discretization leading to $2$ particles lying in every cell of the mesh is such that within an element, the two material points are both either on the horizontal axis or on the vertical axis of the cell, corresponding respectively to the results reported in the first and second rows of table \ref{tab:2DCFL_comparison_2ppc}.
Two situations are then to be distinguished:
\begin{itemize}
\item Material points are regularly-spaced within the grid and placed symmetrically two-by-two with respect to cell centers.
  These distributions are drawn in the first column of table \ref{tab:2DCFL_comparison_2ppc} by using blue circles to represent particles.
\item Material points still satisfy symmetry in cells, but are no longer regularly-spaced in the mesh. In that case, particles are drawn with red crosses.
\end{itemize}
\begin{table}[h]
  \centering
  \input{chapter3/tabular/2DCFL_comparison_2ppc}
  \caption{Values of critical Courant number $a\frac{\Delta t}{\Delta X}$ for two-dimensional DGMPM scheme using either DCU or CTU with respect to the locations of the $2$ material points lying in every cell as a function of the speed ratio $a/b$.}
  \label{tab:2DCFL_comparison_2ppc}
\end{table}
First, the results of table \ref{tab:2DCFL_comparison_2ppc} show that the CFL number exhibits a non-linear dependence on the speed ratio $a/b$ that asymptotically approaches some value which depends on the particle distribution.
Second, we see that a reduction of spacing between particles conserving the symmetry between them with respect to cell centers, as for the one-dimensional case, yields an increase in the critical Courant number for both the DCU and CTU approaches.
Third, whether particles lie on the horizontal axis or the vertical axis of cells has a great influence on the critical Courant number one can expect.
Hence, the configurations of the second row of table \ref{tab:2DCFL_comparison_2ppc} yield higher CFL numbers for given speed ratios.
It then appears that in order to improve the stability of the scheme, one must use a lower number of material points in the direction of the dominating wave speed than in the perpendicular one. For a Cartesian distribution of particles $N_p^X \times N_p^Y$ this corresponds to $N_p^Y > N_p^X$ if $a>b$, and $N_p^X > N_p^Y$ if $b>a$.
At last, it is worth noticing that the improvement brought by the CTU is much less significant than in the case of one single particle-per-cell discretization for which the Courant number can be set to one according to equations \eqref{eq:2DCFL_DCU} and \eqref{eq:2DCFL_CTU}.

%% 4ppc
We now move on to cases for which grid cells each contain $4$ material points, by considering a square shaped distribution of particles in every element whose centers coincide with cell centroids.
This pattern can be contracted or simply translated without change of shape as depicted in the first column of table \ref{tab:2DCFL_comparison_4ppc}.
Two configurations are gathered in each row of the table and are distinguished by using either blue circles or red crosses for material points.
Again, we observe that the increase in CFL number enabled by the use of the CTU approach is less important than in the case of one particle-per-cell.
Next, as for the one-dimensional cases and configurations studied in table \ref{tab:2DCFL_comparison_2ppc}, we see that the closer particles are from cell centers, the higher the CFL number.
Finally, it can be seen from the two last rows of table \ref{tab:2DCFL_comparison_4ppc} that the translation of the square of particles inside elements does not have great influence on the evolution of the Courant number with respect to the speed ratio.
\begin{table}[h!]
  \centering
  \input{chapter3/tabular/2DCFL_comparison_4ppc}
  \caption{Values of critical Courant number $a\frac{\Delta t}{\Delta X}$ for two-dimensional DGMPM scheme using either DCU or CTU with respect to the material points distribution as a function of the speed ratio $a/b$.}
  \label{tab:2DCFL_comparison_4ppc}
\end{table}

%Before concluding this chapter, some differences between the stability properties of DGMPM and MPM schemes are emphasized. First, the one and two-dimensional scheme equations written for the DGMPM enable, through the linear von Neumann stability analysis, the computation of
%The von Neumann linear stability analysis performed in this section provides an explicit (nonlinear) condition \eqref{eq:stability} that must be satisfied in order to ensure the stability of DGMPM schemes. First, this relation allows to fully exploit the ability of the method to rebuild the grid mesh arbitrarily. Indeed, after such a procedure, the number and positions of material points in grid cells can change and one must be able to adapt properly the CFL number so that the scheme remains stable. An advantage on the original MPM is hence highlighted since no stability condition exists for the method. Second, it has been shown that some DGMPM discretizations provide an improvement of the restrictive CFL number that applies to the DGFEM scheme. In particular, the optimal condition allowing to capture discontinuities ($CFL=1$) can be achieved for several space-time discretizations. This property turns out to be a strength for the DGMPM since it aims at follow waves accurately.

%One can imagine to place material points so that an optimal stability condition is reached by minimizing some functional constrained with the description of material boundaries.

%%% Local Variables:
%%% mode: latex
%%% ispell-local-dictionary: "american"
%%% TeX-master: "../mainManuscript"
%%% End:


%!TEX root = ../main.tex
\section{Introduction}\label{section:introduction}

The Barab\'asi-Albert (BA) model is a model for generating scale-free networks with a preferential attachment mechanism \citep{Barabasi1999}. It has been extensively studied in many fields for its resemblance to real-world networks such as the internet and citation networks. The fat tail is a central characteristic in the model. Every new vertex attaches itself to existing vertices with a probability proportional to its degree, so that vertices with a higher degree are more likely to further increase its degree count, leading to a scale free degree distribution.

There are two key parts to this model: growth and preferential attachment. The random attachment model is a limiting case of the BA model where it retains growth but does not include preferential attachment. Here we show that the resulting degree distribution in this limit is no longer scale-free but geometric.

Recent works \citep{Saramaki2004,Cannings2013,J.P.Saramaki2004} have also investigated if preferential attachment can be reproduced without a global knowledge of the entire network, by performing a random walk on th graph. In this project we briefly look at the of such a model and whether it reproduces the power law for preferential attachment.