| header-includes |
|
|---|
The resolution of the viscous flow on the curved shell will be done in an updated Lagrangian manner. At each time step, we consider the current geometrical state of the shell as the reference surface. After computing the shell velocity, we update the geometry accordingly and consider this new geometry as the reference surface for the next time step.
As discussed in the paper, Naghdi-type shell theories (shearable models) are easier to implement that Koiter-type theories. Shearing energy will be here artificially penalized in order to approximate the thin shell model derived in the paper.
The discrete shell reference surface, denoted by
Following [Hale et al., 2018], we assume the shell director to be unstretchable (
Note that such a simple parametrization of the the director prevent us from working with a whole sphere due to singularities arising at the poles. In the numerical simulations, we benefit from the cell symmetry and work with only a portion of a sphere with appropriate boundary conditions.
The strain rate tensor
To approximately enforce a thin shell kinematics, we penalize the shear strain rate term in the Rayleigh potential by adding an additional dissipation contribution
$$
\phi(\boldsymbol{U}, \boldsymbol{d}) = N^{\alpha\beta} \Delta_{\alpha\beta} + M^{\alpha \beta}\Omega_{\alpha\beta} +k_{s,\text{pen}} \mu T a^{\alpha\beta} \gamma_{\alpha} \gamma_{\beta}
$$
where
where the internal membrane forces and bending moments are given by:
$$
N^{\alpha\beta} = 4 \mu T \left(\mathcal{A}^{\alpha\beta\mu\delta}\Delta_{\mu\delta} + \dfrac{1}{2} a^{\alpha\beta}\left(k_d-\frac{v_p}{T}\right)\right)
+T\mathcal{Q}^{\alpha\beta}\zeta
$$
and
$$
M^{\alpha\beta} =\mu \frac{T^3}{3} \mathcal{A}^{\alpha\beta\mu\delta} \Omega_{\mu\delta}
$$
where:
$$
\mathcal{A}^{\alpha\beta\mu\delta}=\frac{1}{4}(a^{\alpha\mu}a^{\beta\delta}+a^{\alpha\delta}a^{\beta\mu})+\frac{1}{2} a^{\alpha\beta}a^{\mu\delta}
$$
At each time step, we must solve for the shell mid-surface velocity
As a result, we have a 5-dof system to solve at each time step: three velocity components:
-
a quadratic continuous (
$P^2$ -Lagrange) interpolation for the velocity field$\boldsymbol{U}$ -
a linear interpolation with continuity enforced at the triangle mid-sides (Crouzeix-Raviart element) for the angular rates
$\dot{\boldsymbol{\beta}}$
Such a discretization choice is extremely simple and seems free of any shear locking effects as shown in [Campello et al., 2003] for nonlinear shells and [Bleyer, 2021] in the case of plate and shell limit analysis theory.
The thickness field set_functions_space method of the ActiveShell class.
When considering the system evolution between time
Here, we assume no external loading of the shell, such that all shell deformations are powered by internally generated active stress. Note that, due to the linear expressions of the strain rates and the quadratic form of the dissipation potential
We then update the geometry in an asynchronous and Lagrangian manner, by solving the discretized thickness evolution equation first, then updating the midsurface position and the director using as follows:
In some numerical illustrations, such as cell division, we want to ensure that the total volume
In the FEniCS implementation, we use a "Real" function space to add this additional single scalar unknown
Note that the previous approach can also be easily extended to the case where the volume change rate is imposed to a given constant $\dot{V}\text{imp}$ $$ \frac{d V}{d t} = \int{\mathcal{S}} \bm{U} \cdot \bm{n}, \text{d} A = \dot{V}\text{imp} $$ by considering this new Lagrangian instead: $$ \mathcal{L}(\boldsymbol{U},\dot{\boldsymbol{\beta}},P;T{n}) = \mathcal{R}(\boldsymbol{U},\dot{\boldsymbol{\beta}};T_{n}) + P\left(\int_{\mathcal{S}} \bm{U} \cdot \bm{n}, \text{d} A - \dot{V}_\text{imp}\right). $$
We give here the main aspects of the implementation of the ActiveShell class.
At the beginning of each time step, the initialize method is called which fulfills different purposes by calling various methods:
-
set_shape: defines the current position$\phi_0$ based on the mesh coordinates at the beginning of the time step -
set_local_frame: computes the local basis vectors$\bm{a}_1,\bm{a}_2,\bm{n}$ of the shell surface. Note that boundary conditions can be apply on the boundary to enforce the normal to lying in some specific symmetry plane (boundary_conditions_n0method) -
boundary_conditions: defines boundary conditions for the velocity and director fields -
set_director: computes the initial director angles$\bm{\beta}_0$ based on the initial normal, the initial director is initialized to the initial normal. -
set_kinematics_and_fundamental_forms: defines the current fundamental forms$\bm{a}_0$ ,$\bm{b}_0$ , curvature$H$ -
set_kinematics: defines the new unknown director$\bm{d}$ from$\bm{d}_0$ and the unknown angle rates$\dot{\bm{\beta}}$ -
set_energies: defines the various constitutive relationships of the active viscous shell model and the corresponding dissipation potentials -
set_total_energy: aggregates all contributions into the global system lagragian, including volume constraints. Automatic differentiation is used to obtain the corresponding system jacobian
The solve method then solves the corresponding system for the new velocity and director angles rate.
The evolution method then advances in time by:
- solving the thickness evolution equation (
set_thicknessmethod) - updating the mesh position with the mesh displacement
$\bm{U}\Delta t$ (using FEniCSALE.movemethod)
Finally, during the time stepping loop, mesh refinement is performed every remeshing_frequency time steps.
Hale, J. S., Brunetti, M., Bordas, S. P., & Maurini, C. (2018). Simple and extensible plate and shell finite element models through automatic code generation tools. Computers & Structures, 209, 163-181.
Campello, E. M. B., Pimenta, P. M., & Wriggers, P. (2003). A triangular finite shell element based on a fully nonlinear shell formulation. Computational mechanics, 31(6), 505-518.
Bleyer, J. (2021). A novel upper bound finite-element for the limit analysis of plates and shells. European Journal of Mechanics-A/Solids, 90, 104378.