]> https://gitweb.dealii.org/ - release-papers.git/commitdiff
FEIV example
authorTimo Heister <timo.heister@gmail.com>
Thu, 24 Jun 2021 21:54:08 +0000 (17:54 -0400)
committerTimo Heister <timo.heister@gmail.com>
Thu, 24 Jun 2021 21:54:08 +0000 (17:54 -0400)
9.3/paper.tex

index 5e09776da4bb9df6a028bfc64b15cbc5b803a71b..b6ecfcd5c4dfd655c0b9d525927b9efdfc7180ee 100644 (file)
@@ -1001,6 +1001,26 @@ functions and solutions from two adjacent cells. The
 \texttt{FEInterfaceValues} class, first introduced in \dealii{} 9.2,
 is designed to provide the necessary interface.
 
+\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}
+\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}
+For example, the interface terms of the SIPG formulation for a Laplace problem 
+\[
+\sum_{F} -
+    \left< \jump{v_h}, \average{ \nabla u_h} \cdot  \mathbf n \right>_F
+   -\left<\average{ \nabla v_h }\cdot \mathbf n,\jump{u_h}\right>_F
+   +\left<\jump{v_h}, \sigma \jump{u_h} \right>_F
+\]
+with face jump $\jump{\cdot}$ and average $\average{\cdot}$
+can be implemented as (also see \texttt{step-74}):
+\begin{c++}
+  cell_matrix(i, j) +=
+  (- fe_iv.jump(i, q) * (fe_iv.average_gradient(j, q) * n)
+   - (fe_iv.average_gradient(i, q) * n) * fe_iv.jump(j, q)
+   + penalty * fe_iv.jump(i, q) * fe_iv.jump(j, q)  
+  ) * JxW[q];
+\end{c++}
+
+
 Internally, this class provides an abstraction for two
 \texttt{FEFaceValues} objects (or \texttt{FESubfaceValues} when using
 adaptive refinement). The class introduces new interface degrees of

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.