% vim: set foldmethod=marker foldmarker=<<<,>>>:

  \section{Mobility problem} %<<<


    \begin{FIframe}{Mobility problem}{} %<<<

      \vspace{-1em}
      \begin{columns}
        \column{0.6\textwidth}

        \begin{itemize}

          \item $n$ rigid bodies ~~$\Omega = \sum\limits_{i=1}^{n} \Omega_i$

            \only<1>{
            with velocities ~$\vct{V}(\vct{x}) = \vct{v}_i + \vct{\omega}_i \times (\vct{x}-\vct{x}^c_i)$,
            }%
            \only<2>{
              with velocities ~{\color{red}$\vct{V}(\vct{x}) = \vct{v}_i + \vct{\omega}_i \times (\vct{x}-\vct{x}^c_i)$},
            }

            \vspace{0.8ex}
            and given forces $\vct{F}_i$, ~torques $\vct{T}_i$ abount $\vct{x}^c_i$.

            \vspace{1.4em}
          \item Stokesian fluid in  $\Real^3 \setminus \Omega$

            \vspace{0.7ex}
            \qquad $\displaystyle \Delta \vct{u} - \nabla p = 0, ~~\nabla \cdot \vct{u} = 0,$ \\

            \vspace{0.6ex}
            \qquad $\displaystyle \vct{u} \rightarrow 0$ ~as~ $\vct{x} \rightarrow \infty$.

            \vspace{1.3em}
          \item Boundary conditions on $\partial\Omega$,

            \vspace{0.6ex}
            \only<1>{\qquad $\displaystyle \vct{u} = \vct{V} + \vct{u}_s$.}
            \only<2>{\qquad $\displaystyle \vct{u} = {\color{red}\vct{V}} + \vct{u}_s$.}

        \end{itemize}

        \vspace{1em}
        \qquad\quad
        \only<1>{\phantom{\color{red} unknown: $\vct{V}(\vct{u}_i, \vct{\omega}_i)$}}
        \only<2>{\color{red} unknown: $\vct{V}(\vct{u}_i, \vct{\omega}_i)$}

        \column{0.4\textwidth}
          \resizebox{0.98\textwidth}{!}{\begin{tikzpicture}
            \node[anchor=south west,inner sep=0] at (0,0) {\includegraphics[angle=90,origin=c,width=4cm]{figs/rigid-bodies.png}};

            \draw[ultra thick, ->] (2.19,0.95) to (3,1.5);
            \node at (3.25, 1.5) {$\vct{F}_1$};

            \node (a) at (2.0, 1.3) {};
            \node (b) at (2.08, 1.3) {};
            \draw[thick, ->] (a)  to [out=140,in=60, looseness=3] (b);
            \draw[ultra thick, ->] (2.1,1) to (1.85,2.15);
            \node at (1.85, 2.3) {$\vct{T}_1$};

            %\draw[color=red, ultra thick] (2.7,0.9) circle (1pt);
            %\node at (2.5, 0.5) {\color{red} \Large $x$};

            %\draw[ultra thick, ->] (4.3,0.45) to (3.1,0.5);
            %\node [rotate=-6] at (5.55, 0.25) {log singularity};

            %\draw[ultra thick, ->] (10.5,-0.25) to (12.1,-0.2);
            %\node [rotate=-4.5] at (9.5, -0.17) {$|s-s_0|^{-\alpha}$};
          \end{tikzpicture}}

      \end{columns}

    \end{FIframe} %>>>


    \begin{FIframe}{Mobility problem - double-layer formulation}{} %<<<

      Represent fluid velocity: ~~$\displaystyle \vct{u} = \StokesSL[\vct{\nu}(\vct{F}_i, \vct{T}_i)] + \StokesDL[{\color{red}\vct{\sigma}}] $

      \vspace{0.3em}
      and rigid body velocity: ~~$\displaystyle \vct{V} = -\sum_{i=1}^{6n} \mathfrak{v}_i \mathfrak{v}_i^T {\color{red}\vct{\sigma}}$


      \vspace{1.5em}
      Applying boundary conditions ~ ($\displaystyle \vct{u} = \vct{V} + \vct{u}_s$ ~on~ $\partial\Omega$),

      \vspace{0.3em}
      \qquad$\qquad\displaystyle
      (I/2 + D) \, {\color{red}\vct{\sigma}} + \sum_{i=1}^{6n} \mathfrak{v}_i \mathfrak{v}_i^T {\color{red}\vct{\sigma}} = \vct{u}_s - S \, \vct{\nu}
      $

      \vspace{0.5em}{\em(Pozrikidis - Boundary Integral and Singularity Methods for Linearized Viscous Flow)}

      \vspace{0.5em}
      \only<2->{Second kind integral equation \quad {\color{red}  $\cdots$ but doesn't work for slender bodies!}
       %, should be well-conditioned.\\
       %What can possibly go wrong?

       \vspace{1em}
       \only<3->{\color{red} $\kappa(I/2 + D) ~\sim~ 1/(\varepsilon^{2} \log \varepsilon^{-1})$}
      }

    \end{FIframe} %>>>

    %\begin{FIframe}{Boundary Integral Formulation}{Dirichlet BVP} %<<<

    %  \begin{columns}
    %    \column{0.5\textwidth}
    %      \quad$\displaystyle \nabla^2 u - \nabla p = 0$ ~~in~~ $\mathbb{R}^3 \setminus \Omega$

    %      \quad$\displaystyle u |_{\Gamma} = u_0$

    %      \quad $\displaystyle u(x) \rightarrow 0 ~\text{as}~ |x|\rightarrow \infty$

    %    \column{0.5\textwidth}
    %        \includegraphics[width=0.99\textwidth]{figs/biest-conv}
    %  \end{columns}

    %  {\bf Integral equation formulation:}

    %  \begin{columns}
    %    \column{0.75\textwidth}

    %      \vspace{1em}
    %      $u = \frac{\sigma}{2} + \StokesDL[\sigma] \text{~~~~on~~~~} \Gamma$ \hfill $\kappa \sim 324$

    %      \vspace{1em}
    %      $u = \StokesSL[\sigma] \text{~~~~on~~~~} \Gamma$ \hfill $\kappa \sim 651$

    %      \vspace{1em}
    %      $u = \frac{\sigma}{2} + \StokesDL[\sigma] + \StokesSL[\sigma] \text{~~~~on~~~~} \Gamma$ \hfill $\kappa \sim 9$

    %  \end{columns}

    %\end{FIframe} %>>>

    %\begin{FIframe}{Conditioning of layer-potential operators}{} %<<<

    %  \vspace{1em}
    %  \begin{columns}
    %    \column{0.05\textwidth}

    %    \column{0.35\textwidth}
    %      %\quad$\displaystyle \nabla^2 u - \nabla p = 0$ ~~in~~ $\mathbb{R}^3 \setminus \Omega$

    %      %\quad$\displaystyle u |_{\Gamma} = u_0$

    %      %\quad $\displaystyle u(x) \rightarrow 0 ~\text{as}~ |x|\rightarrow \infty$

    %      \vspace{1em}
    %      $\kappa(S)$ \hfill $\sim 2.6e6$

    %      \vspace{1em}
    %      $\kappa(I/2 + D)$ \hfill $\sim 4.3e6$

    %      \vspace{1em}
    %      $\kappa(I/2 + D + 16 S)$ \hfill $\sim 80$

    %    \column{0.1\textwidth}

    %    \column{0.50\textwidth}
    %        \includegraphics[width=0.99\textwidth]{figs/slender-torus}
    %  \end{columns}

    %  \vspace{3em}
    %  \begin{itemize}
    %    \item For infinite cylinder (Laplace case): ~~ $\kappa(I/2 + D) ~\sim~ 1/(\varepsilon^{2} \log \varepsilon^{-1})$

    %      \vspace{0.5em}
    %    \item Combined field operator well-conditioned: ~~ $I/2 + D + S ~/~ (2\varepsilon \log \varepsilon^{-1})$
    %  \end{itemize}

    %\end{FIframe} %>>>

    \begin{FIframe}{Mobility problem - combined field formulation}{} %<<<

      \only<1>{
      Represent fluid velocity: ~~$\displaystyle \vct{u} = \StokesSL[\vct{\nu}(\vct{F}_i, \vct{T}_i)] + \StokesCF[{\color{red}\vct{\sigma}} ] $
      }
      \only<2->{
        \vspace{-0.7em}
      Represent fluid velocity: ~~$\displaystyle \vct{u} = \StokesSL[\vct{\nu}(\vct{F}_i, \vct{T}_i)] + \StokesCF[{\color{red}\vct{\sigma}} - \sum_{i=1}^{6n} \mathfrak{v}_i \mathfrak{v}_i^T {\color{red}\vct{\sigma}} ] $
      }

      \only<1>{\vspace{0.5em}}%
      \only<2->{\vspace{-0.65em}}%
      and rigid body velocity: ~~$\displaystyle \vct{V} = -\sum_{i=1}^{6n} \mathfrak{v}_i \mathfrak{v}_i^T {\color{red}\vct{\sigma}}$

      \vspace{0.3em}
      where, ~$\displaystyle \StokesCF =  \StokesDL + \StokesSL / (2 \varepsilon \log \varepsilon^{-1}) $.


      \only<3>{
      \vspace{2.5em}
      Applying boundary conditions,

      \vspace{0.3em}
      \qquad$\qquad\displaystyle
      (\convop{I}/2 + \StokesCF)[{\color{red}\vct{\sigma}} - \sum_{i=1}^{6n} \mathfrak{v}_i \mathfrak{v}_i^T {\color{red}\vct{\sigma}} ] + \sum_{i=1}^{6n} \mathfrak{v}_i \mathfrak{v}_i^T {\color{red}\vct{\sigma}} = \vct{u}_s - \StokesSL[\vct{\nu}]
      $

      \vspace{1em}
      Second kind integral equation and  well-conditioned!
      }

    \end{FIframe} %>>>

    \begin{FIframe}{Numerical Results - Sedimentation Flow}{} %<<<

      \vspace{-1.5em}
      \begin{columns}[t]
        \column{0.7\textwidth}

          \vspace{1ex}
          {\bf Time-stepping:} 5-th order adaptive SDC

          \vspace{1ex}
          {\bf 8-digits accuracy} in quadratures, GMRES solve, \\
          and time-stepping.

          \vspace{1ex}
          {\bf 40 CPU cores}

          \only<2>{
          \embedvideo{\includegraphics[width=0.99\textwidth]{videos/sed2-top-zoom1}}{videos/sed2-top-zoom1.avi}
          }

        \column{0.4\textwidth}
          \vspace{-0.5em}
          \only<1>{
          \embedvideo{\includegraphics[width=0.99\textwidth]{videos/sed2-side-color}}{videos/sed2-side-color.mov}
          }
          \only<2>{
          \includegraphics[width=0.99\textwidth]{videos/sed2-side-color}
          }

      \end{columns}

      %\embedvideo{\includegraphics[width=0.25\textwidth]{videos/mesh}}{videos/mesh.avi}
      % 5-th order SDC time-stepping
      % 7 - digits accuracy
      % adaptively refined mesh

      % block diagonal preconditioner - plot of GMRES iterations
    \end{FIframe} %>>>

    %\begin{FIframe}{Numerical Results - Sedimentation Flow}{} %<<<

    %  \vspace{-2.0em}
    %  \begin{center}
    %  \resizebox{0.85\textwidth}{!}{\begin{tikzpicture}
    %    \pgfplotsset{
    %      xmin=0, xmax=250,
    %      width=12cm, height=7cm,
    %      xlabel={$T$}, xtick distance=50,
    %    }
    %    \begin{axis}[ymin=0, ymax=110, ylabel={$N_{iter}$}, legend style={draw=none,at={(0,1)},anchor=north west}]
    %      \addplot [thick,color=blue] table [x={t},y={noprecond}] {data/sed2}; \addlegendentry{no-preconditioner};
    %      \addplot [thick,color=red] table [x={t},y={precond}] {data/sed2}; \addlegendentry{block-preconditioner};
    %      %\addplot [thick,color=green] table [x={t},y={KSPprecond}] {data/sed2}; \addlegendentry{Krylov-preconditioner};
    %    \end{axis}

    %    \begin{axis}[axis y line*=right, ymin=0, ymax=65000, ylabel={$N$}, legend style={draw=none,at={(0.97,0.97)},anchor=north east}]
    %      \addplot [thick,dashed,color=black] table [x={t},y={N}] {data/sed2}; \addlegendentry{$N$};
    %    \end{axis}
    %  \end{tikzpicture}}
    %  \end{center}

    %  \vspace{-1em}
    %  {\bf Close-to-touching:} ~~smaller time-steps, ~~more unknowns ($N$), \\
    %  high GMRES iteration count (one-body preconditioner doesn't help). \\
    %  {\color{red} $\sim 125 \times$ more expensive!}
    %\end{FIframe} %>>>



    %\begin{FIframe}{Accelerating GMRES Solves}{} %<<<

    %  \vspace{0.5em}
    %  \resizebox{.9\textwidth}{!}{\begin{tikzpicture}%<<<
    %    % draw horizontal line
    %    \draw[ultra thick, ->] (0,0) -- (14,0);

    %    % draw vertical lines
    %    \foreach \x in {2,4,6,8,10,12}
    %    \draw[ultra thick] (\x cm,3pt) -- (\x cm,-3pt);

    %    % draw node
    %    \draw[ultra thick] ( 4,0) node[below=3pt] {$t_{n-2}$};
    %    \draw[ultra thick] ( 6,0) node[below=3pt] {$t_{n-1}$};
    %    \draw[ultra thick] ( 8,0) node[below=3pt] {$t_{n}$};
    %    \draw[ultra thick] (10,0) node[below=3pt] {$t_{n+1}$};
    %  \end{tikzpicture}}%>>>

    %  \vspace{0.5em}
    %  \begin{itemize}
    %    \setlength\itemsep{0.5em}
    %    \item Forward Euler: ~$n\text{-}{th}$~ time step
    %      \begin{itemize}
    %        \item solve BIE using GMRES:~~ $A_{y_n} \sigma_{\!n} = b_{y_n}$
    %        \item advance to $t_{n+1}$:~~~ $y_{n+1} = y_{n} + h\, v(\sigma_{\!n})$
    %      \end{itemize}
    %    \only<2->{\item Use ~$\sigma_{\!n-1}$~ as initial guess to GMRES}
    %    \only<3->{: {\color{red} doesn't work well}}
    %  \end{itemize}

    %  \only<4->{
    %  \vspace{0.5em}
    %  \begin{itemize}
    %    \item Re-use Krylov subspace from previous time step?

    %    \only<5->{
    %    \begin{itemize}
    %      \item Krylov subspace: ~~$X \leftarrow [b, ~A b, ~\cdots, ~A^{k\shortminus\!1} b]$

    %      \item Compute QR decomposition: ~ $QR \leftarrow AX$

    %      \item Preconditioner: ~ $P \coloneq I - Q Q^{T} + X R^{-1} Q^{T}$

    %        \vspace{0.5em}
    %      \item[] \qquad $P \, Ax = x$ \quad for all~~ $x \in span(X)$
    %      \item[] \qquad ~\, $P \, y = y$  \quad for all~~ $y \perp span(X)$

    %    \end{itemize}
    %    }
    %  \end{itemize}}

    %\end{FIframe} %>>>


    %\begin{FIframe}{Krylov Preconditioning with SDC}{} %<<<

    %  \vspace{-1em}
    %  \resizebox{.9\textwidth}{!}{\begin{tikzpicture}%<<<
    %    % draw horizontal line
    %    \draw[ultra thick, ->] (0,0) -- (14,0);

    %    % draw vertical lines
    %    \foreach \x in {1.7, 12.3}
    %    \draw[ultra thick] (\x cm,6pt) -- (\x cm,-6pt);
    %    \draw[ultra thick] (1.7000 ,0) node[above=5pt] {$a$};
    %    \draw[ultra thick] (12.3000,0) node[above=5pt] {$b$};

    %    \foreach \x in {1.9000, 2.6699, 4.5000, 7.0000, 9.5000, 11.3301, 12.1000}
    %    \draw[ultra thick, blue] (\x cm,3pt) -- (\x cm,-3pt);

    %    % draw node
    %    \draw[ultra thick, blue] (1.9000 ,0) node[below=3pt] {$t_1$};
    %    \draw[ultra thick, blue] (2.6699 ,0) node[below=3pt] {$t_2$};
    %    \draw[ultra thick, blue] (4.5000 ,0) node[below=3pt] {$t_3$};
    %    %\draw[ultra thick, blue] (7.0000 ,0) node[below=3pt] {$t_4$};
    %    %\draw[ultra thick, blue] (9.5000 ,0) node[below=3pt] {$t_5$};
    %    \draw[ultra thick, blue] (8.5,0) node[below=3pt] {$\cdots$};
    %    %\draw[ultra thick, blue] (11.3301,0) node[below=3pt] {$t_6$};
    %    \draw[ultra thick, blue] (12.1000,0) node[below=3pt] {$t_m$};

    %    \only<2->{%<<<
    %      \draw[ultra thick, DarkGreen] (1.9000 ,-1) node {$P_1$};
    %      \draw[ultra thick, DarkGreen] (2.6699 ,-1) node {$P_2$};
    %      \draw[ultra thick, DarkGreen] (4.5000 ,-1) node {$P_3$};
    %      \draw[ultra thick, DarkGreen] (8.5000 ,-1) node {$\cdots$};
    %      \draw[ultra thick, DarkGreen] (12.1000,-1) node {$P_m$};

    %      \draw[ultra thick, DarkGreen, ->] (2.10 ,-1) -- (2.40 ,-1);
    %      \draw[ultra thick, DarkGreen, ->] (3.00 ,-1) -- (3.50 ,-1);
    %      \draw[ultra thick, DarkGreen, ->] (4.86 ,-1) -- (5.40 ,-1);
    %    }%>>>
    %    \only<3->{%<<<
    %      \draw[ultra thick, DarkGreen, ->] (1.9000 ,-1.25) -- (1.9000 ,-1.8);
    %      \draw[ultra thick, DarkGreen, ->] (2.6699 ,-1.25) -- (2.6699 ,-1.8);
    %      \draw[ultra thick, DarkGreen, ->] (4.5000 ,-1.25) -- (4.5000 ,-1.8);
    %      \draw[ultra thick, DarkGreen, ->] (12.100 ,-1.25) -- (12.100 ,-1.8);

    %      \draw[ultra thick, DarkGreen] (1.9000 ,-2.1) node {~~\,$P^{(1)}_1$};
    %      \draw[ultra thick, DarkGreen] (2.6699 ,-2.1) node {~~\,$P^{(1)}_2$};
    %      \draw[ultra thick, DarkGreen] (4.5000 ,-2.1) node {~~\,$P^{(1)}_3$};
    %      \draw[ultra thick, DarkGreen] (8.5000 ,-2.1) node {$\cdots$};
    %      \draw[ultra thick, DarkGreen] (12.100 ,-2.1) node {~~\,$P^{(1)}_m$};

    %      \draw[ultra thick, black, ->] (0.75 ,-0.5) -- (0.75 ,-3.5);
    %      \draw[ultra thick, black] (0.5,-2) node[rotate=-90] {corrections};
    %    }%>>>
    %    \only<4->{%<<<
    %      \draw[ultra thick, DarkGreen, ->] (1.9000 ,-2.5) -- (1.9000 ,-3.0);
    %      \draw[ultra thick, DarkGreen, ->] (2.6699 ,-2.5) -- (2.6699 ,-3.0);
    %      \draw[ultra thick, DarkGreen, ->] (4.5000 ,-2.5) -- (4.5000 ,-3.0);
    %      \draw[ultra thick, DarkGreen, ->] (12.100 ,-2.5) -- (12.100 ,-3.0);

    %      \draw[ultra thick, DarkGreen] (1.9000 ,-3.3) node {~~\,$P^{(2)}_1$};
    %      \draw[ultra thick, DarkGreen] (2.6699 ,-3.3) node {~~\,$P^{(2)}_2$};
    %      \draw[ultra thick, DarkGreen] (4.5000 ,-3.3) node {~~\,$P^{(2)}_3$};
    %      \draw[ultra thick, DarkGreen] (8.5000 ,-3.3) node {$\cdots$};
    %      \draw[ultra thick, DarkGreen] (12.100 ,-3.3) node {~~\,$P^{(2)}_m$};

    %      %\draw[ultra thick, DarkGreen, ->] (1.9000 ,-3.7) -- (1.9000 ,-4.2);
    %      %\draw[ultra thick, DarkGreen, ->] (2.6699 ,-3.7) -- (2.6699 ,-4.2);
    %      %\draw[ultra thick, DarkGreen, ->] (4.5000 ,-3.7) -- (4.5000 ,-4.2);
    %      %\draw[ultra thick, DarkGreen, ->] (12.100 ,-3.7) -- (12.100 ,-4.2);
    %    }%>>>

    %  \end{tikzpicture}}%>>>

    %  \only<5->{
    %    \vspace{1.4em}

    %    \begin{columns}
    %      \column{0.05\textwidth}
    %      \column{0.45\textwidth}
    %        GMRES iter without preconditioner:

    %        \vspace{0.5em}
    %        \begin{tabular}{r | r r r r r}
    %          \parbox[t]{2mm}{\multirow{5}{*}{\rotatebox[origin=c]{-90}{correction $\rightarrow$}}}
    %            & \multicolumn{5}{c}{sub-step $\rightarrow$}  \\
    %          \hline
    %                                  & 66 & 66 & 66 & 66 & 66    \\
    %                                  & 66 & 66 & 66 & 66 & 66    \\
    %                                  & 66 & 66 & 66 & 66 & 66    \\
    %                                  & 66 & 66 & 66 & 66 & 66    \\
    %        \end{tabular}

    %      \column{0.05\textwidth}
    %      \column{0.44\textwidth}
    %        \only<6->{
    %        GMRES iter with preconditioner:

    %        \vspace{0.5em}
    %        \begin{tabular}{r | r r r r r}
    %          \parbox[t]{2mm}{\multirow{5}{*}{\rotatebox[origin=c]{-90}{correction $\rightarrow$}}}
    %            & \multicolumn{5}{c}{sub-step $\rightarrow$}  \\
    %          \hline
    %                                  & 66 & 30 & 22 & 45 & 30    \\
    %                                  & 35 & 17 & 33 & 28 & 24    \\
    %                                  &  8 &  4 & 14 &  5 & 12    \\
    %                                  &  1 &  1 &  2 &  2 &  4    \\
    %        \end{tabular}}

    %    \end{columns}
    %  }

    %\end{FIframe} %>>>


    \begin{FIframe}{Numerical Results - Sedimentation Flow}{} %<<<

      \vspace{-2.0em}
      \begin{center}
      \resizebox{0.95\textwidth}{!}{\begin{tikzpicture}
        \pgfplotsset{
          xmin=0, xmax=250,
          width=12cm, height=7cm,
          xlabel={$T$}, xtick distance=50,
        }
        \begin{axis}[ymin=0, ymax=110, ylabel={$N_{iter}$}, legend style={draw=none,at={(0,1)},anchor=north west}]
          \addplot [thick,color=blue] table [x={t},y={noprecond}] {data/sed2}; \addlegendentry{no-preconditioner};
          \addplot [thick,color=red] table [x={t},y={precond}] {data/sed2}; \addlegendentry{block-preconditioner};
          \addplot [thick,color=DarkGreen] table [x={t},y={KSPprecond}] {data/sed2}; \addlegendentry{Krylov-preconditioner};
        \end{axis}

        \begin{axis}[axis y line*=right, ymin=0, ymax=65000, ylabel={$N$}, legend style={draw=none,at={(0.97,0.97)},anchor=north east}]
          \addplot [thick,dashed,color=black] table [x={t},y={N}] {data/sed2}; \addlegendentry{$N$};
        \end{axis}
      \end{tikzpicture}}
      \end{center}

      %\vspace{-1em}
      %{\bf Close-to-touching:} ~~smaller time-steps, ~~more unknowns ($N$), \\
      %high GMRES iteration count (block preconditioner doesn't help). \\
      %{\color{red} $\sim 125 \times$ more expensive!}
    \end{FIframe} %>>>
  %>>>

  %<<< Sedimentation flow
    \begin{FIframe}{Numerical Results - Sedimentation Flow}{} %<<<

      \begin{columns}

        \column{0.35\textwidth}

          \vspace{1ex}
          {\bf 5-th order adaptive SDC}

          \vspace{1ex}
          {\bf 8-digits accuracy} in quadratures, GMRES solve, \\
          and time-stepping.

          \vspace{1ex}
          {\bf 0.5 million unknowns} \\
          64 rings.

          \vspace{1ex}
          {\bf 160 CPU cores}

        \column{0.65\textwidth}

        \embedvideo{\includegraphics[width=0.99\textwidth]{videos/sed64}}{videos/sed64.mov}

      \end{columns}

    \end{FIframe} %>>>

    %\begin{FIframe}{Numerical Results - Sedimentation Flow}{} %<<<

    %  \vspace{-1.9em}
    %  \centering
    %  \only<1>{ \embedvideo{\includegraphics[width=0.94\textwidth]{videos/bacteria2_.png}}{videos/bacteria2_.mov} }%
    %  \only<2>{ \embedvideo{\includegraphics[width=0.47\textwidth]{videos/bacteria64-density.png}}{videos/bacteria64-density.mov} }

    %\end{FIframe} %>>>
  %>>>

