# 2021-11-19 Mixed methods¶

## Last time¶

• Community presentations

• Petrov-Galerkin stabilization

• Mass lumping for time dependent problems

• Examples of finite element interfaces

## Today¶

• Community presentations

• More finite element interfaces: Deal.II and MOOSE

• Vector problems and mixed finite elements

# Finite element interfaces: Deal.II¶

$\begin{gather*} v^T F(u) \sim \int_\Omega v \cdot \color{olive}{f_0(u, \nabla u)} + \nabla v \!:\! \color{olive}{f_1(u, \nabla u)} \quad v^T J w \sim \int_\Omega \begin{bmatrix} v \\ \nabla v \end{bmatrix}^T \color{teal}{\begin{bmatrix} f_{0,0} & f_{0,1} \\ f_{1,0} & f_{1,1} \end{bmatrix}} \begin{bmatrix} w \\ \nabla w \end{bmatrix} \\ J w = \sum_e \mathcal E_e^T \underbrace{\begin{bmatrix} B_I \\ B_{\nabla} \end{bmatrix}^T \begin{bmatrix} I & \\ & \left( \frac{\partial X}{\partial x}\right)^T \end{bmatrix}}_{\texttt{fe\_values}} W_q \color{teal}{\begin{bmatrix} f_{0,0} & f_{0,1} \\ f_{1,0} & f_{1,1} \end{bmatrix}} \underbrace{\begin{bmatrix} I & \\ & \left( \frac{\partial X}{\partial x}\right) \end{bmatrix} \begin{bmatrix} B_I \\ B_{\nabla} \end{bmatrix}}_{\texttt{fe\_values}} \mathcal E_e w_L \end{gather*}$
for e in elems:
fe_values.reinit()
for q in q_points:
for i in test_functions:
for j in trial_functions
K_e[i,j] += ...
f_e[i] += ...
for f in e.faces:
if f.at_boundary():
fe_face_values.reinit()
for q in q_points:
... # Finite element interfaces: MOOSE¶

## Materials¶

• Can be written without knowledge of finite elements

• Registration allows libraries of materials (some in MOOSE, others packaged separatle)

• Example: crystal plasticity

• Code is C++, so can do dirty things

• table lookups, proprietary code

• implicit materials (Newton solve at each quadrature point)

## Composition in configuration files¶

• Add fields and coupling

• Select materials from libraries

• Multiphysics composition

• Multiscale coupling

# Periodic table of finite elements¶

## Exactly satisfies discrete identities like¶

$\nabla\cdot\nabla\times u = 0$
$\nabla\times\nabla u = 0$
• Generalized concept: Finite Element Exterior Calculus (FEEC)

• Improved stability or numerical properties

• Higher order of accuracy for quantity of interest despite non-smooth problem

## Problems with constraints¶

Stokes equation: (slow) incompressible flow

(47)\begin{align} -\nabla\cdot(\eta \nabla^s \mathbf u - pI) &= 0 \\ \nabla\cdot \mathbf u &= 0 \end{align}

where $$\nabla^s \mathbf u$$ is the symmetric part of the $$3\times 3$$ gradient $$\nabla \mathbf u$$.

Weak form: find $$(\mathbf u, p)$$ such that

$\int \nabla^s \mathbf v \!:\! \eta \!:\! \nabla^s \mathbf u - p \nabla\cdot \mathbf v - q \nabla\cdot \mathbf u = 0, \quad \forall (\mathbf v, q)$