From: wolf Date: Tue, 28 Mar 2006 00:45:40 +0000 (+0000) Subject: Generate intro in doxygen. Doesn't look great right now since I can't seem to find... X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8b85e8a088960008fc2e98d37d56d9c9821a33fc;p=dealii-svn.git Generate intro in doxygen. Doesn't look great right now since I can't seem to find a way to place equation labels flush right, but better than nothing... git-svn-id: https://svn.dealii.org/trunk@12691 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro.tex b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro.dox similarity index 56% rename from deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro.tex rename to deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro.dox index ab71ff1936..6f7bdb7fef 100644 --- a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro.tex +++ b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro.dox @@ -1,24 +1,25 @@ -\documentclass[11pt]{article} -%\usepackage{a4wide} -\usepackage{amsfonts, graphicx} -\usepackage{amsmath} + +

Introduction

-\begin{document} -\subsection{Overview} -This example is devoted to the \emph{discontinuous Galerkin method}, or + +

Overview

+ +This example is devoted to the discontinuous Galerkin method, or in short: DG method. It includes the following topics. -\begin{itemize} -\item Discretization of the linear transport equation with the DG method -\item Two different assembling routines for the system matrix based on +
    +
  1. Discretization of the linear transport equation with the DG method +
  2. Two different assembling routines for the system matrix based on face terms given as a sum of integrals that \begin{enumerate} -\item loops over all cell and all their faces, or that -\item loops over all faces, whereas each face is treated only once. +
  3. loops over all cell and all their faces, or that +
  4. loops over all faces, whereas each face is treated only once. \end{enumerate} -\item Time comparison of the two assembling routines. -\end{itemize} +
  5. Time comparison of the two assembling routines. +
+ + +

Problem

-\subsection{Problem} The DG method was first introduced to discretize simple transport equations. Over the past years DG methods have been applied to a variety of problems and many different schemes were introduced @@ -26,48 +27,51 @@ employing a big zoo of different convective and diffusive fluxes. As this example's purpose is to illustrate some implementational issues of the DG discretization only, here we simply consider the linear transport equation -\begin{equation}\label{transport-equation} - \nabla\cdot \left\{\boldsymbol\beta u\right\}=f \qquad\mbox{in }\Omega, -\end{equation} +@f[ + \nabla\cdot \left\{{\mathbf \beta} u\right\}=f \qquad\mbox{in }\Omega, +\qquad\qquad\qquad\mathrm{[transport-equation]}@f] subject to the boundary conditions -\[ +@f[ u=g\quad\mbox{on }\Gamma_-, -\] +@f] on the inflow part $\Gamma_-$ of the boundary $\Gamma=\partial\Omega$ -of the domain. Here, $\boldsymbol\beta=\boldsymbol\beta(x)$ denotes a +of the domain. Here, ${\mathbf \beta}={\mathbf \beta}(x)$ denotes a vector field, $f$ a source function, $u$ the (scalar) solution function, $g$ a boundary value function, -\[ -\Gamma_-:=\{x\in\Gamma, \boldsymbol\beta(x)\cdot{\bf n}(x)<0\} -\] +@f[ +\Gamma_-:=\{x\in\Gamma, {\mathbf \beta}(x)\cdot{\bf n}(x)<0\} +@f] the inflow part of the boundary of the domain and ${\bf n}$ denotes the unit outward normal to the boundary $\Gamma$. Equation -\eqref{transport-equation} is the conservative version of the +[transport-equation] is the conservative version of the transport equation already considered in step 9 of this tutorial. -In particular, we consider problem \eqref{transport-equation} on -$\Omega=[0,1]^2$ with $\boldsymbol\beta=\frac{1}{|x|}(-x_2, x_1)$ +In particular, we consider problem [transport-equation] on +$\Omega=[0,1]^2$ with ${\mathbf \beta}=\frac{1}{|x|}(-x_2, x_1)$ representing a circular counterclockwise flow field, $f=0$ and $g=1$ on $x\in\Gamma_-^1:=[0,0.5]\times\{0\}$ and $g=0$ on $x\in \Gamma_-\setminus \Gamma_-^1$. -\subsection{Discretization} + + +

Discretization

+ Following the general paradigm of deriving DG discretizations for purely hyperbolic equations, we first consider the general hyperbolic problem -\[ +@f[ \nabla\cdot {\mathcal F}(u)=f \qquad\mbox{in }\Omega, -\] +@f] subject to appropriate boundary conditions. Here ${\mathcal F}$ denotes the flux function of the equation under consideration that in -our case, see equation \eqref{transport-equation}, is represented by -${\mathcal F}(u)=\boldsymbol\beta u$. For deriving the DG -discretization we start with a variational, mesh--dependent +our case, see equation [transport-equation], is represented by +${\mathcal F}(u)={\mathbf \beta} u$. For deriving the DG +discretization we start with a variational, mesh-dependent formulation of the problem, -\[ +@f[ \sum_\kappa\left\{-({\mathcal F}(u),\nabla v)_\kappa+({\mathcal F}(u)\cdot{\bf n}, v)_{\partial\kappa}\right\}=(f,v)_\Omega, -\] -that originates from \eqref{transport-equation} by multiplication with +@f] +that originates from [transport-equation] by multiplication with a test function $v$ and integration by parts on each cell $\kappa$ of the triangulation. Here $(\cdot, \cdot)_\kappa$ and $(\cdot, \cdot)_{\partial\kappa}$ simply denote the integrals over the cell @@ -78,96 +82,100 @@ discontinuous Galerkin methods belong to the space $V_h$ of discontinuous piecewise polynomial functions of some degree $p$. Due to the discontinuity of the discrete function $u_h$ on interelement faces, the flux ${\mathcal F}(u)\cdot{\bf n}$ must be replaced by a -\emph{numerical flux} function ${\mathcal H}(u_h^+, u_h^-, {\bf n})$, +numerical flux function ${\mathcal H}(u_h^+, u_h^-, {\bf n})$, where $u_h^+|_{\partial\kappa}$ denotes the inner trace (w.r.t. the cell $\kappa$) of $u_h$ and $u_h^-|_{\partial\kappa}$ the outer trace, i.e. the value of $u_h$ on the neighboring cell. Furthermore the numerical flux function ${\mathcal H}$, among other things, must be consistent, i.e. -\[ +@f[ {\mathcal H}(u,u,{\bf n})={\mathcal F}(u)\cdot{\bf n}, -\] +@f] and conservative, i.e. -\begin{equation}\label{conservative} +@f[ {\mathcal H}(v,w,{\bf n})=-{\mathcal H}(w,v,-{\bf n}). -\end{equation} -This yields the following \emph{discontinuous Galerkin - discretization}: find $u_h\in V_h$ such that -\begin{equation}\label{dg-scheme} +\qquad\qquad\qquad\mathrm{[conservative]}@f] +This yields the following discontinuous Galerkin + discretization: find $u_h\in V_h$ such that +@f[ \sum_\kappa\left\{-({\mathcal F}(u_h),\nabla v_h)_\kappa+({\mathcal H}(u_h^+,u_h^-,{\bf n}), v_h)_{\partial\kappa}\right\}=(f,v_h)_\Omega, \quad\forall v_h\in V_h. -\end{equation} +\qquad\qquad\qquad\mathrm{[dg-scheme]}@f] Boundary conditions are realized by replacing $u_h^-$ on the inflow boundary $\Gamma_-$ by the boundary function $g$. In the special case of the transport equation -\eqref{transport-equation} the numerical flux in its simplest form +[transport-equation] the numerical flux in its simplest form is given by -\begin{equation}\label{flux-transport-equation} +@f[ {\mathcal H}(u_h^+,u_h^-,{\bf n})(x)=\left\{\begin{array}{ll} - (\boldsymbol\beta\cdot{\bf n}\, u_h^-)(x),&\mbox{for } \boldsymbol\beta(x)\cdot{\bf n}(x)<0,\\ - (\boldsymbol\beta\cdot{\bf n}\, u_h^+)(x),&\mbox{for } \boldsymbol\beta(x)\cdot{\bf n}(x)\geq 0, + ({\mathbf \beta}\cdot{\bf n}\, u_h^-)(x),&\mbox{for } {\mathbf \beta}(x)\cdot{\bf n}(x)<0,\\ + ({\mathbf \beta}\cdot{\bf n}\, u_h^+)(x),&\mbox{for } {\mathbf \beta}(x)\cdot{\bf n}(x)\geq 0, \end{array} \right. -\end{equation} +\qquad\qquad\qquad\mathrm{[flux-transport-equation]}@f] where on the inflow part of the cell the value is taken from the neighboring cell, $u_h^-$, and on the outflow part the value is taken from the current cell, $u_h^+$. Hence, the discontinuous Galerkin -scheme for the transport equation \eqref{transport-equation} is given +scheme for the transport equation [transport-equation] is given by: find $u_h\in V_h$ such that for all $v_h\in V_h$ following equation holds: -\begin{equation}\label{dg-transport} - \sum_\kappa\left\{-(u_h,\boldsymbol\beta\cdot\nabla v_h)_\kappa - +(\boldsymbol\beta\cdot{\bf n}\, u_h, v_h)_{\partial\kappa_+} - +(\boldsymbol\beta\cdot{\bf n}\, u_h^-, v_h)_{\partial\kappa_-\setminus\Gamma}\right\} - =(f,v_h)_\Omega-(\boldsymbol\beta\cdot{\bf n}\, g, v_h)_{\Gamma_-}, -\end{equation} +@f[ + \sum_\kappa\left\{-(u_h,{\mathbf \beta}\cdot\nabla v_h)_\kappa + +({\mathbf \beta}\cdot{\bf n}\, u_h, v_h)_{\partial\kappa_+} + +({\mathbf \beta}\cdot{\bf n}\, u_h^-, v_h)_{\partial\kappa_-\setminus\Gamma}\right\} + =(f,v_h)_\Omega-({\mathbf \beta}\cdot{\bf n}\, g, v_h)_{\Gamma_-}, +\qquad\qquad\qquad\mathrm{[dg-transport]}@f] where $\partial\kappa_-:=\{x\in\partial\kappa, -\boldsymbol\beta(x)\cdot{\bf n}(x)<0\}$ denotes the inflow boundary +{\mathbf \beta}(x)\cdot{\bf n}(x)<0\}$ denotes the inflow boundary and $\partial\kappa_+=\partial\kappa\setminus \partial \kappa_-$ the outflow part of cell $\kappa$. Below, this equation will be referred -to as \emph{first version} of the DG method. We note that after a +to as first version of the DG method. We note that after a second integration by parts, we obtain: find $u_h\in V_h$ such that -\[ - \sum_\kappa\left\{(\nabla\cdot\{\boldsymbol\beta u_h\},v_h)_\kappa - -(\boldsymbol\beta\cdot{\bf n} [u_h], v_h)_{\partial\kappa_-}\right\} +@f[ + \sum_\kappa\left\{(\nabla\cdot\{{\mathbf \beta} u_h\},v_h)_\kappa + -({\mathbf \beta}\cdot{\bf n} [u_h], v_h)_{\partial\kappa_-}\right\} =(f,v_h)_\Omega, \quad\forall v_h\in V_h, -\] +@f] where $[u_h]=u_h^+-u_h^-$ denotes the jump of the discrete function between two neighboring cells and is defined to be $[u_h]=u_h^+-g$ on the boundary of the domain. This is the discontinuous Galerkin scheme for the transport equation given in its original notation. Nevertheless, we will base the implementation of the scheme on the -form given by \eqref{dg-scheme} and \eqref{flux-transport-equation}, -or \eqref{dg-transport}, respectively. +form given by [dg-scheme] and [flux-transport-equation], +or [dg-transport], respectively. -Finally, we rewrite \eqref{dg-scheme} in terms of a summation over all +Finally, we rewrite [dg-scheme] in terms of a summation over all faces where each face $e=\partial \kappa\cap\partial \kappa'$ between two neighboring cells $\kappa$ and $\kappa'$ occurs twice: Find $u_h\in V_h$ such that -\begin{equation}\label{dg-scheme-faces-long} +@f[ -\sum_\kappa({\mathcal F}(u_h),\nabla v_h)_\kappa+\sum_e\left\{({\mathcal H}(u_h^+,u_h^-,{\bf n}), v_h)_e+({\mathcal H}(u_h^-, u_h^+,-{\bf n}), v_h^-)_{e\setminus\Gamma}\right\}=(f,v_h)_\Omega \quad\forall v_h\in V_h, -\end{equation} -By employing conservativity \eqref{conservative} of the numerical flux +\qquad\qquad\qquad\mathrm{[dg-scheme-faces-long]}@f] +By employing conservativity [conservative] of the numerical flux this equation simplifies to: find $u_h\in V_h$ such that -\begin{equation}\label{dg-scheme-faces} +@f[ -\sum_\kappa({\mathcal F}(u_h),\nabla v_h)_\kappa+\sum_e({\mathcal H}(u_h^+,u_h^-,{\bf n}), [v_h])_{e\setminus\Gamma}+({\mathcal H}(u_h,g,{\bf n}), v_h)_{\Gamma}=(f,v_h)_\Omega \quad\forall v_h\in V_h. -\end{equation} +\qquad\qquad\qquad\mathrm{[dg-scheme-faces]}@f] Whereas the outer unit normal ${\bf n}|_{\partial\kappa}$ is uniquely defined this is not so for ${\bf n}_e$ as the latter might be the normal from either side of the face. Hence, we need to fix the normal ${\bf n}$ on the face to be one of the two normals and denote the other normal by $-{\bf n}$. This way we get $-{\bf n}$ in the second -face term in \eqref{dg-scheme-faces-long} that finally produces the -minus sign in the jump $[v_h]$ in equation \eqref{dg-scheme-faces}. +face term in [dg-scheme-faces-long] that finally produces the +minus sign in the jump $[v_h]$ in equation [dg-scheme-faces]. + +For the linear transport equation [transport-equation] +equation [dg-scheme-faces] simplifies to +@f[ + -\sum_\kappa(u_h,{\mathbf \beta}\cdot\nabla v_h)_\kappa+\sum_e\left\{({\mathbf \beta}\cdot{\bf n}\, u_h, [v_h])_{e_+\setminus\Gamma}+({\mathbf \beta}\cdot{\bf n}\, u_h^-, [v_h])_{e_-\setminus\Gamma}\right\}=(f,v_h)_\Omega-({\mathbf \beta}\cdot{\bf n}\, g, v_h)_{\Gamma_-}, +\qquad\qquad\qquad\mathrm{[dg-transport-gamma]}@f] +which will be refered to as second version of the DG method. + + +

Implementation

+ -For the linear transport equation \eqref{transport-equation} -equation \eqref{dg-scheme-faces} simplifies to -\begin{equation}\label{dg-transport-gamma} - -\sum_\kappa(u_h,\boldsymbol\beta\cdot\nabla v_h)_\kappa+\sum_e\left\{(\boldsymbol\beta\cdot{\bf n}\, u_h, [v_h])_{e_+\setminus\Gamma}+(\boldsymbol\beta\cdot{\bf n}\, u_h^-, [v_h])_{e_-\setminus\Gamma}\right\}=(f,v_h)_\Omega-(\boldsymbol\beta\cdot{\bf n}\, g, v_h)_{\Gamma_-}, -\end{equation} -which will be refered to as \emph{second version} of the DG method. -\subsection{Implementation} As already mentioned at the beginning of this example we will implement assembling the system matrix in two different ways. -The first one will be based on the first version \eqref{dg-transport} +The first one will be based on the first version [dg-transport] of the DG method that includes a sum of integrals over all cell boundaries $\partial\kappa$. This is realized by a loop over all cells and a nested loop over all faces of each cell. Thereby each inner face @@ -178,47 +186,46 @@ values at quadrature points on faces need to be computed twice. To overcome this overhead and for comparison, we implement assembling of matrix also in a second and different way. This will -be based on the second version \eqref{dg-transport-gamma} that +be based on the second version [dg-transport-gamma] that includes a sum of integrals over all faces $e$. Here, several difficulties occurs. -\begin{itemize} -\item As degrees of freedom are associated with cells (and not to faces) +
    +
  1. As degrees of freedom are associated with cells (and not to faces) and as a normal is only defined w.r.t. a cell adjacent to the face we cannot simply run over all faces of the triangulation but need to perform the nested loop over all cells and all faces of each cell - like in the first implementation. This, because in {\tt deal.II} + like in the first implementation. This, because in deal.II faces are accessible from cells but not visa versa. -\item Due to the nested loop we arrive twice at each face. In order to +
  2. Due to the nested loop we arrive twice at each face. In order to assemble face terms only once we either need to track which faces we have treated before, or we introduce a simple rule that decides which of the two adjacent cells the face should be accessed and treated from. Here, we employ the second approach and define the following rule: - \begin{enumerate} - \renewcommand{\labelenumi}{\alph{enumi})} - \item If the two cells adjacent to a face are of the same refinement level we access and treat the face from the cell with lower index on this level. - \item If the two cells are of different refinement levels we access +
      +
    1. If the two cells adjacent to a face are of the same refinement level we access and treat the face from the cell with lower index on this level. +
    2. If the two cells are of different refinement levels we access and treat the face from the coarser cell. - \end{enumerate} -\end{itemize} +
    +
Before we start with the description of the code we first introduce its main ingredients. The main class is called -{\tt DGMethod}. It comprises all basic objects like the +DGMethod. It comprises all basic objects like the triangulation, the dofhandler, the system matrix and solution vectors. Furthermore it has got some member functions, the most prominent of -which are the {\tt assemble\_system1} and {\tt assemble\_system2} +which are the assemble_system1 and assemble_system2 functions that implement the two different ways mentioned above for assembling the system matrix. Within these assembling routines several different cases must be distinguished while performing the nested loops over all cells and all faces of each cell and assembling the respective face terms. While sitting on the current cell and looking at a specific face there are the cases -\begin{enumerate} -\item face is at boundary, -\item neighboring cell is finer, -\item neighboring cell is of the same refinement level, and -\item neighboring cell is coarser -\end{enumerate} +
    +
  1. face is at boundary, +
  2. neighboring cell is finer, +
  3. neighboring cell is of the same refinement level, and +
  4. neighboring cell is coarser +
where the `neighboring cell' and the current cell have the mentioned faces in common. In last three cases the assembling of the face terms are almost the same. Hence, we can implement the assembling of the @@ -229,28 +236,27 @@ three cases. To be kind of educational within this tutorial we perform the latter approach, of course. We go even further and encapsulate this function and everything that is needed for assembling the specific equation under consideration within a class called -{\tt DGTransportEquation}. This class includes objects of all -equation--specific functions, the {\tt RHS} and the -{\tt BoundaryValues} class, both derived from the {\tt Function} -class, and the {\tt Beta} class representing the vector field. -Furthermore, the {\tt DGTransportEquation} class comprises member -functions {\tt assemble\_face\_terms1} and -{\tt assemble\_face\_terms2} that are invoked by the -{\tt assemble\_system1} and {\tt assemble\_system2} functions of the -{\tt DGMethod}, respectively, and the functions -{\tt assemble\_cell\_term} and {\tt assemble\_boundary\_term} that +DGTransportEquation. This class includes objects of all +equation--specific functions, the RHS and the +BoundaryValues class, both derived from the Function +class, and the Beta class representing the vector field. +Furthermore, the DGTransportEquation class comprises member +functions assemble_face_terms1 and +assemble_face_terms2 that are invoked by the +assemble_system1 and assemble_system2 functions of the +DGMethod, respectively, and the functions +assemble_cell_term and assemble_boundary_term that are the same for both assembling routines. Due to the encapsulation of all equation- and scheme-specific functions, the -{\tt DGTransportEquation} class can easily be replaced by a similar +DGTransportEquation class can easily be replaced by a similar class that implements a different equation and a different DG method. -Indeed, the implementation of the {\tt assemble\_system1} and -{\tt assemble\_system2} functions of the {\tt DGMethod} class will +Indeed, the implementation of the assemble_system1 and +assemble_system2 functions of the DGMethod class will be general enough to serve for different DG methods, different equations, even for systems of equations (!) and, under small modifications, for nonlinear problems. Finally, we note that the program is dimension independent, i.e. after replacing -{\tt DGMethod<2>} by {\tt DGMethod<3>} the code runs in 3d. -\end{document} +DGMethod<2> by DGMethod<3> the code runs in 3d. diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro.html b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro.html deleted file mode 100644 index fae153754f..0000000000 --- a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro.html +++ /dev/null @@ -1,833 +0,0 @@ - -

Introduction

- - - -

-Overview -

-This example is devoted to the discontinuous Galerkin method, or -in short: DG method. It includes the following topics. - - - -

- -

-Problem -

-The DG method was first introduced to discretize simple transport -equations. Over the past years DG methods have been applied to a -variety of problems and many different schemes were introduced -employing a big zoo of different convective and diffusive fluxes. As -this example's purpose is to illustrate some implementational issues -of the DG discretization only, here we simply consider the linear -transport equation -

-
- - - - -
$\displaystyle \nabla\cdot \left\{\boldsymbol\beta u\right\}=f$   in $\displaystyle \Omega,$ -(1)
-

-subject to the boundary conditions -

-

-
-$\displaystyle u=g$   on $\displaystyle \Gamma_-,
-$ -

-

-on the inflow part $ \Gamma_-$ - of the boundary -$ \Gamma=\partial\Omega$ - -of the domain. Here, -$ \boldsymbol\beta=\boldsymbol\beta(x)$ - denotes a -vector field, $ f$ - a source function, $ u$ - the (scalar) solution -function, $ g$ - a boundary value function, -

-

-
-$\displaystyle \Gamma_-:=\{x\in\Gamma, \boldsymbol\beta(x)\cdot{\bf n}(x)<0\}
-$ -

-

-the inflow part of the boundary of the domain and $ {\bf n}$ - denotes -the unit outward normal to the boundary $ \Gamma$ -. Equation -(1) is the conservative version of the -transport equation already considered in step 9 of this tutorial. - -

-In particular, we consider problem (1) on - -$ \Omega=[0,1]^2$ - with -$ \boldsymbol\beta=\frac{1}{\vert x\vert}(-x_2, x_1)$ - -representing a circular counterclockwise flow field, $ f=0$ - and $ g=1$ - -on -$ x\in\Gamma_-^1:=[0,0.5]\times\{0\}$ - and $ g=0$ - on -$ x\in
-\Gamma_-\setminus \Gamma_-^1$ -. - -

-Discretization -

-Following the general paradigm of deriving DG discretizations for -purely hyperbolic equations, we first consider the general hyperbolic -problem -

-

-
-$\displaystyle \nabla\cdot {\mathcal F}(u)=f$   in $\displaystyle \Omega,$ -

-

-subject to appropriate boundary conditions. Here -$ {\mathcal F}$ - -denotes the flux function of the equation under consideration that in -our case, see equation (1), is represented by - -$ {\mathcal F}(u)=\boldsymbol\beta u$ -. For deriving the DG -discretization we start with a variational, mesh-dependent -formulation of the problem, -

-

-
-$\displaystyle \sum_\kappa\left\{-({\mathcal F}(u),\nabla v)_\kappa+({\mathcal
-F}(u)\cdot{\bf n}, v)_{\partial\kappa}\right\}=(f,v)_\Omega,
-$ -

-

-that originates from (1) by multiplication with -a test function $ v$ - and integration by parts on each cell $ \kappa$ - of -the triangulation. Here -$ (\cdot, \cdot)_\kappa$ - and -$ (\cdot,
-\cdot)_{\partial\kappa}$ - simply denote the integrals over the cell -$ \kappa$ - and the boundary -$ \partial\kappa$ - of the cell, -respectively. To discretize the problem, the functions $ u$ - and $ v$ - are -replaced by discrete functions $ u_h$ - and $ v_h$ - that in the case of -discontinuous Galerkin methods belong to the space $ V_h$ - of -discontinuous piecewise polynomial functions of some degree $ p$ -. Due -to the discontinuity of the discrete function $ u_h$ - on interelement -faces, the flux -$ {\mathcal F}(u)\cdot{\bf n}$ - must be replaced by a -numerical flux function -$ {\mathcal H}(u_h^+, u_h^-, {\bf n})$ -, -where -$ u_h^+\vert _{\partial\kappa}$ - denotes the inner trace (w.r.t. the -cell $ \kappa$ -) of $ u_h$ - and -$ u_h^-\vert _{\partial\kappa}$ - the outer trace, -i.e. the value of $ u_h$ - on the neighboring cell. Furthermore the -numerical flux function -$ {\mathcal H}$ -, among other things, must be -consistent, i.e. -

-

-
-$\displaystyle {\mathcal H}(u,u,{\bf n})={\mathcal F}(u)\cdot{\bf n},
-$ -

-

-and conservative, i.e. -

-
- - - - -
$\displaystyle {\mathcal H}(v,w,{\bf n})=-{\mathcal H}(w,v,-{\bf n}).$ -(2)
-

-This yields the following discontinuous Galerkin - discretization: find -$ u_h\in V_h$ - such that -

-
- - - - -
$\displaystyle \sum_\kappa\left\{-({\mathcal F}(u_h),\nabla v_h)_\kappa+({\mathc...
-...\bf n}), v_h)_{\partial\kappa}\right\}=(f,v_h)_\Omega, \quad\forall v_h\in V_h.$ -(3)
-

-Boundary conditions are realized by replacing $ u_h^-$ - on the inflow boundary $ \Gamma_-$ - by the boundary function $ g$ -. -In the special case of the transport equation -(1) the numerical flux in its simplest form -is given by -

-
- - - - -
$\displaystyle {\mathcal H}(u_h^+,u_h^-,{\bf n})(x)=\left\{\begin{array}{ll} (\b...
-...)(x),&\mbox{for } \boldsymbol\beta(x)\cdot{\bf n}(x)\geq 0, \end{array} \right.$ -(4)
-

-where on the inflow part of the cell the value is taken from the -neighboring cell, $ u_h^-$ -, and on the outflow part the value is -taken from the current cell, $ u_h^+$ -. Hence, the discontinuous Galerkin -scheme for the transport equation (1) is given -by: find -$ u_h\in V_h$ - such that for all -$ v_h\in V_h$ - following -equation holds: -

-
- - - - -
$\displaystyle \sum_\kappa\left\{-(u_h,\boldsymbol\beta\cdot\nabla v_h)_\kappa+(...
-...mma}\right\}=(f,v_h)_\Omega-(\boldsymbol\beta\cdot{\bf n}\, g, v_h)_{\Gamma_-},$ -(5)
-

-where -$ \partial\kappa_-:=\{x\in\partial\kappa,
-\boldsymbol\beta(x)\cdot{\bf n}(x)<0\}$ - denotes the inflow boundary -and -$ \partial\kappa_+=\partial\kappa\setminus \partial \kappa_-$ - the -outflow part of cell $ \kappa$ -. Below, this equation will be referred -to as first version of the DG method. We note that after a -second integration by parts, we obtain: find -$ u_h\in V_h$ - such that -

-

-
-$\displaystyle \sum_\kappa\left\{(\nabla\cdot\{\boldsymbol\beta u_h\},\nabla v_h...
-...u_h], v_h)_{\partial\kappa_-}\right\}=(f,v_h)_\Omega, \quad\forall v_h\in V_h,
-$ -

-

-where -$ [u_h]=u_h^+-u_h^-$ - denotes the jump of the discrete function -between two neighboring cells and is defined to be -$ [u_h]=u_h^+-g$ - on -the boundary of the domain. This is the discontinuous Galerkin scheme -for the transport equation given in its original notation. -Nevertheless, we will base the implementation of the scheme on the -form given by (3) and (4), -or (5), respectively. - -

-Finally, we rewrite (3) in terms of a summation over all -faces where each face -$ e=\partial \kappa\cap\partial \kappa'$ - -between two neighboring cells $ \kappa$ - and $ \kappa'$ - occurs twice: -Find -$ u_h\in V_h$ - such that -

-
- - - - -
$\displaystyle -\sum_\kappa({\mathcal F}(u_h),\nabla v_h)_\kappa+\sum_e\left\{({...
-... n}), v_h^-)_{e\setminus\Gamma}\right\}=(f,v_h)_\Omega \quad\forall v_h\in V_h,$ -(6)
-

-By employing conservativity (2) of the numerical flux -this equation simplifies to: find -$ u_h\in V_h$ - such that -

-
- - - - -
$\displaystyle -\sum_\kappa({\mathcal F}(u_h),\nabla v_h)_\kappa+\sum_e({\mathca...
-...athcal H}(u_h,g,{\bf n}), v_h)_{\Gamma}=(f,v_h)_\Omega \quad\forall v_h\in V_h.$ -(7)
-

-Whereas the outer unit normal -$ {\bf n}\vert _{\partial\kappa}$ - is uniquely -defined this is not so for $ {\bf n}_e$ - as the latter might be the -normal from either side of the face. Hence, we need to fix the normal -$ {\bf n}$ - on the face to be one of the two normals and denote the -other normal by $ -{\bf n}$ -. This way we get $ -{\bf n}$ - in the second -face term in (6) that finally produces the -minus sign in the jump $ [v_h]$ - in equation (7). - -

-For the linear transport equation (1) -equation (7) simplifies to -

-
- - - - -
$\displaystyle -\sum_\kappa(u_h,\boldsymbol\beta\cdot\nabla v_h)_\kappa+\sum_e\l...
-...mma}\right\}=(f,v_h)_\Omega-(\boldsymbol\beta\cdot{\bf n}\, g, v_h)_{\Gamma_-},$ -(8)
-

-which will be refered to as second version of the DG method. - -

-Implementation -

-As already mentioned at the beginning of this example we will -implement assembling the system matrix in two different ways. -The first one will be based on the first version (5) -of the DG method that includes a sum of integrals over all cell -boundaries -$ \partial\kappa$ -. This is realized by a loop over all cells and -a nested loop over all faces of each cell. Thereby each inner face - -$ e=\partial \kappa\cap\partial \kappa'$ - is treated twice, the first -time when the outer loop treats cell $ \kappa$ - and the second time when it -treats cell $ \kappa'$ -. This way some values like the shape function -values at quadrature points on faces need to be computed twice. - -

-To overcome this overhead and for comparison, we implement -assembling of matrix also in a second and different way. This will -be based on the second version (8) that -includes a sum of integrals over all faces $ e$ -. Here, several -difficulties occurs. - -

-Before we start with the description of the code we first introduce -its main ingredients. The main class is called -DGMethod. It comprises all basic objects like the -triangulation, the dofhandler, the system matrix and solution vectors. -Furthermore it has got some member functions, the most prominent of -which are the assemble_system1 and assemble_system2 -functions that implement the two different ways mentioned above for -assembling the system matrix. Within these assembling routines several -different cases must be distinguished while performing the nested -loops over all cells and all faces of each cell and assembling the -respective face terms. While sitting on the current cell and looking -at a specific face there are the cases - -
    -
  1. face is at boundary, -
  2. -
  3. neighboring cell is finer, -
  4. -
  5. neighboring cell is of the same refinement level, and -
  6. -
  7. neighboring cell is coarser -
  8. -
-where the `neighboring cell' and the current cell have the mentioned -faces in common. In last three cases the assembling of the face terms -are almost the same. Hence, we can implement the assembling of the -face terms either by `copy and paste' (the lazy way, whose -disadvantages come up when the scheme or the equation might want to be -changed afterwards) or by calling a separate function that covers all -three cases. To be kind of educational within this tutorial we perform -the latter approach, of course. We go even further and encapsulate -this function and everything that is needed for assembling the -specific equation under consideration within a class called -DGTransportEquation. This class includes objects of all -equation-specific functions, the RHS and the -BoundaryValues class, both derived from the Function -class, and the Beta class representing the vector field. -Furthermore, the DGTransportEquation class comprises member -functions assemble_face_terms1 and -assemble_face_terms2 that are invoked by the -assemble_system1 and assemble_system2 functions of the -DGMethod, respectively, and the functions -assemble_cell_term and assemble_boundary_term that -are the same for both assembling routines. Due to the encapsulation of -all equation- and scheme-specific functions, the -DGTransportEquation class can easily be replaced by a similar -class that implements a different equation and a different DG method. -Indeed, the implementation of the assemble_system1 and -assemble_system2 functions of the DGMethod class will -be general enough to serve for different DG methods, different -equations, even for systems of equations (!) and, under small -modifications, for nonlinear problems. Finally, we note that the -program is dimension independent, i.e. after replacing -DGMethod<2> by DGMethod<3> the code runs in 3d. diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img1.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img1.png deleted file mode 100644 index b9eae85576..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img1.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img10.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img10.png deleted file mode 100644 index 4323488a46..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img10.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img11.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img11.png deleted file mode 100644 index d7019bfa44..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img11.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img12.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img12.png deleted file mode 100644 index deb67d15e2..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img12.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img13.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img13.png deleted file mode 100644 index d881b99301..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img13.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img14.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img14.png deleted file mode 100644 index b3e02833af..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img14.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img15.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img15.png deleted file mode 100644 index 8f3318917c..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img15.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img16.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img16.png deleted file mode 100644 index e180988d98..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img16.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img17.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img17.png deleted file mode 100644 index c8b8f112a0..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img17.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img18.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img18.png deleted file mode 100644 index 3d0c27a5c5..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img18.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img19.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img19.png deleted file mode 100644 index bf1ea97101..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img19.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img2.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img2.png deleted file mode 100644 index 385a8a3b3b..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img2.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img20.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img20.png deleted file mode 100644 index 32ca7abf14..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img20.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img21.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img21.png deleted file mode 100644 index 28c341c1b2..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img21.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img22.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img22.png deleted file mode 100644 index 9493bc2585..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img22.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img23.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img23.png deleted file mode 100644 index fd83fe68d4..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img23.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img24.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img24.png deleted file mode 100644 index a2cf46993e..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img24.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img25.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img25.png deleted file mode 100644 index bc8a4deb0e..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img25.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img26.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img26.png deleted file mode 100644 index 93e647edc7..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img26.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img27.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img27.png deleted file mode 100644 index ad58966206..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img27.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img28.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img28.png deleted file mode 100644 index 081f46653a..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img28.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img29.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img29.png deleted file mode 100644 index 2cd49c0e55..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img29.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img3.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img3.png deleted file mode 100644 index 6ec7a7b930..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img3.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img30.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img30.png deleted file mode 100644 index b64a7ef6c6..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img30.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img31.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img31.png deleted file mode 100644 index cfe898a3a6..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img31.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img32.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img32.png deleted file mode 100644 index 3473724592..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img32.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img33.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img33.png deleted file mode 100644 index 6776e1951c..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img33.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img34.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img34.png deleted file mode 100644 index ae6eb75a0b..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img34.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img35.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img35.png deleted file mode 100644 index 2f66c74104..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img35.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img36.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img36.png deleted file mode 100644 index 8125a08e45..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img36.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img37.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img37.png deleted file mode 100644 index cf01050f48..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img37.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img38.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img38.png deleted file mode 100644 index a36f30ace1..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img38.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img39.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img39.png deleted file mode 100644 index 20611f5b33..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img39.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img4.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img4.png deleted file mode 100644 index dbf2e4ad43..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img4.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img40.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img40.png deleted file mode 100644 index f9ae6a4d74..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img40.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img41.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img41.png deleted file mode 100644 index 18a032097e..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img41.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img42.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img42.png deleted file mode 100644 index 6d4acd5c6d..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img42.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img43.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img43.png deleted file mode 100644 index f0adf1e254..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img43.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img44.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img44.png deleted file mode 100644 index d262857943..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img44.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img45.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img45.png deleted file mode 100644 index f86c244aed..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img45.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img46.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img46.png deleted file mode 100644 index 4d2a8795a6..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img46.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img47.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img47.png deleted file mode 100644 index f1f1847ad7..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img47.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img48.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img48.png deleted file mode 100644 index 53629d4f27..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img48.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img49.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img49.png deleted file mode 100644 index a04de18010..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img49.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img5.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img5.png deleted file mode 100644 index 5c7b629fe1..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img5.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img50.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img50.png deleted file mode 100644 index 9eb3df90cd..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img50.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img51.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img51.png deleted file mode 100644 index 89dc91e165..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img51.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img52.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img52.png deleted file mode 100644 index 50b34dfe22..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img52.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img53.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img53.png deleted file mode 100644 index 6fc079b84c..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img53.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img54.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img54.png deleted file mode 100644 index 51e959f920..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img54.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img55.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img55.png deleted file mode 100644 index 5e80634532..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img55.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img56.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img56.png deleted file mode 100644 index ef28421b7f..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img56.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img57.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img57.png deleted file mode 100644 index 96d71336f9..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img57.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img58.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img58.png deleted file mode 100644 index f733cb1d92..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img58.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img59.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img59.png deleted file mode 100644 index d1023cbac9..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img59.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img6.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img6.png deleted file mode 100644 index 392f70de7d..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img6.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img60.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img60.png deleted file mode 100644 index fb86675f9d..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img60.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img61.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img61.png deleted file mode 100644 index 4049568295..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img61.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img62.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img62.png deleted file mode 100644 index 3638263c69..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img62.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img7.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img7.png deleted file mode 100644 index c4d16d9e4f..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img7.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img8.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img8.png deleted file mode 100644 index 51d284f22f..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img8.png and /dev/null differ diff --git a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img9.png b/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img9.png deleted file mode 100644 index efa4fbd78e..0000000000 Binary files a/deal.II/doc/tutorial/chapter-2.step-by-step/step-12.data/intro/img9.png and /dev/null differ