\documentclass{beamer}
\usepackage[utf8]{inputenc}
\usetheme{Madrid}
\usepackage{amssymb}
\usepackage{pifont}
\usepackage{xcolor}
\usepackage{bigints}
\usepackage{mathrsfs}
\definecolor{mblue}{rgb}{0.18,0.21,0.67}
\definecolor{dgreen}{rgb}{0.,0.6,0.}
\newcommand{\cmark}{{\color{dgreen}\ding{52}}}%
\newcommand{\xmark}{{\color{red}\ding{55}}}%
\newcommand{\bmark}{{\color{orange}$\sim$}}%
\newcommand{\arrow}{{{\color{mblue}\ding{220}}}}
\newcommand{\mbold}[1]{\textbf{\color{mblue}#1}}
%\usepackage{marvosym}
\usepackage{soul}

\usepackage{multicol}

\usepackage{amsmath}
\usepackage{cancel}
\DeclareMathOperator*{\argmax}{argmax}
\DeclareMathOperator*{\argmin}{argmin}

% bibliography
\usepackage[backend=bibtex, style=authoryear-comp]{biblatex}
\usepackage{filecontents}
%\newcommand{\customcite}[1]{\citeauthor{#1}, \citetitle{#1}, \citeyear{#1}}
\newcommand{\customcite}[1]{\citeauthor{#1} (\citeyear{#1})}

\bibliography{refs}

\beamertemplatenavigationsymbolsempty
%for backup slides
\newcommand{\backupbegin}{
   \newcounter{finalframe}
   \setcounter{finalframe}{\value{framenumber}}
}
\newcommand{\backupend}{
   \setcounter{framenumber}{\value{finalframe}}
}

\AtBeginSection[
  {\frame<beamer>{\frametitle{Outline}
    \tableofcontents[currentsection,currentsection]}}%
]%
{
  \frame<beamer>{
    \frametitle{Outline}
    \tableofcontents[currentsection,currentsection]}
}

\title[NumKin 2019]{Exponential methods for solving hyperbolic problems with application to kinetic equations}
%\subtitle{Optimisation de WENO pour Vlasov-Poisson}
\author[J. Massot]{N. Crouseilles \inst{1,2} \and L. Einkemmer \inst{3} \and \underline{J. Massot} \inst{2,1}}
\institute[IRMAR]{\inst{1} Inria Rennes -- Bretagne Atlantique \and \inst{2} IRMAR, Université de Rennes \and \inst{3} University of Innsbruck}
\date{December 10, 2019}

% \defbeamertemplate*{title page}{customized}[1][]
% {
%   \vfill
%   {\usebeamerfont{title}\inserttitle}\par
%   {\usebeamerfont{subtitle}\usebeamercolor[bg]{subtitle}\insertsubtitle}\par
%   \bigskip
%   \vfill
%   \hfill\usebeamerfont{author}\insertauthor\par\par
%   \hfill\textcolor{black}{Encadré par~: Anaïs Crestetto\\\hfill et Nicolas Crouseilles}\par
%   \vfill
%   \hfill\usebeamerfont{date}\insertdate
% }

\begin{document}

\begin{frame}[plain]
  \titlepage
\end{frame}

\begin{frame}{Outline}
  \tableofcontents
\end{frame}

\section{Motivation for Vlasov-Poisson equations}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{frame}{Vlasov-Poisson equations 1D$\times$1D}
  Our model: a non-linear transport in $(x,v)\in\Omega\times\mathbb{R}$ of an electron density distribution $f=f(t,x,v)$:
  $$
    \begin{cases}
      \partial_t f + v\partial_x f + E\partial_v f = 0 \\
      \partial_x E = \int_{\mathbb{R}} f\,\mathrm{d}v - 1
    \end{cases}
  $$

  \textbf{\color{mblue} Motivation:}
  \begin{itemize}
    \item We want high order methods in $(x,v)$
    \item We want high order methods in time $t$:
      \begin{itemize}
        \item Splitting methods: could have a lot of steps
        \item Runge-Kutta methods: stability constraints (CFL condition)
          \begin{itemize}
            \item The most restrictive CFL condition is associated with the linear part ($\partial_tf + v\partial_x f=0$)
          \end{itemize}
      \end{itemize}
    \end{itemize}
    \arrow We want to propose a compromise: exponential integrators.
\end{frame}
%-------%
\begin{frame}{Vlasov-Poisson equations 1D$\times$1D}
  Fourier transform in $x$ direction of Vlasov, amenable to exponential integrators:
  $$
    \partial_t\hat{f} + ikv\hat{f} + \widehat{E\partial_v f} = 0
  $$

  Vlasov is of the form:
  $$
    \dot{u} = iau + F(u)
  $$
  Variation of constant: $\partial_t(e^{-iat}u) = e^{-iat}F(u)$. No more CFL in $x$ of the form $\Delta t\leq \sigma\frac{\Delta x}{v_\text{max}}$ with $[-v_\text{max},v_\text{max}]\equiv\mathbb{R}$.

  Time integration:
  $$
    u(t_n+\Delta t) = \exp(ia\Delta t)u(t_n) + \int_0^{\Delta t}\exp(ia(\Delta t-s))F(u(t_n+s))\,\mathrm{d}s
  $$
  with $\Delta t>0$, $t_n = n\Delta t$ with $n\in\mathbb{N}$

  Linear part is exact! \cmark
\end{frame}
%-------%
\begin{frame}{Idea of exponential integrators}
  \textbf{\color{mblue} 2 classes of methods:}
  \begin{description}
    \item[\textbf{exponential Runge-Kutta:}] solve exactly what we can, and interpolate the rest. For example first order exponential Euler method:
      $$
        u(t_n+\Delta t) \approx u^{n+1} = e^{-ia\Delta t}u^n + \Delta t\varphi_1(ia\Delta t)F(u^n)
      $$
      where $\varphi_1(z) = \dfrac{e^z - 1}{z}$
      \begin{thebibliography}{9}
        \setbeamertemplate{bibliography item}[article]
        \bibitem{a} \customcite{Hochbruck:2010}
      \end{thebibliography}
    \item[\textbf{Lawson:}] Change of variable: $v(t)=e^{-iat}u(t)$, we solve with a RK method: $\dot{v} = \tilde{F}(t,v) = e^{-iat}F(e^{iat}v(t))$

      For example, Lawson Euler method:
      $$
        v(t_n+\Delta t)\approx v^{n+1} = v^n + \Delta t e^{-iat_n}F(e^{iat_n}v^n)
      $$
      or as an expression of $u$:
      $$
        u^{n+1} = e^{-ia\Delta t}u^n + \Delta te^{ia\Delta t}F(u^n)
      $$
      \begin{thebibliography}{9}
        \setbeamertemplate{bibliography item}[article]
        \bibitem{a} \customcite{Isherwood:2018}
      \end{thebibliography}
  \end{description}
\end{frame}

\section{Linear analysis}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}{Reminder of stability tools}
  \only<1>{
    If we want to study stability of:
    $$
      \partial_t u + \partial_x u = 0
    $$
    with centered scheme (CD2) $(\partial_xu)_j \approx \frac{1}{2\Delta x}(u_{j+1}-u_{j-1})$. After a Fourier transform (\emph{von Neumann analysis}):
    $$
      \dot{u} + i\frac{\sin(k\Delta x)}{\Delta x}u = 0
    $$
    Explicit Euler method in time: we have to stretch \mbold{eigenvalues} (or \mbold{Fourier symbol}) of CD2 into explicit Euler \mbold{stability domain}.
  } \only<2>{
    \begin{figure}\centering
      \includegraphics[height=0.8\textheight]{img/cfl_example.png}
    \end{figure}
  }
\end{frame}
%-------%
\begin{frame}{From linear Vlasov equation to toy model}
  Linear Vlasov equation:
  $$
    \partial_t f + a\partial_x f + b\partial_v f = 0
  $$
  Fourier transform in $x$, CD2 in $v$ plus a Fourier transform in $v$, formally:
  $$
    \frac{\mathrm{d}f}{\mathrm{d}t} + iak f + b\frac{i\sin(\varphi)}{\Delta v}f = 0
  $$
  \mbold{Toy model:}
  $$
    \dot{u} + iau + \lambda u = 0
  $$
  with $a\in\mathbb{R}$, $\lambda\in\mathbb{C}$ (diffusive scheme for example).

  $\lambda$ is the Fourier symbol (or eigenvalues) of FD method to approximate $\partial_vf$.
\end{frame}
%-------%
\begin{frame}{Phase discretization}
  In $v$ direction we use a FD method:
  \begin{itemize}
    \item CD2 (centered difference of order 2): $(\partial_v f)(v_j)\approx \dfrac{f_{j+1}-f_{j-1}}{2\Delta v}$
    \item WENO5 (weighted essentially non-oscillatory of order 5):
      \begin{itemize}
        \item WENO5: non linear scheme: \st{Von Neumann analysis}
        \item LW5 (linearized WENO5): linear scheme (this is Lagrange interpolation of order 5)
      \end{itemize}
      $$
        (\partial_vf)(v_j)\approx\frac{1}{\Delta v}\left(-\frac{1}{30}f_{j-3} + \frac{1}{4}f_{j-2} - f_{j-1} + \frac{1}{3}f_j + \frac{1}{2}f_{j+1} - \frac{1}{20}f_{j+2}\right)
      $$

\begin{thebibliography}{9}
  \setbeamertemplate{bibliography item}[article]
  \bibitem{Wang:2007} \customcite{Wang:2007}
  \bibitem{Motamed:2010} \customcite{Motamed:2010}
\end{thebibliography}

  \end{itemize}
\end{frame}
%-------%
\begin{frame}{Fourier symbols}
  \begin{figure}\centering
    \includegraphics[height=0.8\textheight]{img/weno.png}
  \end{figure}
\end{frame}

\subsection{Lawson methods}
%------------------------------------------------------------------------------
\begin{frame}{Lawson methods stability domain}
  For our toy model:
  $$
    \dot{u} = iau + \lambda(u)
  $$
  Change of variable: $v(t) = e^{-iat}u(t)$
  $$
    \dot{v} = e^{-iat}\lambda e^{iat}v
  $$
  Apply a Runge-Kutta method to compute stability function of Lawson method:
  $$
    v^{n+1} = \underbrace{p(\lambda\Delta t)}_{\text{stability function of RK}}v^n
  $$
  \emph{i.e.}:
  $$
    u^{n+1} = \overbrace{p(\lambda\Delta t)e^{-ia\Delta t}}^{\text{stability function of Lawson}}u^n
  $$
  Stability domain: $\mathcal{D}=\left\{z\in\mathbb{C},|p(z)|\leq 1\right\}$ of Lawson method is \textbf{the same} as the underlying Runge-Kutta method \textbf{because} $ia\in i\mathbb{R}$
\end{frame}
%-------%
\begin{frame}{Considered $Lawson(RK(s,p))$ methods}
  \begin{figure}\centering
    \includegraphics[height=0.8\textheight]{img/rk_sd.png}
  \end{figure}
\end{frame}
%-------%
\begin{frame}{Lawson methods -- CD2}
  For stability between a Lawson method and CD2, we solve:
  $$
    |p(iy)| = 1,\quad y\in\mathbb{R}
  $$
  \begin{table}
    \centering
    \begin{tabular}{|c|c|c|c|}
      \hline
      Methods & Lawson($RK(3,2) \; best$) & Lawson($RK(3,3)$) & Lawson($RK(4,4)$) \\
      \hline
      $y_{\max}$ & $2$ & $\sqrt{3}$ & $2\sqrt{2}$\\
      \hline
    \end{tabular}
    \caption{CFL number for some Lawson schemes}
  \end{table}
\begin{thebibliography}{9}
  \setbeamertemplate{bibliography item}[article]
  \bibitem{} \customcite{Baldauf:2008}
\end{thebibliography}
\end{frame}
%-------%
\begin{frame}{Lawson methods -- LW5}
  \begin{columns}
    \begin{column}{0.5\textwidth}
      \includegraphics[width=\textwidth]{img/cfl_scheme}
    \end{column}
    \begin{column}{0.5\textwidth}
      \includegraphics[width=\textwidth]{img/cfl_rk44_weno.png}
    \end{column}
  \end{columns}
\end{frame}
%-------%
\begin{frame}{Lawson methods -- LW5: CFL estimates}
  \begin{table}
    \centering
    \begin{tabular}{|c|c|c|c|}
      \hline
      Methods & Lawson($RK(3,2) \; best$) & Lawson($RK(3,3)$) & Lawson($RK(4,4)$) \\
      \hline
      $\sigma $ & $1.344$ & $1.433$   & $1.73$   \\
      \hline
    \end{tabular}
    \caption{CFL number for some Lawson schemes.}
  \end{table}
\begin{thebibliography}{9}
  \setbeamertemplate{bibliography item}[article]
  \bibitem{} \customcite{Motamed:2010}
  \bibitem{} \customcite{Lunet:2017}
\end{thebibliography}
\end{frame}

\subsection{Exponential Runge-Kutta methods}
%------------------------------------------------------------------------------

\begin{frame}{Exponential Runge-Kutta methods}
  $$
    \dot{u} = iau + F(u)
  $$
  Example on ExpRK(2,2):
  $$
    \begin{aligned}
      u^{(1)} &= e^{-ia\Delta t}u^n - \Delta t\varphi_1 F(u^n) \\
      u^{n+1} &= e^{-ia\Delta t}u^n - \Delta t\left[ (\varphi_1-\varphi_2)F(u^n) + \varphi_2F(u^{(1)}) \right]
    \end{aligned}
  $$
  % $$
  %   \begin{aligned}
  %     u^{(1)} &= u^n(1+ia\varphi_{1,2}) + ia\Delta t\varphi_{1,2}F(u^n) \\
  %     u^{n+1} &= u^n(1+ia\Delta t\varphi_1) + \frac{\Delta t}{2}\varphi_1F(u^n)+\frac{\Delta t}{2}\varphi_1F(u^{(1)})
  %   \end{aligned}
  % $$

  Stability function becomes:
  $$
    p_{\text{ExpRK(2,2)}}(z) = \frac{1}{2}\varphi_1\varphi_{1,2}z^2 + (\varphi_1+i\frac{\varphi_1\varphi_{1,2}}{2}a)z + 1 + i\varphi_1a
  $$

  Stability domain depends of $a\Delta t$\dots \xmark
\end{frame}
%-------%
\begin{frame}{}
  \only<1>{
    \begin{figure}\centering
      \includegraphics[height=0.7\textheight]{img/expRK22_sd.png}
      \caption{Stability domain of ExpRK(2,2) for $a\Delta t\in\{1.1, 3.4\}$}
    \end{figure}
  }
  \only<2>{
    \begin{figure}\centering
      \includegraphics[height=0.7\textheight]{img/CM_sd.png}
      \caption{Stability domain of Cox-Matthews for $a\Delta t\in\{1.1, 3.4\}$}
    \end{figure}
  }
  \only<3>{
    \begin{figure}\centering
      \includegraphics[height=0.7\textheight]{img/K_sd.png}
      \caption{Stability domain of Krogstad for $a\Delta t\in\{1.1, 3.4\}$}
    \end{figure}
  }
  \only<4>{
    \begin{figure}\centering
      \includegraphics[height=0.7\textheight]{img/HO_sd.png}
      \caption{Stability domain of Hochbruck--Ostermann for $a\Delta t\in\{1.1, 3.4\}$}
    \end{figure}
  }
\end{frame}
%-------%
\begin{frame}{Stability domain informations}
  Fourier symbol must fit in the stability domain of ExpRK method \textbf{for all} values of $a\Delta t\in\mathbb{R}$.
  \begin{description}
    \item[\xmark] Impossible with WENO5 (LW5 Fourier symbol) \begin{description}\item[$\rightarrow$] Numerical test: unstable in very short time\end{description}
    \item[\cmark] Singleton $\{0\}$ is alway in stability domain of ExpRK method for each values of $a\Delta t$
      \begin{description}
        \item[$\rightarrow$] We can try to stabilize CD2
        \item[\xmark] SPOILER: CFL is equal to zero
      \end{description}
  \end{description}
\end{frame}
%-------%
\begin{frame}{ExpRK -- CD2}
  \only<1>{
    \begin{figure}\centering
      \includegraphics[width=0.5\textwidth]{img/ymax_CM_example1.png}
    \end{figure}
  }
  \only<2>{
    \begin{figure}\centering
      \includegraphics[width=0.5\textwidth]{img/ymax_CM_example2.png}
    \end{figure}
  }
  $y^{exp}_\text{max} = \min(y_+,|y_-|)$ the largest value to stretch $i[-1,1]$ into the stability domain at $a\Delta t$
\end{frame}
%-------%
\begin{frame}{ExpRK -- CD2: CFL number}
  \begin{figure}\centering
    \includegraphics[width=\textwidth]{img/ymax_CM.png}
  \end{figure}
  CFL $y_\text{max} = \min_{a\Delta t}y^{exp}_\text{max}$ is still 0\dots
\end{frame}
%-------%
\begin{frame}{ExpRK -- CD2: Relaxed CFL condition}
  \only<1>{
    $$\mathcal{D}_\varepsilon = \left\{z\in\mathbb{C},|p(z)|\leq1+\varepsilon\right\}$$
    \begin{columns}
      \begin{column}{0.5\textwidth}\centering
        \includegraphics[height=0.6\textheight]{img/CM_sd_ymax_e0p00.png}
        Cox-Matthews stability domain, relaxation $\varepsilon = 0$
      \end{column}
      \begin{column}{0.5\textwidth}\centering
        \includegraphics[height=0.6\textheight]{img/CM_sd_ymax_e0p01.png}
        Cox-Matthews stability domain, relaxation $\varepsilon = 10^{-2}$
      \end{column}
    \end{columns}
  }\only<2>{
    \begin{figure}\centering
      \includegraphics[width=\textwidth]{img/ymax_CM_relax.png}
    \end{figure}
    Relaxed CFL $y_\text{max}(\varepsilon=10^{-2}) \approx 0.450 \neq 0$ ! (but unstable in theory)
  }
\end{frame}
%-------%
\begin{frame}{ExpRK -- CD2: Relaxed CFL estimates}
  \begin{table}
    \centering
    \begin{tabular}{|c|c|c|c|c|}
      \hline
      Methods                                & ExpRK22 & Krogstad & Cox--Matthews & Hochbruck \\
                                             &         &          &               & --Ostermann \\
      \hline
      $y_{\max} (\varepsilon=10^{-3})$ & $0.300$ & $0.100$  & $0.150$      & $0.250$ \\
      \hline
      $y_{\max} (\varepsilon=10^{-2})$ & $0.551$ & $0.200$  & $0.450$      & $0.501$ \\
      \hline
      $y_{\max} (\varepsilon=10^{-1})$ & $1.001$ & $0.601$  & $1.351$      & $1.702$ \\
      \hline
    \end{tabular}
    \caption{CFL number, assuming the relaxed stability constraint, for some exponential integrators.}
    It's unstable in theory, in practice, number of iterations is finished, so amplification is controlled.
  \end{table}
\end{frame}

\section{Numerical simulation: Vlasov-Poisson equations}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{frame}{Vlasov-Poisson equations}
  $$
    \begin{cases}
      \partial_tf + v\partial_xf + E\partial_vf = 0 \\
      \partial_xE = \int_{\mathbb{R}} f\,\mathrm{d}v - 1
    \end{cases}
  $$

  \mbold{Numerical tools:}
  \begin{itemize}
    \item FFT in $x$ direction
    \item CD2 or WENO5 in $v$ direction
    \item $Lawson(RK(s,p))$ or ExpRK method in time $t$
  \end{itemize}

  \mbold{CFL:} $\Delta t_n \leq \dfrac{C\Delta v}{||E^n||_{\infty}} \leq \dfrac{C\Delta v}{\max_n||E^n||_{\infty}}$ where $C = y_\text{max}$ or $\sigma$ from the linear theory.

  \

  We can choose: $\Delta t = \min\left( 0.1 , \dfrac{C\Delta v}{\max_n||E^n||_{\infty}} \right)$
\end{frame}
%-------%
\begin{frame}{Landau damping}
  $$
    f(t=0,x,v) = f_0(x,v) = \frac{1}{\sqrt{2\pi}}e^{-\frac{v^2}{2}}(1+0.001\cos(0.5x))
  $$
  $x\in[0,4\pi]$, $v\in[-8,8]$, $N_x = 81$, $N_v=128$

  \

  Because of damping:
  $$
    \max_n||E^n||_{\infty} = ||E^0||_\infty
  $$
  So, we choose $\Delta t = 0.1$ (with $\Delta t = 100$ it is still stable!)
\end{frame}
%-------%
\begin{frame}{Landau damping: numerical results}
  \only<1>{
    \begin{figure}
      \centering
      \resizebox{!}{.7\paperheight}{\input{img/hn}}
      \caption{Landau damping test: time history of the CFL condition (semi-log scale).}
      \label{ld}
    \end{figure}
  }\only<2>{
    \begin{figure}
      \centering
      \resizebox{!}{.7\paperheight}{\input{img/Emax}}
      \caption{Landau damping test: time history of $\|E(t)\|_{L^2}$ (semi-log scale) obtained with Lawson($RK(4, 4)$) and WENO5
      with $\Delta t=1/8$ and $\Delta t=1$.}
      \label{ld}
    \end{figure}
  }
\end{frame}
%-------%
\begin{frame}{Bump on Tail (BoT)}
  $$
    f(t=0,x,v) = \left[\frac{0.9}{\sqrt{2\pi}}e^{-\frac{v^2}{2}} + \frac{0.2}{\sqrt{2\pi}}e^{-2(v-4.5)^2} \right](1+0.001\cos(0.5x))
  $$

  $x\in[0,20\pi]$, $v\in[-8,8]$, $N_x = 135$, $N_v=256$

  Numerical estimation of $\max_n||E^n||_\infty\approx 0.6$, we choose $\Delta t = \frac{C\Delta v}{0.6}$
\end{frame}
%-------%
\begin{frame}{BoT: numerical results}
  \only<1>{
    \begin{figure}
    \centering
        \includegraphics[width=\textwidth]{img/vp_cfl.png}
        \caption{Distribution function at time $t=40$ as a function of $x$ and $v$ for Lawson($RK(4, 4)$) + WENO5 (left), Lawson($RK(4, 4)$) + centered scheme (center), Hochbruck--Ostermann + centered scheme (right).}
    \label{space}
    \end{figure}
  } \only<2> {
    \begin{columns}
      \begin{column}{0.5\textwidth}
        \begin{figure}
          \includegraphics[width=0.9\textwidth]{img/ee_weno_rk44.png}
          \caption{Illustration of the accuracy of the CFL estimate obtained from the linear theory. History of electric energy with Lawson($RK(4,4)$) + WENO5}
        \end{figure}
        \vfill
        \
      \end{column}
      \begin{column}{0.5\textwidth}
        \begin{figure}
          \includegraphics[width=0.9\textwidth]{img/bot_cfl_weno_rk44.png}
          \caption{History of CFL condition for Lawson($RK(4,4)$) + WENO5 case}
        \end{figure}
        \vfill
        \
      \end{column}
    \end{columns}
  } \only<3> {
    \begin{figure}
      \includegraphics[width=0.9\textwidth]{img/H.png}
    \end{figure}
  }
\end{frame}
%-------%
\begin{frame}{Adaptive time step size}
  \centerline{\mbold{$\max_n||E^n||_\infty$ is not accessible in practice.}}

  \

  To capture correctly the phenomena involved in the bump on tail test, we take the following time step size:
  $$
    \Delta t_n = \min\left(0.1,\frac{C\Delta v}{||E^n||_\infty}\right)
  $$
  with $C=y_\text{max}$ or $\sigma$ from the linear theory.

  \arrow Good estimate in practice for Lawson methods.
\end{frame}
%-------%
\begin{frame}{More Lawson methods}
  \only<1>{
    We are interested in the numerical cost $\dfrac{\Delta t}{s}$ of RK($s$,$n$). To compare each time integrator, we compute total energy in Vlasov-Poisson system:
    $$
      H(t) = \int_{\Omega}\int_{\mathbb{R}} v^2f\,\mathrm{d}x\mathrm{d}v + \int_{\Omega}E^2\,\mathrm{d}x
    $$
    which is preserved in time. We propose to select the best method by considering:
    $$
      h_{s,n}:\frac{\Delta t}{s}\mapsto \left|\left| \frac{H(t)-H(0)}{H(0)} \right|\right|_{\infty}
    $$
  } \only<2> {
    \begin{figure}\centering
      \includegraphics[height=0.8\textheight]{img/oHdt.png}
    \end{figure}
  }
\end{frame}

\section{Numerical simulation: drift-kinetic equations}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{frame}{Drift-Kinetic equations}
  $f = f(t,r,\theta,z,v)$
  $$
    \begin{cases}
      \underbrace{\vphantom{\frac{}{}}\partial_tf + v\partial_zf}_{\text{linear part}} \underbrace{- \frac{\partial_\theta\phi}{r}\partial_rf + \frac{\partial_r\phi}{r}\partial_\theta f - \partial_z\phi\partial_vf}_{\text{non linear part}} = 0\\
      -\left[ \partial_r^2\phi + \left(\frac{1}{r}+\frac{\partial_rn_0(r)}{n_0(r)}\right)\partial_r\phi + \frac{1}{r^2}\partial_\theta^2\phi \right]+\frac{1}{T_e(r)}(\phi-\langle\phi\rangle) = \frac{1}{n_0(r)}\int_{\mathbb{R}}f\,\mathrm{d}v-1
    \end{cases}
  $$
  $(r,\theta,z,v)\in[0.1,14.5]\times[0,2\pi]\times[0,L]\times\mathbb{R}$

  After a Fourier transform in $z$, formally, the equation is still of the form of:
  $$
    \partial_t f + ikvf + F(f) = 0
  $$
  Compatible with all previous time integrators.

  This is more complicated to use linear stability analysis, we use an other adaptive time step method.
\end{frame}
%-------%
\begin{frame}{Adaptive time step size (error estimate)}
  For adaptive time step size with any time integrator $\varphi$:
  $$
    f^{n+1} = \varphi_{\Delta t_n}(f^n)\qquad;\qquad \tilde{f}^{n+1}=\varphi_{\Delta t_n/2}\circ\varphi_{\Delta t_n/2}(f^n)
  $$
  Richardson extrapolated numerical solution of the method of order $p$:
  $$
    f^{n+1}_R = \frac{2^{p+1}\tilde{f}^{n+1}-f^{n+1}}{2^{p+1}+1}
  $$
  estimate of the local error:
  $$
    e_{n+1} = || f^{n+1}_R - f^{n+1} ||_{L^\infty} + \mathcal{O}(\Delta t_n^{p+2})
  $$
  If $e_{n+1}>\text{tol}$: we reject the step and start again from time $t_n$. Else we determine the new time step size:
  $$
    \Delta t_{new} = s\Delta t_n\left(\frac{\text{tol}}{e_{n+1}}\right)^{1/(p+1)}
  $$
  $s=0.8$ is safety factor.
\end{frame}
%-------%
% \begin{frame}{Ion temperature gradient instability}
%    $$f(t=0,r,\theta,z,v) = f_{\text{eq}}(r,v)\left[1+\epsilon\exp\left(-\frac{(r-r_p)^2}{\delta r}\right)\cos\left(\frac{2\pi n}{L}z+m\theta\right) \right],$$
%     where the equilibrium (depends on space) distribution is given by:
%     $$
%       f_{\text{eq}}(r,v) = \frac{n_0(r)\exp\left(-\frac{v^2}{2T_i(r)}\right)}{(2\pi T_i(r))^{1/2}}
%     $$
% \end{frame}
%-------%
\begin{frame}{Ion temperature gradient instability: numerical results}
    \begin{figure}\centering
      \includegraphics[height=0.85\textheight]{img/{driftkinetic-tol1.00e-02-64x64x64x128-pert0}.pdf}
    \end{figure}
\end{frame}

\section{Conclusion}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{frame}{Conclusion}
  \mbold{Summary}
  \begin{itemize}
    \item Better understanding on stability of Lawson or ExpRK methods in transport equations
    \item Python script with \texttt{sympy} to compute estimates of CFL of Lawson -- CD2, Lawson -- WENO (5 or 3) or ExpRK -- CD2 (with relaxing CFL)
    \item An adaptive time step size which works with any time integrators
  \end{itemize}

  \mbold{Future works}
  \begin{itemize}
    \item We can improve method with an embedded Runge-Kutta method (Dormand-Prince method, used in \texttt{ode45} of Matlab)
    \item Compare performance between exponential integrators and splitting methods (same stages/step, same order?)
    \item Use semi-Lagrangian method to remove dependency on periodic space (Fourier transform)
  \end{itemize}
\end{frame}

\section{Future works}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{frame}{VPHL}
  $$
    \begin{cases}
      \partial_tf + v\partial_xf + E\partial_vf = 0 \\
      \partial_xE = \int_\mathbb{R} f\,\mathrm{d}v - 1
    \end{cases}
  $$
  We linearized around an equilibrium and we suppose:
  $$
    f(t=0,x,v) = \underbrace{f_c(v)}_{(1-\alpha)\delta_0(v)} + \underbrace{f_h(x,v)}_{\mathcal{M}_{[\alpha/2,u,1]}+\mathcal{M}_{[\alpha/2,-u,1]}}
  $$
  and add Ampère equation to obtain:
  $$
    \begin{cases}
      \partial_t u_c = E \\
      \partial_t E = -\rho_cu_c - \int vf_h\,\mathrm{d}v \\
      \partial_t \hat{f}_h = -ikv\hat{f}_h - \widehat{E\partial_v f_h}
    \end{cases}
  $$
\end{frame}
%-------%
\begin{frame}{Schemes}
  3 possibilities to built a scheme:
  \begin{itemize}
    \item Full-kinetic model with $f_0(x,v) = \mathcal{M}_{[(1-\alpha),0,T_c]}+\mathcal{M}_{[\alpha/2,u,1]}+\mathcal{M}_{[\alpha/2,-u,1]}$ with $T_c \ll 1$.
    \item Hybrid version with splitting method.
    \item Hybrid version with Lawson method.
  \end{itemize}
\end{frame}
%-------%
\begin{frame}{Hybrid splitting}
  \begin{description}
    \item[$\varphi_{\Delta t}^{[a]}$:] $$
      \begin{cases}
        \partial_t f_h + v\partial_x f_h = 0 \\
        \partial_t u_c = 0 \\
        \partial_t E = -\int vf_h\,\mathrm{d}v
      \end{cases}
    $$
    \item[$\varphi_{\Delta t}^{[b]}$:] $$
      \begin{cases}
        \partial_t f_h + E\partial_v f_h = 0 \\
        \partial_t u_c = E \\
        \partial_t E = 0
      \end{cases}
    $$
    \item[$\varphi_{\Delta t}^{[c]}$:] $$
      \begin{cases}
        \partial_t f_h = 0 \\
        \partial_t u_c = 0 \\
        \partial_t E = -\rho_cu_c
      \end{cases}
    $$
  \end{description}
  $$
    U^{n+1} = \varphi^{[a]}_{\Delta t} \circ \varphi^{[b]}_{\Delta t} \circ \varphi^{[c]}_{\Delta t} (U^n)
  $$
\end{frame}
%-------%
\begin{frame}{Hybrid Lawson}
  $$
    \partial_t U = AU + N(U)
  $$
  with:
  $$
    U = \begin{pmatrix}u_c \\ E \\ \hat{f}_h\end{pmatrix}
    \quad
    A = \begin{pmatrix}0 & 1 & 0 \\ -\rho_c & 0 & 0 \\ 0 & 0 & -ikv \end{pmatrix}
    \quad
    N(U) = \begin{pmatrix}0 \\ -\int vf_h\,\mathrm{d}v \\ -\widehat{E\partial_vf_h} \end{pmatrix}
  $$
\end{frame}
%-------%
\begin{frame}{Numerical result}
  \begin{figure}\centering
    \includegraphics[height=0.8\textheight]{img/electric_energy.pdf}
  \end{figure}
\end{frame}
%-------%
\begin{frame}{Conclusion of future works}
  \begin{itemize}
    \item A Python script to compute slope of dispersion relation of \emph{any} input distribution.
    \item Kinetic, and hybrid simulation converge.
    \item Two hybrid simulations to compare (it's the future works to do!)
  \end{itemize}
\end{frame}

\begin{frame}[t]
  \vfill
  {\usebeamerfont{title} Thank you for your attention}
  \vfill
  \hfill {\footnotesize For more questions, I will be at the sauna}
\end{frame}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\appendix
\backupbegin

\begin{frame}[plain]
  \vspace{0.65\textwidth}
  \hfill\footnotesize{Backup}
\end{frame}
%-------%
\begin{frame}{WENO5 method}
  \only<1>{
    \textbf{W}eighted \textbf{E}ssentially \textbf{N}on-\textbf{O}scillatory method of order 5: 3 estimates on 3 different stencils weighted with nonlinear weights.

    \begin{center}
      \includegraphics[width=0.5\textwidth]{img/stencils.png}
    \end{center}

    3 steps: \begin{enumerate}\item Indicator of smoothness \item Weights \item Flux \end{enumerate}
  }
  \only<2>{
    \mbold{Indicator of smoothness $\beta^\pm_i$}

    To approximate $\partial_xf(u)$:

    Split $f$ as:
    $$
      f(u) = f^+(u) + f^-(u)\quad,\quad \frac{df^+}{du}\geq 0\ \text{et}\ \frac{df^-}{du}\leq 0
    $$

    Indicators of smoothness:
    $$
      \beta_i^\pm  \gets (f^\pm_{[\![j-2,j+3]\!]})\ ,\ i=0,1,2
    $$
    Approximations of derivatives of order 1 and 2 on 3 stencils.
  }
  \only<3>{
    $$
      \begin{aligned}
        \beta_0^+ &= \frac{13}{12}\left( f^+_{j-2} - 2f^+_{j-1} + f^+_{j}   \right)^2\!\!\!\!\!\!&+& \frac{1}{4}\left(  f^+_{j-2} - 4f^+_{j-1} + 3f^+_{j}   \right)^2 \\
        \beta_1^+ &= \frac{13}{12}\left( f^+_{j-1} - 2f^+_{j}   + f^+_{j+1} \right)^2\!\!\!\!\!\!&+& \frac{1}{4}\left(  f^+_{j-1}              -  f^+_{j+1} \right)^2 \\
        \beta_2^+ &= \frac{13}{12}\left( f^+_{j}   - 2f^+_{j+1} + f^+_{j+2} \right)^2\!\!\!\!\!\!&+& \frac{1}{4}\left( 3f^+_{j}   - 4f^+_{j+1} +  f^+_{j+2} \right)^2\\
        & & & \\
        \beta_0^- &= \frac{13}{12}\left( f^-_{j+1} - 2f^-_{j+2} + f^-_{j+3} \right)^2\!\!\!\!\!\!&+& \frac{1}{4}\left( 3f^-_{j+1} - 4f^-_{j+2} +  f^-_{j+3} \right)^2 \\
        \beta_1^- &= \frac{13}{12}\left( f^-_{j}   - 2f^-_{j+1} + f^-_{j+2} \right)^2\!\!\!\!\!\!&+& \frac{1}{4}\left(  f^-_{j}                -  f^-_{j+2} \right)^2 \\
        \beta_2^- &= \frac{13}{12}\left( f^-_{j-1} - 2f^-_{j}   + f^-_{j+1} \right)^2\!\!\!\!\!\!&+& \frac{1}{4}\left(  f^-_{j-1} - 4f^-_{j}   + 3f^-_{j+1} \right)^2
      \end{aligned}
   $$
  }
  \only<4>{
    \mbold{Weights $w^\pm_i$}

    Unnormalized weights:
    $$
      \alpha_i^\pm \gets \frac{\gamma_i}{(\epsilon+\beta_i^\pm)^2}\ ,\  \gamma_i \in\mathbb{R}^*_+\,: \sum_k\gamma_k = 1
    $$
    where $\gamma_0 = \frac{1}{10}, \gamma_1=\frac{6}{10}, \gamma_2=\frac{3}{10}$. Parameter $\epsilon = 10^{-6}$

    Linearized weights (LW5): $\alpha_i^\pm = \gamma_i + \mathcal{O}(\Delta x^2)$

    Normalized weights:
    $$
        w_i^\pm \gets \frac{\alpha_i^\pm}{\sum_k\alpha_k^\pm}
    $$
  }
  \only<5>{
    \mbold{Flux $f^\pm_{i+\frac{1}{2}}$}

    $$
      \begin{aligned}
        f_{j+\frac{1}{2}}^+ \gets w_0^+ \left( \frac{2}{6}f^+_{j-2} - \frac{7}{6}f^+_{j-1} + \frac{11}{6}f^+_{j}\right)
                                + w_1^+ \left(-\frac{1}{6}f^+_{j-1} + \frac{5}{6}f^+_{j}   +  \frac{2}{6}f^+_{j+1}\right) \\
                                + w_2^+ \left( \frac{2}{6}f^+_{j}   + \frac{5}{6}f^+_{j+1} -  \frac{1}{6}f^+_{j+2}\right)
      \end{aligned}
    $$

    $$
      \begin{aligned}
        f_{j+\frac{1}{2}}^- \gets w_2^- \left(-\frac{1}{6}f^-_{j-1} + \frac{5}{6}f^-_{j}   + \frac{2}{6}f^-_{j+1}\right)
                                + w_1^- \left( \frac{2}{6}f^-_{j}   + \frac{5}{6}f^-_{j+1} - \frac{1}{6}f^-_{j+2}\right) \\
                                + w_0^- \left(\frac{11}{6}f^-_{j+1} - \frac{7}{6}f^-_{j+2} + \frac{2}{6}f^-_{j+3}\right)
      \end{aligned}
    $$

    $$
    \boxed{
      (\partial_x f(u))_j \approx \frac{1}{\Delta x}\left[(f_{j+\frac{1}{2}}^+ - f_{j-\frac{1}{2}}^+) + (f_{j+\frac{1}{2}}^- - f_{j-\frac{1}{2}}^-)\right]
      }
    $$
  }
\end{frame}
%-------%

\backupend
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\end{document}


\section{Experiment}

Our analysis is composed of results from the three methodologies. Taken together, we expect that these three mechanisms provide a robust indication of which features affect patient outcomes and which are unimportant, and provide useful conclusions to the questions posed in this paper. %We exclude the income feature, as the values of this feature are out of scale with the rest of the parameters. This implies that under our model, the probability of death is assumed to be independent of income.

We begin our analysis by generating synthetic data according to the procedure described in Section \ref{sec:synthetic_data}. For Task 1, this dataset $\Omega_1$ is then used to validate the methodologies with respect to understanding the impact of comorbidities and vaccination on the chance of death. Having established the efficacy of the three procedures, we then perform methodologies 1, 2, and three on the observational data to determine which comorbidities and vaccines have an effect on the chance of death.

Our experiment for answering the questions of Task 2 is much the same, again generating a synthetic dataset $\Omega_2$

%with calculating the autocorrelation matrix of the synthetic data

%In the part of our analysis using logistic regression models, we first train a logistic regression model on the synthetic data, using cross validation with $10$ folds, and a regularization parameter using the L2 norm. The trained model correctly learns higher coefficient values for the features correlated with death, and coefficients close to zero for the genes which are uncorrelated with the target. From this, we conclude that a logistic regression classifier trained with cross-validation and a regularization penalty can effectively learn from data wherein some variables are predictive of the target (death), and thereby we can identify features which affect the probability of death. We also perform our calculation of correlation matrices and conditional probabilities on the synthetic data as described in the previous paragraph, again to establish that these processes work as expected for known outcomes.

%After establishing the efficacy of the logistic regression model on synthetic data, we then fit logistic regression models to the observational and treatment data. These models are trained as with the synthetic data, maintaining the number of folds for cross-validation to ensure that the model behavior is the same with respect to identifying relevant features. The model is trained on a balanced set of the data, where we take equal numbers of rows with positive and negative response values when applicable\footnote{Details in GitHub repository}. For Task 1a, the model will identify the 5 most important features relevant to the \textit{Death} outcome. In Task 1b and 1c, the model will identify the impact of vaccines on \textit{Death} as well as other symptoms. For Task 2, the model will learn features identifying the impact of treatments on \textit{Death} and other symptoms. Following these models, we also calculate the conditional probability and correlation matrices of features to determine the effect of features on outcomes in the observational and treatment data. We compare these statistics with the estimations learned by the logistic regression models to determine the impact of each feature on each outcome.

%OLD Results in paragraph below
%The model is trained on a balanced set of the data, where we have equal numbers of deaths and non-deaths, using all of the deaths in the data and a random sample of non-death rows. The resulting model had an accuracy of approximately $0.75$, with relatively few of the features being especially predictive of death. The highest coefficient value in the model was associated with the "No-Taste/Smell" feature, with a value of approximately $1.85$. This compares with the highest feature coefficient of approximately $0.75$ in the synthetic data, associated with the genes which jointly double the probability of death. By comparison to the coefficient values of the features strongly predictive of death in our synthetic data, we also find a noticeably negative association between the vaccines and death, with coefficient values of approximately $-0.55$, $-0.32$, and $-0.55$ for vaccines 1, 2, and 3, respectively. Additionally, a number of genes are also predictive of death, with the 15th gene feature being most predictive with a model coefficient value of $0.2$.

We apply methodology 2 twice in Task 2b, first the explanatories are the same, treatments 1 and 2, where the response is the symptoms from before and after. Then we compare if the conditional probabilities increased or decreased, to infer whether the treatment made the symptom more or less likely.

\label{sec:Experimenting}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[12pt,a4paper]{paper}
\usepackage[latin1]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{epsfig,graphics,graphicx}
\usepackage{color}
\usepackage{mathtools}
%\usepackage{here}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcommand{\acc}[2]{ \{ #1 \}_{#2} }
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{document}
\begin{center}
  {\bf \Large Simple application of the PoPe method\\ Work in progress... \vspace{2.pt}\\}
  {T. Cartier-Michaud, ...} \\
  {October 2017}\\
\end{center}

\tableofcontents

%*********************************
%*** PoPe method in a nutshell ***
%*********************************
%\baselineskip = 16.pt
\section[PoPe method in a nutshell]{PoPe method in a nutshell : decomposition onto a relevant basis plus an error}
The Projection on Proper element (PoPe \textbf{cite}) method is a method allowing to recover the equations that have generated a set of data. In terms of verification, using output of any simulations to verify a code is fundamentaly different from the Method of Manufcatured Solutions (MMS \textbf{cite}) where the code is verified with respect to an ``artificial'' solution as it is difficult to obtain a target analytical solution representative of typical simulations. Often the analytical solution chosen is smooth in space an time with respect to the discretisation, it is based on simplified geomertries or boundary conditions and it might not used every operators of the model : this verification is partial.
Using PoPe onto a set of data produced by a code, if one searches for the full set of equations implemented in the code considered, one does code verification, if one searches for a reduced set of equations compare to the set used in the first place by the code, one does model reduction.
PoPe can also be understand a procedure of a posteriori error checking a posteriori. In this thesis, it has been used as a post treatment developped independently of the code as a Matlab/Octave library.

\section[Practial implementation of PoPe method]{Practial implementation of PoPe method}
%
To explain the method, we use the following density equation eq.(\ref{eq:dtN}) as an example :
%
\begin{eqnarray}
  \label{eq:dtN}
  \partial_t N =
  \vec{\nabla} (D_N \vec{\nabla}_\perp N)
-  \vec{\nabla} ( N u^{ion}_\parallel \vec{b})
-  \vec{\nabla} ( N \vec{u}_{E \times B})
-  \vec{\nabla} ( N \vec{u}^{ion}_{\nabla B})
+  S_N
\end{eqnarray}
%
Equation we immedialtely rewritte in a more compact form, using ``$th$'' subscript for ``theoretical'', $\acc{O^i}{th}$ the five operators of eq.(\ref{eq:dtN}) for $i\in[1,5]$ associated to five theoretical weights $w^i_{th}$, also using Einstein's convention on indices :
%
\begin{eqnarray}
  \acc{\partial_t N}{th} &=& w^i_{th} \acc{O^i}{th} \label{eq:dtN_th}\\
  w_{th} &=& [+1,-1,-1,-1,+1] \label{eq:w_th}
\end{eqnarray}

What we can easily do is :
\begin{enumerate}
  %
\item Measurements of $\acc{\partial_t N}{ef}$, the effective (``$ef$'' subscript) time derivative computed with finite differences from outputs of a given code. In the present case, finite differences of order four compare to the order one time integration scheme in TOKAM3X.
  \begin{eqnarray}
    \acc{\partial_t N}{ef}(t) &=& \sum_{j=-2}^2 c(j) N(t+j\Delta t) + \mathcal{O}(\Delta t^4)\\
    c(-2:2) &=& [+1,-8,0,+8,-1]/(12\Delta t)
  \end{eqnarray}
  %
\item Computations of each operator in eq.(\ref{eq:dtN}), labeled $\acc{O}{ol}^i$ for $i \in [1,5]$, using higly accurate off-line (``$ol$'' subscript) post-treatments. TOKAM3X using second order method in space, the offline estimation uses method of order $2$ to $8$.
  \begin{eqnarray}
    \acc{O^i}{ol} &\simeq& \acc{O^i}{th} \label{eq:olvsth}\\
    ||\acc{O^i}{th}- \acc{O^i}{ol}|| &\ll&  ||\acc{O^i}{th}- \acc{O^i}{ef}|| \label{eq:tholef}
  \end{eqnarray}
  %
\item Linear projections of $\acc{\partial_t N}{ef}$ onto $\acc{O}{ol}^i$ and thus recover effective weights $w^i_{ef}$ and an effective residual $\epsilon_{ef}$ lineary independent of $\acc{O}{ol}^i$.
  \begin{equation}
    \acc{\partial_t N}{ef} = w^i_{ef} \acc{O}{ol}^i + \epsilon_{ef}
  \end{equation}
  %
  This projection is simply done by solving the following linear systems eq.(\ref{eq:leastmeansquare}) based on the least mean square approach. The residual is then recovered by explicitly computing eq.(\ref{eq:epsef}).
\begin{eqnarray}
  A^t A ~ w_{ef} &=& A^t \acc{\partial_t N}{ef} \label{eq:leastmeansquare}\\
  \acc{\partial_t N}{ef} - A ~ w_{ef} &=& \epsilon_{ef} \label{eq:epsef}\\
  A(p,i) &=& \acc{O(p)^i}{ol}
\end{eqnarray}
The matrix $A$ is of size $P \times I$. Each column of the matrix $A$ is the evaluation of the $i^{th}$ operator from the set of $I$ operators present in the tested equation. Those evalations are perfomed for $P$ points labeled by the indice $p$. $P$ is define by the discretisation used to solve the equation with the code we want to verify in the first place. Usually $P\gg I$ which justifies the mean least square approach to obtain the best estimation of $w_{ef}$. For TOKAM3X, typically, we have $P = N_{r} \times N_{\theta} \times N_{\phi} \times N_t \gg 10^6$ for a unique simulation. Nevertheless, to introduce a time dependence in $w_{ef}$, we usually use $N_t$ sets of $  N_{r} \times N_{\theta} \times N_{\phi} \ge 10^4$ points.
%
\end{enumerate}
%
This leads to the interpretation of the effective time derivative of a given code ($\acc{\partial_t N}{ef}$) as a sum of weighted (by $w^i_{ef}$) operators ($\acc{O}{ol}^i$) plus a residual ($\epsilon_{ef}$) which has no linear dependency toward the operators of the equations. Ideally, $w_{ef} = w_{th}$ and $\epsilon_{ef} = 0$.
%
This decompostion is relevant as weights such as $w^i_{ef}$ define the nature of the equation so they control the behavior of the system (theoretically and numerically).
A simple error such as the used of a diffusion coeffient two times higher than the one theoretically wanted would immediately be seen with $w^1_{ef} = 2 w^i_{th}$.
The control of weights would be absolute if $\acc{O^i}{ef}$, operators effectively implemeted in the code, were ``exact''. As we discretise solutions over a finite number of degree of freedom, each having a finite accuracy, operators $\acc{O^i}{ef}$ usually differ from theoertical expression of operators $\acc{O^i}{th}$. The theoretical expression of operators being not accessible usually, we do not compare $\acc{O^i}{ef}$ to $\acc{O^i}{th}$ but rather to $\acc{O^i}{ol}$, a set of operators computed off-line using a greater accuray than for $\acc{O^i}{ef}$, so $\acc{O^i}{ol}$ evaluations are closer to $\acc{O^i}{th}$ than $\acc{O^i}{ef}$ are close to $\acc{O^i}{th}$ as define eq.(\ref{eq:tholef}). This point is important to be able to associate the residual $\epsilon_{ef}$ to an error in the code and not an error in the verification process. This off-line greater accuracy is easily obtained as for off-line computations we don't have to take care of any stability with respect to time integration.
Also, verification is usually performed on about $1\%$ of the data generated by a code. For example $1$ time step out of $100$ over time is sufficient as generally the time step is define to insure small variations of the solution between consecutive iterations. Verifying each time step is still possible but it would conduct to verify many systems very close to each other.
Finally recommandation concerns the localisation in space and time of the data used for the verification process. One equation is seen as a law that has to be verified anywhere and at any time with respect to the state of the system at those exact location and time. Thus, we have to carefully handle variables used to recompute the equation in order to be sure not to mix a variable $a$ evaluated at $(x,t)$ with a variable $b$ evaluated at $(x+\Delta x, t+\Delta t)$, unless the analytical system cleary states it is the way to do it, that the equation contains a time delay and an action over a distance.
%
%**************
%*** how to ***
%**************
\section{Aim of this pacakge : a test bed for PoPe}
%
This package aims to offer a test case of the PoPe method in order to quickly learn how to use PoPe and to test new ideas. It is written in Matlab/Octave on a simple advection - diffusion problem using two parameters $(c,D)$ and an optional source $S$ :
\begin{eqnarray}
  \partial_t f = c \partial_x f + D \partial_x^2 f + S
\end{eqnarray}

\subsection{How to use this pacakge}

Just run ``scan\_void''...

\subsection{Open issues}

%
%**************
%*** Results ***
%**************
\section{Analysis of PoPe's results}
As a preminilary study, we can introduce a more general definition of the effective residual $\epsilon_{ef}$ which, using $\acc{O^i}{ol}=\acc{O^i}{th}$ for simplification, is the total residual $\epsilon$ defined as :
%
\begin{eqnarray}
  \acc{\partial_t N}{ef} - \acc{\partial_t N}{th} &=& \epsilon \label{eq:eps_total_def}\\
  &=& ( w^i_{ef} - w^i_{th} ) \acc{O}{ol}^i + \epsilon_{ef} \label{eq:eps_total_construction}
\end{eqnarray}
%
This total residual contains a part linearly dependent on the operators as seen eq.(\ref{eq:eps_total_construction}). It allows to clearly identify $\delta^i=w^i_{ef} - w^i_{th}$ the error on weights of the equations. Nevertheless, using only eq.(\ref{eq:eps_total_def}) we do not need to solve any linear system to obtain $\epsilon$.\\

In this section, first we estimated the quality of a simulation studying $\epsilon$ which contains the entire information on the discrepency between the theoretical evolutoin of the systeme the effective evolution. Then a statistical study of $w_{ef}$ and $\epsilon_{ef}$ is performed in order to give a more physical interpretation of the results...
% not dealing with boundaries

\begin{thebibliography}{100}
%\bibitem{Lesur_PRL_12} M. Lesur, P.H. Diamond submitted to Phys. Rev. Lett. (2012).

\end{thebibliography}

\end{document}

%%% Local IspellDict: american


%
% modified at Dec. 14th, 2009
%
%
%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\chapter{Numerical Quadrature Method}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Introduction}
 Commonly to say, the exchange-correlation integrals we
are dealing with in the KS-DFT equation adopt such form:
\begin{equation}\label{}
    I = \int F(\rho, \bigtriangledown \rho, \cdots) d \tau
\end{equation}
Since the functional has so complicated expression, that no
analytical methods can be used to calculate its integrals. Hence the
numerical quadrature method is indispensable. The general idea of
numerical quadrature method is to transform the difficult integrals
into a summation process as approximation:
\begin{equation}\label{}
    \int^{a}_{b}y(x)dx = \sum^{n}_{i=1}A_{i}y(x_{i})
\end{equation}
Here the $x_{i}$ is the grid point where the summation is taking;
and $A_{i}$ is its integral coefficient.

According to the above thoughts, the $I = \int F(\rho,
\bigtriangledown \rho, \cdots) d \tau$ can be approximated as:
\begin{equation}\label{NQMeq:1}
\int F(\rho, \bigtriangledown \rho, \cdots) d \tau =
\sum^{n}_{i=1}A_{i}F(\rho_{i}, \bigtriangledown \rho _{i}, \cdots)
\end{equation}
For the functional F is heavily depends on the density change, so
the integral process can be well expected that two rules has to be
followed:
\begin{itemize}
  \item Near the nuclear the $\rho$ has cusp, so the integral has
  cusp near the nuclear
  \item as the $r \rightarrow \infty$, $\rho \rightarrow 0$, so
$I \rightarrow 0$
\end{itemize}
For the reason of the first item, it's not appropriate to directly
use the grid over the whole three dimensional space. As a good
approximation method, Becke\cite{Becke} suggested an alternative way
to calculate such integrals. The general main idea will be discussed
in the following content, actually this idea has been taken in
almost all of the quantum chemistry softwares (such as \cite{g03,
QCHEM,turbomole}). As for conveniences, we will use the general
function of $F(r)$ for discussion, and take functional of
$f[\rho]=\rho ^{\frac{3}{4}}$ as an example to illustrate the whole
process.

For the common integral process, we have:
\begin{equation}\label{}
    \int \rho^{\frac{3}{4}}(r) d \tau \approx \sum_{i=1}^{n}
A_{i} \rho^{\frac{3}{4}}(r_{i})
\end{equation}
Here the $n$ denotes the number of grids, and $r_{i}$  stands for
the grid.

Since the $\rho$ has cusp near the nuclear, so a very natural idea
is to divide the multicentric integral into single center
integration over nucleus, and then sum up them together:
\begin{eqnarray}
% \nonumber to remove numbering (before each equation)
  I &=& \sum_{n} I_{n} \nonumber \\
    &=& \sum_{n} \int F_{n}(r) d \tau
\end{eqnarray}
Here the $\int F_{n}(r) d \tau$ denotes the single center
integration over nuclear. After this step, then we can use numerical
quadrature method to calculate each single center integral, then
finish the whole process. The most important question in this
process is: How to associate the $F_{n}(r)$ with the general
expression of functional of $F(r)$? In other words, how to judge
whether a single grid belongs to this atom? As for answering this
question, Becke suggested weight function method. In this method, he
express the $F_{n}(r)$ as:
\begin{equation}\label{}
F_{n}(r) = w_{n}(r)F(r)
\end{equation}
For the grid belongs to the atom n, it has $w_{n}(r) \approx 1$; and
for the grid not belongs to the atom n, $w_{n}(r) \approx 0$. For
all the atoms related to this grid, we have:
\begin{equation}\label{}
\sum_{A}w_{A}(r) = 1
\end{equation}
This process corresponds to divide the grid expression of
$A_{i}F(r_{i})$ in the (\ref{NQMeq:1}) into some pieces, each has
form of $w_{n}(r_{i})A_{i}F(r_{i})$, and if we add all the pieces
together, that is $\sum^{atoms}_{n}w_{n}(r_{i})A_{i}F(r_{i}) =
A_{i}F(r_{i}) $, we still get the summation in the (\ref{NQMeq:1}).

Relative weight function which has the form of $w_{n}(r)$,
has value unity in the vicinity of its own nucleus, but vanishes in
a continuous and well behaved manner near any other nucleus. In a
sense, the system is divided into some fuzzy, overlapping cells,
each cell contains a nuclear, and on that nuclear the numerical
quadrature method is taken on to calculating the single center
integrals; the relative weight function is used to make sure that
the grid in the calculation is belonged to the specific atom.

Now let's use some example of $\rho^{\frac{3}{4}}$ to show the above
words, we have:
\begin{equation}
\label{NQM_general_eq}
\begin{split}
 \rho^{\frac{3}{4}}(r_{i}) &= \sum^{atoms}_{n} w_{n}(r_{i})
\rho^{\frac{3}{4}}(r_{i}) \Rightarrow  \\
I &= \int \rho^{\frac{3}{4}}(r) d^{3}r \\
  &= \sum^{grids}_{g} A_{g}\rho^{\frac{3}{4}}(r_{g}) \\
  &= \sum^{grids}_{g} A_{g} \sum^{atoms}_{n}
w_{n}(r_{g})\rho^{\frac{3}{4}}(r_{g}) \\
  &= \sum^{grids}_{g}\sum^{atoms}_{n}A_{g}
w_{n}(r_{g})\rho^{\frac{3}{4}}(r_{g}) \\
\end{split}
\end{equation}
This is just the general method for us to evaluate the numerical
quadrature for the arbitrary functional.

%In term of this process, we will discuss it from five aspect:
%\begin{itemize}
%  \item scheme to produce relative weight function
%  \item radical integration
%  \item numerical quadrature method to calculate the single center
%  integral
%  \item symmetry handling
%  \item linear scaling scheme
%\end{itemize}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\section{Scheme to produce relative weight function}\label{weight_function_dft}

The first systematic approach to introduce the relative weight
function is from Becke\cite{Becke}. where is this method we will know
how to generate the concrete $w_{n}$ for evaluating the quadrature.

the scheme used by Becke involves the two-center coordinate
system known as confocal elliptical coordinates $(\lambda, \mu,
\phi)$. The coordinate $\phi$ denotes the angle about the
internuclear axis, and coordinate $\lambda$ and $\mu$ are defined
by:
\begin{equation}\label{}
 \lambda = \frac{r_{1}+ r_{2}}{R_{12}} \quad
\mu = \frac{r_{1} - r_{2}}{R_{12}}
\end{equation}
Where $r_{1}, r_{2}, R_{12}$ denote distance to nuclear 1, distance
to nuclear 2, and internuclear separation, respectively. Their range
is indicated below:
\begin{eqnarray}
% \nonumber to remove numbering (before each equation)
   & & 0 \leq \phi \leq 2\pi \nonumber \\
   & & 1 \leq \lambda <\infty \nonumber \\
   & & -1 \leq \mu \leq +1
\end{eqnarray}
Obviously the surface of $\mu=0$ is bisecting the internuclear axis,
so it works as sign for separating two atoms. So simply the weight
function can be:
\begin{equation}\label{NQMeq:2}
s(\mu_{ij})=\begin{cases}
1, & -1 \leq \mu_{ij} \leq 0 \\
0, & 0 \leq \mu_{ij} \leq +1
\end{cases}
\end{equation}
Hence if we use this expression, conceptually for some grid it only
belongs to only one atom so that we have the $w_{n} = 1$ for some
atom $n$. Hence the summation over the atoms will disappeared.

However, this expression is too simple so that it cause instability
in the numerical quadrature. Further Becke suggest to use some
"smooth" function to replace the expression of (\ref{NQMeq:2}), which
should obey some boundary conditions:
\begin{eqnarray}\label{NQMeq:5}
% \nonumber to remove numbering (before each equation)
  s(-1) &=& 0 \nonumber \\
  s(+1) &=& 0 \nonumber \\
  \frac{ds}{d \mu}(-1) &=& \frac{ds}{d \mu}(+1) = 0
\end{eqnarray}
Under this condition, he finally construct some polynomials
expression which satisfy the condition above. It's worthy to note
that this polynomial should vary as fast as possible so that it can
avoid the cusp near the nuclear; so the final expression is:
\begin{eqnarray}\label{NQMeq:3}
% \nonumber to remove numbering (before each equation)
  s(\mu_{ij}) &=& \frac{1}{2} \bigg[1- p
\Big\{p \big[ p(\mu_{ij}) \big] \Big\} \bigg] \nonumber \\
  p(\mu_{ij}) &=& \frac{3}{2}\mu_{ij} - \frac{1}{2}\mu^{3}_{ij}
\end{eqnarray}
It yields a 27 degree analytical polynomial expression. Here the
$\mu_{ij}$ is just the expression of $\dfrac{r_{i} - r_{j}}{R_{ij}}$.

So finally we have weight function defined as:
\begin{eqnarray}\label{NQM_generation_eq}
% \nonumber to remove numbering (before each equation)
  P_{i}(r) &=&  \prod_{j \neq i}s(\mu_{ij}) \nonumber \\
  w_{n}(r) &=& P_{n}(r)/\sum_{m} P_{m}(r)
\end{eqnarray}
Here i, j ,n, m all denote to the specific atoms.

Murray et al.\cite{MHL}, Gill et al.\cite{PJM},Treutler et
al.\cite{OR}, etc. all use this technic to decide the relative
weight function; however, Stratman et al.\cite{EGM} further polished
up the expression above, for speeding up the calculation efficiency.

Stratman et al. use another step function which functions similar to
the (\ref{NQMeq:3}), who has degree of 7, which is much lower than
(\ref{NQMeq:3}):
\begin{equation}\label{NQMeq:4}
z(\mu_{ij}:a) = \frac{1}{16} \Big[ 35(\frac{\mu_{ij}}{a}) - 35 (
\frac{\mu_{ij}}{a})^{3} + 21(\frac{\mu_{ij}}{a})^{5}
-5(\frac{\mu_{ij}}{a})^{7} \Big]
\end{equation}
Here they set $a$ equals to 0.64. By introducing the $z(\mu_{ij}:a)$
back into the (\ref{NQM_generation_eq}), we can get the weight for
some specific $r$.

In their paper\cite{EGM}, they presented another advantage brought
by introducing this new polynomial expression, which is "screen
weights". That means, in such scheme the weight which associated
with a certain of grid can be efficiently determined that whether it
equals to 1 or not, by the condition below:
\begin{equation}\label{}
\text{If} \quad r_{ig} < \frac{1}{2}(1-a)R_{in} \Rightarrow
w_{i}(r_{g}) = 1
\end{equation}
Where $r_{ig}$ is the distance from the grid point $g$ to its parent
atom $i$, $R_{in}$ is the distance to the nearest atomic neighbor of
$i$, and $a$ is the constant defined above. Since a significant
amount of grid has weight equals to 1, so this step avoids a lot of
calculation time, but still be able to achieve same accuracy
precision\cite{EGM}.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Linear scaling of the computation}
%
%
%
%
%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Batch of the grid points}
%
%
%
%
In modern quantum chemistry packages, we usually employ the Gaussian
type of atomic orbitals. However, GTO has a fast decaying nature that
for a certain grid point, only a few of basis functions (GTOs) are
making contribution to it and the others can be safely neglected
without affecting the accuracy. Based on this idea, we can introduce
the ``batch'' concept.

What does the batch mean? For an arbitrary grid point, we can
determine that what kind of GTOs ( or shells, which is a group of
GTOs who sharing the same center and angular parts) are making
contribution to this point. Such group of GTOs are called ``batch''.
On the other hand, we can also define that for a certain kind of
shell (or GTOs), what kind of grids it making contribution to. That's
two different types of definition, but should lead to the same
result.

Now let's go to see how to put it into computation details. First, we
have to define the ``size'' of every shell (it's represented by
$\lambda$). That means, for a fixed shell, who is certering in
$\bm{R_{a}}$ and it's radical part is $\psi_{a}$; it's size is
defined as $|\psi_{a}| < \epsilon$. then for some grid point of
$\bm{r_{g}}$, we use the formula below to determine that whether a
shell contributing to the grid point or not:
\begin{equation}
 \label{linear_scale_numerical_quadrature_eq:1}
if \quad |\bm{r_{g}} - \bm{R_{a}}| \leq \lambda_{a}, then \quad
\psi_{a} \in S_{g}
\end{equation}
Finally, all the shells in this batch have the non-zero weight, and
all the others shells (GTOs) has the zero weight. Then the weight
calculation also becomes easier.

\begin{comment}
\subsection{Batch of the grid points}
Since in the grid methods, such as Gauss-Lebedev grid; requires the
interval should be within in $-1 \leq x \leq +1$, but the radical
interval in the single center integral is to be $0 \leq r \leq
\infty$, so it's necessary to strike up a mapping between them.
Moreover, this transformation may bring some delicate effects to the
numerical integration process; which had been carefully discussed by
Treutler\cite{OR}. We will carefully consider it as we encounter
this problem.
\end{comment}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{The single center integral}
%
%
%
Traditionally we have choices list below to achieve this process(here
only some of them are listed):
\begin{description}
  \item[Gauss-Lebedev grid]: This method is adopted by many popular
  programs.
  \item[Lobatto grid]: used in turbomole.
  \item[Euler-Maclaurin grid]: used in DGAUSS and discribled by
  Murray et al.\cite{MHL}.
\end{description}

The numerical quadrature methods related to the single center, are
very stable and the difference of result between methods of grid is
little. However, the Lebedev grid method is widely used for its high
efficiency.

Generally, the grid methods can be described in the following form:
\begin{equation}\label{}
I_{n} = \int\int\int F_{n}(r,\theta,\phi)r^{2}\sin\theta dr
d\theta d \phi \approx \sum^{N_{r}}_{i=1} A^{r}_{i}
\sum^{N_{\Omega}}_{j=1}A^{\Omega}_{j} F(r_{i}, \theta_{j}, \phi_{j})
\end{equation}
Here in this expression the $A^{r}_{i}$(related to the radical
quadrature) and $A^{\Omega}_{j}$(related to the angle quadrature)
are constant parameters, actually they are the coefficients; and
function of F has certain formation as expanding the integral into
summation.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Question With Radical Integration}
Since in the grid methods, such as Gauss-Lebedev grid; requires the
interval should be within in $-1 \leq x \leq +1$, but the radical
interval in the single center integral is to be $0 \leq r \leq
\infty$, so it's necessary to strike up a mapping between them.
Moreover, this transformation may bring some delicate effects to the
numerical integration process; which had been carefully discussed by
Treutler\cite{OR}. We will carefully consider it as we encounter
this problem.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\subsection{Symmetry Handling}
The grid based methods has some limitation with the symmetry
handling, which was first pointed out by Gill et al. \cite{PGPOPLE}.
This is induced by the transformation from the the angle portion of
coordinate to the cartesian coordinate, which is closely related to
the grid scheme.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\section{Linear Scaling Scheme}
So far, the most plentiful discussions about to speeding up the
numerical quadrature methods is coming from Stratmann et
al.\cite{EGM}; which is the default choice taken by Gaussian
incorporation\cite{g03}. On the other hand, Q-CHEM\cite{QCHEM}
company also published some articles related to the same
issue\cite{IncDFT}. In Stratmann's paper, they presented several
technics to speed up the calculation time, and they claimed that
they finally had achieving linear scaling in the calculations. These
technics are not complicated, just as using some new weight function
to replace the old and inefficient ones; the screen weight methods
etc.; which have been mentioned in the above content. Here in the
first manuscript we do not carefully examine these technics, it will
be carefully discussed as we step into the concrete program writing.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%% Local Variables:
%%% mode: latex
%%% TeX-master: "../../main"
%%% End:


%% Faire un historique des formulations faites.
%% Formuler le problème à notre sauce et identifier les cas évoqués en intro en particularisant les modules tangents etc. a ce moment, parler des trajets de chargement et des types d'ondes

\section*{Introduction}
It has been shown throughout this manuscript that hyperbolic problems in solid mechanics are solved in a different manner depending on the numerical method employed.
In particular, irreversible deformations which are usually numerically computed based on well-known constitutive integrators, may greatly differ from one scheme to another even for one-dimensional problems.
However, the accurate assessment of residual stresses and strains are of major importance for many industrial applications such as high-speed metal forming, crash-proof design or the study of the impact of earthquakes on structures.
The simulations performed in chapter \ref{chap:chap4} emphasized the improvements enabled by the knowledge of the characteristic structure of the solutions of conservation laws, especially for elastoplastic solids.
%Nevertheless, the introduction of the exact solution by means of approximate Riemann solvers is so far only possible for problems in one space dimension in elastic-plastic solids.
Nevertheless, the use of an elastic-plastic approximate Riemann solver is so far only possible for problems in one space dimension.

The purpose of this chapter is to identify typical behavior of the solutions of two-dimensional elastoplasticity problems under small strains.
%It is believed that the knowledge one can get about these solutions will allow, through the better understanding of their mathematical features, the building of approximate numerical solutions embedding the sufficient amount of information in order to mimic as well as possible the analytical behavior.
It is believed that the knowledge of these solutions will allow, through the better understanding of their mathematical features, the building of approximate numerical solutions embedding a sufficient amount of information in order to mimic the analytical behavior.
This will be possible at a low computational cost provided that some key-properties of the exact solutions are clearly identified.

This chapter is organized as follows.
A brief historical review of the solution of dynamic problems in two-dimensional elastic-plastic solids is made in section \ref{sec:review}.
%A brief historical review of the solution of plastic waves in two-dimension space is made in section \ref{sec:review}.
Then, the equations of plasticity are recalled in section \ref{sec:charac_plast} so that the characteristic analysis, followed by the application of the method of characteristics, can be carried out.
In section \ref{sec:stress_paths}, attention is paid to the evolution of stress components inside simple waves that might propagate by means of a mathematical study of the ODEs satisfied within these waves.
Since the developments rapidly become cumbersome, the analysis is supplemented with numerical results in section \ref{sec:stress_paths_num}.
%Attention is next paid in section \ref{sec:stress_paths} to the evolution of stress components through simple waves possibly arising in the solution.
At last, some identified trends are discussed at the end of the chapter in order to use them for building a dedicated Riemann solver.

\section{Historical review}
\label{sec:review}
\input{chapter5/review}

%\section{Key points of the chapter}
%% Ne pas considérer les chocs plastiques mais uniquement les ondes simples
%As a result, it is assumed that no stiffening occurs in the material in such a way that the concave hardening laws considered only yields simple waves and no shock waves.
%In what follows, attention is paid to the simple wave solutions arising in the characteristic structure of hyperbolic problems in two-dimensional elastic-plastic solids.

\section{Elastic-plastic wave structure in two space dimensions}
\paragraph*{Key points of the chapter:} The simple wave structure in two-dimensional solids is studied by writing the governing equations of plane strain and plane stress problems in \textbf{a unique generic framework}.
%For that purposes, the governing equations of dynamics in elastoplastic media are written in such a way that plane strain and plane stress problems are included in a unique generic framework.
Thus, the works carried out on simple waves mentioned above, formulated in terms of elastoplastic softnesses, appear \textbf{as particular cases of the present investigation}.
As a result, we shall refer to those existing solutions in order to confirm our development as much as possible.

\label{sec:charac_plast}
\input{chapter5/characteristic_analysis}

\section{Loading paths through simple waves}
\label{sec:stress_paths}
\input{chapter5/loading_paths}

\section{Numerical integration of stress paths}
\label{sec:stress_paths_num}
\input{chapter5/numerical_results}

% \section{Towards a two-dimensional elastoplastic Riemann solver}
% \label{sec:ep_Riemman_solver}
% \input{chapter5/riemann_solver}

\section{Conclusion}

\subsection{Summary of the chapter}

In this chapter, the characteristic structure of the solution of hyperbolic problems in elastic-plastic solids in two space dimensions has been highlighted.
It is known since the 50s that plastic flow in two-dimensional solids yields two families of waves whose speeds depend on the stress state, the slow and fast waves.
%As a result, shock and simple waves may occur in an elastoplastic medium even for linear hardening material.
In addition, these plastic waves may have an impact on all stress components in contrast to elastic discontinuities, hence the name of combined-stress waves.
During the 60s, attention has been paid to simple waves in particular two-dimensional problems thus providing, among others, solutions of Picard problems in an elastic-plastic medium undergoing step loadings \cite{Clifton,Ting68,Ting73}. % Idem pour ting ? c'est dit dans l'intro ? voir ce qui est fait dans le 73
The singular nature of such problems lies in the fact that the characteristic structure of the solution depends on the external loading undergone.
Indeed, it has been shown \cite{Clifton} that boundary conditions can lead to plastic flow involving one fast, one slow, or both simple waves.
Therefore, it is crucial to be able to identify typical stress paths followed in each simple wave in order to link the initial data to a given stress state, and subsequently to determine the occurring wave pattern.

%Besides these works, investigations on plastic shocks have been carried out.
%The existence of such solutions is due to the state law for the hydrostatic pressure which dominates deviatoric effects.

$\newline$
%% Lin et Ballman
Based on these works, an iterative Riemann solver \cite{Lin_et_Ballman}, whose procedure has been recalled in section \ref{sec:stress_paths_num}, has been developed for the numerical solution of the thin-walled tube problem.
This solver relies on the ability to connect a stationary state to initial data by a characteristic wave pattern.
% L'idée ici c'est de généraliser cette approche pour tous les problèmes 2D
Following this approach, identifying characteristic wave patterns for general elastoplastic problems in two space dimensions should allow to enrich the numerical solution with the knowledge of physics.
For that purpose, the characteristic analysis of two-dimensional problems in elastic-plastic materials with linear isotropic hardening under plane strain and plane stress, in projection in an arbitrary direction of space, has been carried out in section \ref{sec:charac_plast}.
Fast and slow waves are also involved in the solution so that applying the method of characteristic through the simple waves provides a system of ODEs.
Integration of this system leads to integral curves in terms of velocity and stress components that are followed inside the combined-stress waves.
%Integration of this system leads to combined stress paths that are followed between initial and final stress states on the one hand, and to the integral curves in terms of velocity components involving integral along those loading paths on the other hand.
Specializing the ODEs to one direction of a Cartesian grid, it has been shown in section \ref{sec:stress_paths} that the loading paths satisfied through slow and fast waves are perpendicular in the stress space for both plane strain and plane stress.
Moreover, it has been established that the stress paths exhibit particular behavior in the space $(\sigma_{11},\sigma_{22},\sigma_{12})$, that is $d\sigma_{11}=0$, $d\sigma_{12}=0$ or $d\sigma_{22}=0$, for special values of the components of the acoustic tensor.
These situations are achieved for different stress states depending on whether the problem involves plane stresses of plane strains as shown in section \ref{sec:stress_paths}.

$\newline$
The complexity of the ODEs derived in section \ref{sec:charac_plast} prevents identifying all the singularities which may occur along the loading paths.
Hence, the mathematical analysis has been supplemented with numerical results consisting of the integration of stress paths from arbitrary initial stress values lying on the initial yield surface, for the particular direction $\vect{e}_1$.

%% Thin-walled tube
First, in section \ref{sec:num_thin-walled} the loading paths resulting from the integration of the ODEs derived in section \ref{sec:charac_plast} have been compared to those of Clifton \cite{Clifton}.
The two different formulations, respectively based on elastoplastic stiffnesses and softnesses, show  good agreement.

%% Cont. planes
Second, the evolution of stress components across fast and slow waves under plane stress has been looked at in section \ref{sec:num_plane_stress}.
It appears that though the loading paths are rather complex in stress space through a fast wave, the stress evolution in the deviatoric plane is restricted to the initial yield surface until one direction of pure shear is reached.
A singularity then occurs so that the numerical integration cannot be pursued.
On the other hand, the loading paths resulting from the integration of ODEs satisfied inside a slow wave exhibit complex shapes along which $\sigma_{11}$ varies much less than the other stress components.

%% Def. planes
Third, the plane strain case has been considered in section \ref{sec:num_plane_strain}.
Once again, the integral curves inside a fast wave show complex shapes in stress space, and an evolution restricted to the initial yield surface in the deviatoric plane.
In that case, however, the paths may follow a direction of pure tension/compression in the latter plane so that the plastic flow is radial for high values of the hardening modulus.
In contrast, the paths inside slow waves first rotate on the yield surface and then lead to a stress state of pure shear in the deviatoric plane.

\subsection{Towards a two-dimensional elastoplastic Riemann solver}
The physical structures emphasized in this chapter enable a better understanding of the propagation of waves in two-dimensional elastoplastic media, although further investigations are required.
On the other hand, the loading paths followed in fast and slow simple waves can be used in order to improve the numerical simulation of these problems.

%% Lin et Ballman
One possibility is to generalize the approach proposed by Lin and Ballman \cite{Lin_et_Ballman} based on the clues provided above.
The idea would be to successively assume stationary states of the Riemann problem in terms of stress $\sigma_{11}$, $\sigma_{12}$ and $\sigma_{22}$ in order to build stress paths starting from the initial data.
Namely, considering the direction $\vect{e}_1$, the loading paths followed through a slow wave can be integrated backward starting from the guessed state.
Then, different situations may occur:
\begin{itemize}
\item[(1-a)] the curve thus obtained crosses the initial yield surface at a point where $\sigma_{22}$ satisfies the initial data.
  In that case, the elastic discontinuities led to that stress state so that the characteristic structure corresponds to that depicted in figure \ref{fig:charac}\subref{subfig:charac1}.
\item[(1-b)] if on the other hand the point reached on the initial yield does not satisfy the initial stress $\sigma_{22}$, a fast wave is added in order to browse the initial yield surface until the initial data is recovered.
  This situation is depicted in figure \ref{fig:charac}\subref{subfig:charac2}.
\item[(2-a)] the curve resulting from the reverse integration across a slow wave intersects the plane $\sigma_{12}=0$.
  Then, assuming that the paths of slow waves are symmetric with respect to that plane, a fast wave is added in order to reach the initial yield surface at the initial value of $\sigma_{22}$.
  Indeed, the fast waves have been shown to yield horizontal paths in the ($\sigma_{11},\sigma_{12}$) plane, in such a way that only that type of wave enables the achievement of the initial elastic domain.
  This also corresponds to figure \ref{fig:charac}\subref{subfig:charac2}.
\item[(2-b)] if at last, the guessed state is such that $\sigma_{12}=0$, a fast wave allows reaching the initial yield surface as depicted in figure \ref{fig:charac}\subref{subfig:charac3}.
\end{itemize}

\begin{figure}[h!]
  \centering
  \subcaptionbox{One slow wave \label{subfig:charac1}}{\input{chapter5/pgfFigures/charac_structuresSl}} \qquad
  \subcaptionbox{Both simple waves \label{subfig:charac2}}{\input{chapter5/pgfFigures/charac_structuresSlFa}} \qquad
  \subcaptionbox{One fast wave \label{subfig:charac3}}{\input{chapter5/pgfFigures/charac_structuresFa}}
  \caption{Characteristic structures possibly occurring in two-dimensional elastic-plastic solids.}
  \label{fig:charac}
\end{figure}
Notice however that the above elementary loading paths are based on strong assumptions about the symmetry of the loading paths that have not been shown so far.
As a result, additional work must be performed in order to develop this approach and to introduce it in numerical methods.
Moreover, the hardening of the material may modify the behavior of the loading paths and have not been considered yet.
At last, the generalization of the approach followed in this chapter to more complex hardening models (kinematic, nonlinear etc.) and other yield surfaces would be very interesting for the understanding of the physics.
%On the other hand, generalize the approach followed in this chapter to more complex hardening models (kinematic, nonlinear etc.) and other yield surfaces would be very interesting for the understanding of the physics.

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