Shell Cell Values

Main types

FerriteShells.ShellCellValuesType
ShellCellValues(geom_interpol::Interpolation, func_interpol::Interpolation, quad_rule::AbstractQuadratureRule)

A ShellCellValues object stores precomputed shape function data and reference geometry for a shell element. Works with Vec{3} node coordinates — no manual 2D projection required.

Shape function data (N, dNdξ, d2Ndξ2) are computed once at construction time from ip_shape and qr. The reference coordinates in the physical space then computed on the fly using the geometric interpolation ip_geo $x(\xi) = \sum N_{i}^\text{geo}(\xi) x_{i}$ and the solution field are interpolated via the shape functions ip_shape $u(\xi) = \sum N_{i}^\text{shape}(\xi) u_{i}$.

Arguments:

  • geom_interpol: an instance of an Interpolation which is used to interpolate the geometry. By default linear Lagrange interpolation is used.
  • func_interpol: an instance of an Interpolation used to interpolate the approximated function
  • quad_rule: an instance of a AbstractQuadratureRule

Keyword arguments: The following keyword arguments are experimental and may change in future minor releases

  • mitc: an instant of MITC to specify the shear treatment used in the element (default NoMITC)

Common methods:

  • reinit! computes the reference geometry ($A_1$, $A_2$, $G_3$, $B$, $\cdots$) by differentiating the coordinate map using ip_geo.
source

Applicable functions

The following functions are applicable ShellCellValues

Ferrite.reinit!Function
reinit!(scv::ShellCellValues, x::AbstractVector, nf::NodeFrames)
reinit!(scv::ShellCellValues, cc::CellCache, nf::NodeFrames)
reinit!(scv::ShellCellValues, cell::AbstractCell, nf::NodeFrames)

Update the ShellCellValues object for a cell with cell coordinates x and a NodeFrames object.

The reference surface measures such as the covariant basis are obtained from the NodeFrames object pre-computed initially from nf = NodeFrames(grid, ip_geo).

Note: For ShellCellValues where a shear treatment has been specified, the MITC data is also reinit!.

source
Ferrite.function_valueMethod
function_value(scv, qp, u_e)

Interpolate the displacement field at quadrature point qp from a flat DOF vector u_e. Works for both KL (3 DOFs/node: $[u_1,u_2,u_3,\cdots]$) and RM (5 DOFs/node: $[u_1,u_2,u_3,\varphi_1,\varphi_2,\cdots]$). The DOF stride is inferred from length(u_e) ÷ n_nodes; only the first 3 DOFs of each node (the displacement components) are used.

source