Building blocks for mantle convection simulations for models with variable viscosity and anelastic approximation
Hi,
in order to run mantle convection models on a thick spherical shell with blending and variable viscosity and the generalised mass conservation equation of the (truncated) anelastic approximation some building blocks are still missing. Especially in such models we need the
- Epsilon Operator given by
\mathcal{A}(\vec{u}) = \text{div}\left[\mu\left(\text{grad}(\vec{u})+ \text{grad}(\vec{u})^T\right)
\right]
- and the Full Viscous Operator given by
\mathcal{A}(\vec{u}) = \text{div}\left[\mu\left(\text{grad}(\vec{u})+ \text{grad}(\vec{u})^T\right)
\right] - \frac{2}{3} \text{grad}\left(\mu\,\text{div}\vec{u}\right)
where \mu
is the variable kinematic viscosity.
Components that need implementing are:
-
Epsilon operators that make use of the already available HyTeG forms which support blending and/or a callback function for viscosity, these are
p[12]_epsiloncc_*_*_affine_q2
p[12]_epsiloncc_*_*_blending_q2
p[12]_epsilonvar_*_*_affine_q2
-
p[12]_epsilonvar_*_*_blending_q2
currently these forms seem not to be used anywhere. Note that also of the corresponding FEniCS forms only the 2D versionp1_stokes_epsilon
seems to show up in an operator, but neither thep2
variant nor the 3D versionsp[12]_stokes_epsilon_tet
.
- Different forms for the full viscous operator
- Operators allowing to use the forms for the full viscous operator
- Tests for the new forms and for the new operators
Cheers
Marcus