same spirit as we used for the assembly of the linear system.
- <h3> Derivation for the simply supported plates </h3>
+ <h4> Derivation for the simply supported plates </h3>
- Similar to the “clamped” boundary condition addressed in the implementation,
- we will derive the $C^0$ IP finite element scheme for the simply supported plates:
+ Similar to the "clamped" boundary condition addressed in the implementation,
+ we will derive the $C^0$ IP finite element scheme for simply supported plates:
@f{align*}{
\Delta^2 u(\mathbf x) &= f(\mathbf x)
\qquad \qquad &&\forall \mathbf x \in \Omega,
\Delta u(\mathbf x) &= h(\mathbf x) \qquad \qquad
&&\forall \mathbf x \in \partial\Omega.
@f}
- We multiply the biharmonic equation by the test function $v_h$ and integrate over $\Omega$ and get:
+ We multiply the biharmonic equation by the test function $v_h$ and integrate over $ K $ and get:
@f{align*}{
\int_K v_h (\Delta^2 u_h)
&= \int_K (D^2 v_h) : (D^2 u_h)
-\int_{\partial K} (\nabla v_h) \cdot (\frac{\partial \nabla u_h}{\partial \mathbf{n}}).
@f}
- Summing up over all cells $K \in \mathbb{T}$,
+ Summing up over all cells $K \in \mathbb{T}$,since normal directions of $\Delta u_h$ are pointing at
+ opposite directions on each interior edge shared by two cells and $v_h = 0$ on $\partial \Omega$,
@f{align*}{
\sum_{K \in \mathbb{T}} \int_{\partial K} v_h \frac{\partial (\Delta u_h)}{\partial \mathbf{n}} = 0,
@f}
- and by the definition of jump over cells,
+ and by the definition of jump over cell interfaces,
@f{align*}{
-\sum_{K \in \mathbb{T}} \int_{\partial K} (\nabla v_h) \cdot (\frac{\partial \nabla u_h}{\partial \mathbf{n}}) = -\sum_{e \in \mathbb{F}} \int_{e} \jump{\frac{\partial v_h}{\partial \mathbf{n}} (\frac{\partial^2 u_h}{\partial \mathbf{n^2}}).
@f}
-\sum_{K \in \mathbb{T}} \int_{\partial K} (\nabla v_h) \cdot (\frac{\partial \nabla u_h}{\partial \mathbf{n}}) = -\sum_{e \in \mathbb{F}^i} \int_{e} \jump{\frac{\partial v_h}{\partial \mathbf{n}} (\frac{\partial^2 u_h}{\partial \mathbf{n^2}})
- \sum_{e \in \partial \Omega} \int_{e} \jump{\frac{\partial v_h}{\partial \mathbf{n}} h,
@f}
- Where $\mathbb{F}^i$ is the set of interior faces.
+ where $\mathbb{F}^i$ is the set of interior faces.
This leads us to
@f{align*}{
\sum_{K \in \mathbb{T}} \int_K (D^2 v_h) : (D^2 u_h) \ dx - \sum_{e \in \mathbb{F}^i} \int_{e} \jump{\frac{\partial v_h}{\partial \mathbf{n}} (\frac{\partial^2 u_h}{\partial \mathbf{n^2}}) \ ds
and
@f{align*}{
\mathcal{F}(v_h)&:=\sum_{K \in \mathbb{T}}\int_{K} v_h f \ dx
- -
+ +
\sum_{e\subset\partial\Omega}
- \int_e \jump{\frac{\partial v_h}{\partial \mathbf n^2}} h \ ds.
+ \int_e \jump{\frac{\partial v_h}{\partial \mathbf n}} h \ ds.
@f}
+ The implementation of this boundary case is similar to "clamped" version
+ except for `boundary_worker` is no longer needed for system assembling
+ and the right hand side is changed according to the formulation.