]> git.unchartedbackwaters.co.uk Git - francis/psl_presentation_20130225.git/commitdiff
Add slides on domain of variability.
authorFrancis Russell <francis@unchartedbackwaters.co.uk>
Wed, 13 Feb 2013 19:01:00 +0000 (19:01 +0000)
committerFrancis Russell <francis@unchartedbackwaters.co.uk>
Wed, 13 Feb 2013 19:01:00 +0000 (19:01 +0000)
presentation.tex

index d056f77081d2f1b853b1d4158cf77f891e17f8d2..b569399d947ed519f1549efcffa4a2c47df72cc3 100644 (file)
@@ -61,7 +61,7 @@ understand the associated \emph{domains of variability}.
 
 \item Variability in the problem description should be expressible in
 the DSL, making it practical to use a DSL based code generator across
-multple problems.
+multiple problems.
 
 \item Variability in the implementation can be explored via alternative
 strategies for code generation implemented inside a DSL compiler.
@@ -72,7 +72,7 @@ strategies for code generation implemented inside a DSL compiler.
 
 \frame{
 
-\frametitle{Input variability in UFL (Unified Form Language)}
+\frametitle{Case Study: Unified Form Language}
 
 \begin{itemize}
 
@@ -96,11 +96,74 @@ a(u,v) = \int_\Omega \nabla u(x) \cdot \nabla v(x)\,dx
 
 \frame{
 
-\frametitle{Implementation variablity in FFC}
+\frametitle{Input variability in the Unified Form Language}
+
+\begin{itemize}
+
+\item UFL can be used to describe problems defined by PDEs once re-written into
+  a weak variational form. For example:
+  \begin{itemize}
+    \item Heat propagation
+    \item Shallow water equations
+    \item Navier Stokes
+  \end{itemize}
+
+\item UFL permits significant parameterisation of the specified problems:
+  \begin{itemize}
+    \item Dimensionality e.g. 2D or 3D.
+    \item Basis function family e.g. Lagrange, Raviart-Thomas.
+    \item Polynomial order of basis functions.
+  \end{itemize}
+
+\end{itemize}
+
+The ability to automatically apply the same analyses and optimisations over any
+problem specified in the DSL provides significant advantages in development.
+
+}
+
+\frame{
+
+\frametitle{Implementation variability in the  FEniCS Form Compiler}
+
+\begin{itemize}
+
+  \item The FEniCS Form Compiler (FFC) takes discretised PDEs written in UFL
+    and generates C++ to evaluate them on an arbitrary mesh cell.
+    
+  \item FFC has permitted the exploration of alternative implementation
+    strategies for evaluating local assembly integrals:
+
+    \begin{description}
+
+      \item[Quadrature] Takes a weighted sum of the function over the region
+        being integrated over.
+
+      \item[Tensor Contraction] Re-writes as a contraction between
+        geometry-dependent and independent tensors.
+
+    \end{description}
+
+  \item Further extensions to the tensor contraction technique have explored
+    optimisations that would be impossible to achieve in any hand-written
+    implementation.
+\end{itemize}
+
+In this case, the usage of a DSL permits exploration of the domain of
+variability in the implementation through otherwise inaccessible techniques.
 
 }
 
+\frame{
+
+\frametitle{The Domain of Variability in ONETEP}
 
+\centering
+\scalebox{15.0}{
+$\emptyset$
+}
+
+}
 
 
 \end{document}