1 Introduction

It has been clear since the earliest implementations of a basic 9-node element, that it has several limitations, i.e. it is excessively stiff (locks) and its accuracy is diminished by shape distortions.

To alleviate the problem of an excessive stiffness, five types of modifications to the standard formulation of the 9-node element have been proposed:

  1. 1.

    Uniform Reduced Integration (URI) in [53], with the \( 2 \times 2 \) instead of the \( 3 \times 3 \) Gauss integration scheme. This yields a rank-deficient stiffness matrix and requires a stabilization, which was developed e.g., in [4, 5, 31] and for shells in [50].

  2. 2.

    Selective Reduced Integration (SRI) in [32], with different integration schemes for various parts of the strain energy. This method yields the correct rank of the stiffness matrix but strain components are computed at different integration points, which limits the range of application of the element.

  3. 3.

    Two-level approximations of strains, which are developed as either the Assumed Strain (AS) method or the Mixed Interpolation of Tensorial Components (MITC) method, see, e.g., two books [11, 17]. These were invented to overcome the above mentioned limitation of the SRI. (Note that in the 4-node element, this technique is applied to transverse shear strains and designated the Assumed Natural Strain (ANS) method.) We will show in the current paper that the MITC method still has the potential for improvement.

  4. 4.

    The enhanced element based on the Enhanced Assumed Strain (EAS) technique, which uses a set of 11 modes for membrane behavior [7]. They are incorporated using an identical formula to that used for 4-node elements, see [39, 40, 42, 51]. We use these modes in our version of the 9-EAS11 shell element.

  5. 5.

    Partly hybrid formulations based on the Hellinger–Reissner functional, e.g., [34, 35]. Hybrid stress, hybrid strain and enhanced strain 9-node shell elements are developed and assessed in [36]. We are not aware of any 9-node shell element based on the Hu–Washizu functional, which was a basis of several 4-node shell elements of very good accuracy and exceptional robustness in non-linear applications, see e.g. [16, 41, 45, 47, 48].

The technique of two-level approximations of strains is applied either to Cartesian strain components (the AS method) or to covariant strain components (the MITC method); in the current paper we focus on the latter one. The strain components are sampled at the points where they are of good accuracy, and, next, extrapolated over the element. In effect, all strain components are available at each of the \( 3 \times 3 \) Gauss integration points.

For sampling of the shell strain components   (11, 13)   and   (22, 23),   the   \( 2 \times 3 \)   and   \( 3 \times 2 \)-point schemes are used in the literature respectively. Several sets of sampling points and interpolation functions were proposed for the (12) strain components, i.e. the in-plane shear strain \( \varepsilon _{12} \) and the twisting strain \( \kappa _{12} \),

  1. 1.

    The \( 2 \times 3 \) and the \( 3 \times 2 \)-point schemes in [19, 21, 31]. Note that the last paper uses different approximation functions from the first two.

  2. 2.

    The \( 2 \times 2 \)-point scheme in [8, 28]. This scheme uses exactly the same points for the shear component as the SRI of [32] (Table 1, p. 580).

In our tests, the \( 2 \times 2 \)-point scheme for the (12) strain components provided the correct rank of the tangent matrix and was the most accurate.

Another problem with the 9-node elements is the sensitivity of solutions to shifts of the midside nodes and the central node from the middle positions, which causes loss of accuracy for all the element formulations listed above. Some earlier studies, e.g., [26] suggest that only regular meshes, i.e. with straight element boundaries and evenly spaced nodes, give satisfactory results, while the accuracy is poor for curved boundaries or unevenly spaced nodes. Since then, however, research has been conducted to reduce this sensitivity.

The best remedy found so far, are the Corrected Shape Functions (CSF) of [9] used instead of the standard shape functions based on isoparametric transformations of [15]. In [9], the CSF are tested for an 8-node (serendipity) element for the Laplace equation (heat conduction) and the \(4\times 4\) integration rule. In [30], we examine several 9-node 2D elements for plane stress elasticity and the \(3\times 3\) Gauss integration: QUAD9** [19], MITC9 [2] and ours: 9-AS [28] and MITC9i [43]. Summarizing the performed tests, because of the CSF, the midside nodes can be shifted along straight element sides without rendering errors while for perpendicular shifts of these nodes errors are smaller and negative values of the Jacobian determinant are often avoided. Also the central node can be shifted in an arbitrary direction without causing errors. All of the tested 2D elements benefited from using the CSF, hence, in the current paper, we further develop this technique to make it applicable to shells.

Objectives and scope of the paper The objective of the current paper is to develop an improved 9-node MITC9i shell element with drilling rotations.

  1. 1.

    The original 9-node MITC9 element has good accuracy but does not pass the patch test. In [43], we have scrutinized its formulation to find the source of this problem. By an alternative but equivalent formalism, the formulation of the MITC9 element was seen from a different perspective, and the modified transformations were proposed. As a result of this change, the membrane MITC9i element passed the patch test for a regular mesh, i.e. with straight element sides and middle positions of the midside nodes and the central node.

    In the current paper this technique is extended to the bending and transverse shear strains of a shell element MITC9i, for which proper transformations between Cartesian and covariant components are devised. In particular, we verify whether this change suffices to pass the patch tests for middle positions of the midside nodes and the central node.

  2. 2.

    The problem of sensitivity to node shifts is particularly important for 9-node elements as it affects a parametrization of the element domain and element accuracy. In the current paper, we improve the shell element robustness to node shifts extending the corrected shape functions of [9]. In [30], we tested several membrane 9-node elements integrated by the \(3\times 3\) Gauss rule, and these functions have proven beneficial to all of them. In the current paper, we further develop this technique to make it applicable to shells. For a 9-node shell element located in 3D space, we have to extend the method of computing the node shift parameters due to a presence of the third coordinate. Additionally, a new criterion is needed to determine the shift parameters associated with the central node for non-flat elements. Next, we have to verify whether the shell element MITC9i using the corrected shape functions passes patch tests for the midside nodes shifted along straight element sides and for the central node in an arbitrary position. Additionally, we noticed that the original method to determinate the shift parameters of [9] yields a non-symmetric side curve when the midside node is shifted. Therefore, we propose an alternative method, which does not rely on the proportion of arc-lengths, but uses a parametric equation of a parabola to construct a symmetric curve also when the midside node is shifted. We describe this method and evaluate its accuracy for an example with curved and symmetric shell edges.

  3. 3.

    The drilling rotation is incorporated into the formulation of the 9-node shell element via the drilling Rotation Constraint (RC) and the penalty method. We implemented it consistently with the additive/multiplicative rotation update scheme for large rotations, which combines a 3-parameter canonical rotation vector and a quaternion. Regarding the drilling RC, we analyze its form for equal-order bi-quadratic interpolations of displacements and the drilling rotation to check whether it contains a faulty term, analogous to the \(\xi \eta \)-term in 4-node elements, see [48], and to evaluate how it affects the solution. Besides, we verify how the corrected shape functions change the sensitivity of a solution to the regularization parameter \( \gamma \) of the penalty method, in particular in the case of curved or distorted elements.

Finally, the 9-node MITC9i shell element with drilling rotations is tested on a range of linear and non-linear numerical examples, which are performed to check passing the patch tests, an absence of locking, accuracy, an insensitivity to node shifts, and correctness of implementation of the drilling rotation; a selection of these tests is presented in Sect. 6.

Performance of the MITC9i element is mostly compared to other 9-node elements, some of them with similar improvements implemented as in the tested element. Besides, reference results obtained by our 4-node shell elements are provided; the corresponding ones for triangular elements can be found e.g., in [10].

2 Shell element characteristic

Reissner–Mindlin shell kinematics The position vector of an arbitrary point of a shell in the initial configuration is expressed as

$$\begin{aligned} \mathbf{X}(\zeta ) = \mathbf{X}_0 + \zeta \, \mathbf{t}_3, \end{aligned}$$
(1)

where \( \mathbf{X}_0 \) is a position of the reference surface and \( \mathbf{t}_3 \) is the shell director, a unit vector normal to the reference surface. Besides, \( \zeta \in [-h/2, +h/2] \) is the coordinate in the direction normal to the reference surface, where h denotes the initial shell thickness.

In a deformed configuration, the position vector is expressed by the Reissner–Mindlin kinematical assumption,

$$\begin{aligned} \mathbf{x}(\zeta ) = \mathbf{x}_0 + \zeta \ \mathbf{Q}_0 \mathbf{t}_3, \end{aligned}$$
(2)

where \( \mathbf{x}_0 \) is a position of the reference surface and \( \mathbf{Q}_0 \in SO(3) \) is a rotation tensor.

Green strain for shell The deformation function \(\varvec{\chi }: \ \mathbf{x}= \varvec{\chi }(\mathbf{X}) \) maps the initial (non-deformed) configuration of a shell onto the current (deformed) one. Let us write the deformation gradient as follows:

$$\begin{aligned} \mathbf{F}\doteq \frac{\partial \mathbf{x}}{\partial \mathbf{X}} =\frac{\partial \mathbf{x}}{\partial \varvec{\xi }} \ \mathbf{J}^{-1}, \end{aligned}$$
(3)

where \( \varvec{\xi }\doteq \{\xi , \eta , \zeta \} \), \( \xi , \eta \in [-1,+1]\), and the Jacobian matrix \( \mathbf{J}\doteq {\partial \mathbf{X}}/{\partial \varvec{\xi }} \). The right Cauchy–Green deformation tensor is

$$\begin{aligned} \mathbf{C}\doteq \mathbf{F}^T \mathbf{F}= \mathbf{J}^{-T} \left( \frac{\partial \mathbf{x}}{\partial \varvec{\xi }}\right) ^T \frac{\partial \mathbf{x}}{\partial \varvec{\xi }} \ \mathbf{J}^{-1}, \end{aligned}$$
(4)

and the Green strain is

$$\begin{aligned} \mathbf{E}\doteq \frac{1}{2} \left( \mathbf{C}- \mathbf{C}_0 \right) , \end{aligned}$$
(5)

where \( \mathbf{C}_0 \doteq \left. \mathbf{C}\right| _\mathbf{x =\mathbf X } = \mathbf{I}\). The Green strain can be expressed as a series of the \(\zeta \) coordinate,

$$\begin{aligned} \mathbf{E}(\zeta ) \approx \mathbf{E}_0 + \zeta \mathbf{E}_1 + \cdots , \end{aligned}$$
(6)

where the higher order terms are neglected. The 0th order strain \( \mathbf{E}_0 \) includes the membrane components \( \varvec{\varepsilon }\) and the transverse shear components \( \varvec{\gamma }/2 \) while the 1st order strain \( \mathbf{E}_1 \) includes the bending/twisting components \( \varvec{\kappa }\). We assume that the transverse shear part of \( \mathbf{E}_1 \) is negligible, i.e. \( \kappa _{\alpha 3} \approx 0 \) (\(\alpha =1,2\)). Note that the normal strains \( \varepsilon _{33} \) and \( \kappa _{33} \) are equal to zero because of Eq. (2) and must be either recovered from an auxiliary condition, such as the plane stress condition or the incompressibility condition, or be introduced by the EAS method. In the current paper, we use the plane stress condition for this purpose.

Incremental form of rotation \(\mathbf{Q}_0\) To enable computation of large rotations of a shell, we use an incremental approach and an update scheme involving a rotation vector \( \Delta \varvec{\psi }\) and a quaternion \( \mathbf{q}^n \), where n is the increment (step) index. Consistently with this scheme, the rotation \( \mathbf{Q}_0 \in SO(3) \) of Eq. (2) is assumed in the following form

$$\begin{aligned} \mathbf{Q}_0 = \Delta \mathbf{Q}_0(\Delta \varvec{\psi }) \, \, \mathbf{Q}_0^n(\mathbf{q}^n), \end{aligned}$$
(7)

where

$$\begin{aligned} \Delta \mathbf{Q}_0(\Delta \varvec{\psi }) \doteq \mathbf{I}+ \frac{\sin \Vert \Delta \varvec{\psi }\Vert }{\Vert \Delta \varvec{\psi }\Vert } \widetilde{\Delta \varvec{\psi }} + \frac{1 - \cos \Vert \Delta \varvec{\psi }\Vert }{\Vert \Delta \varvec{\psi }\Vert ^2} \widetilde{\Delta \varvec{\psi }}{}^2, \end{aligned}$$
(8)

which is the Rodrigues’s formula for the canonical parametrization of a rotation tensor. Besides, \( \Vert \Delta \varvec{\psi }\Vert \doteq \sqrt{\Delta \varvec{\psi }\cdot \Delta \varvec{\psi }} \ge 0 \), \( \widetilde{\Delta \varvec{\psi }} \doteq \Delta \varvec{\psi }\times \mathbf{I}\) is the skew-symmetric tensor and \( \mathbf{I}\) is the second-rank identity tensor. Within an increment, we use the Newton method and additively update the rotation vector after each iteration, \( \Delta \varvec{\psi }^{i+1} = \Delta \varvec{\psi }^{i} + \delta \varvec{\psi }\), where \( \delta \varvec{\psi }\) is the rotation vector increment for an iteration and i is the index of iterations. When the Newton method have converged, \( \Delta \varvec{\psi }^{i+1} \) is converted to a quaternion for an increment \( \Delta \mathbf{q}\), and the total quaternion is multiplicatively updated \( \mathbf{q}^{n+1} = \Delta \mathbf{q}\, \circ \, \mathbf{q}^n \). This scheme works very well for statical computations in the range of large rotations.

Rotations in mechanics

In mechanics, the rotations can be treated in two ways: either as independent variables, e.g. in Cosserat continuum, or as dependent variables, e.g. in Cauchy continuum; the latter case is of interest in the current paper. In the Cosserat shells, see e.g. [12, 34] and [35], the drilling rotation is naturally present but the constitutive equations are complicated.

For Cauchy continuum and the known deformation gradient \( \mathbf{F}\), the rotations can be obtained by the polar decomposition \( \mathbf{F}=\mathbf{R}\mathbf{U}= \mathbf{V}\mathbf{R}\), where the rotation \( \mathbf{R}\in SO(3) \) and \( \mathbf{U}, \ \mathbf{V}\) is the right and left stretching tensor, respectively. But this is merely a post-processing which is not a subject of the current paper; our goal is to include the rotations into the formulation.

To include rotations as additional variables into 3D equations, first, we define the extended configuration space

$$\begin{aligned} \mathcal{C}_{\mathrm {ext}}\doteq \{ (\varvec{\chi }, \mathbf{Q}): \ B \rightarrow R^3 \times SO(3) \quad | \quad \varvec{\chi }\in \mathcal{C } \}, \end{aligned}$$
(9)

where \( \mathcal{C} \doteq \{ \varvec{\chi }\!: \ B \rightarrow R^3 \} \) is the classical configuration space, and, next, we impose the Rotation Constraint (RC)

$$\begin{aligned} {\mathrm{skew}}(\mathbf{Q}^T \mathbf{F}) = \mathbf 0, \end{aligned}$$
(10)

to obtain the Cauchy continuum, see [37]. Here \( \mathbf{Q}\in SO(3) \) is the rotation, which at a solution of the extended system of equations (equilibrium equations plus the RC) is equal to \( \mathbf{R}\) yielded by the polar decomposition of \( \mathbf{F}\); this issue is considered in detail in [44].

For shells, we can use an analogous approach to that for the 3D Cauchy continuum, but with the following alterations: (a) the rotation tensor is constant in \( \zeta \), i.e. \( \mathbf{Q}\approx \mathbf{Q}_0 \), where \( \mathbf{Q}_0\) is defined in Eq. (7), and (b) only the drilling component of \( \Delta \varvec{\psi }\) is considered because the tangent ones are introduced by the term \( \mathbf{Q}_0 \mathbf{t}_3 \) in Eq. (2).

Drilling rotation constraint The drilling rotation for an increment is defined as an elementary rotation about the forward-rotated director \( \mathbf{a}_3^n \), i.e. \( \Delta \omega \doteq \Delta \varvec{\psi }\cdot \mathbf{a}_3^n \), where \( \mathbf{a}_3^n = \mathbf{Q}_0^n \mathbf{t}_3 \), see Fig. 1. Note that \( \mathbf{Q}_0 \mathbf{t}_3 = \Delta \mathbf{Q}_0 \mathbf{a}_3^n \) in Eq. (2), so the tangent components of \( \Delta \varvec{\psi }\) in the \( \{ \mathbf{a}_k^n \} \) basis are present in shell equations while the normal one, i.e. the drilling rotation, must be included in a different way.

Fig. 1
figure 1

Drilling rotation for an increment: the axis of rotation is defined as the forward-rotated director

Let us define the drilling Rotation Constraint (drilling RC) as the (1,2) component of the RC of Eq. (10) in the local basis \( \{ \mathbf{t}_k\} \) \( (k=1,2,3) \),

$$\begin{aligned} c \doteq \mathbf{t}_1 \cdot \left[ {\mathrm{skew}}(\mathbf{Q}_0^T \mathbf{F}) \, \mathbf{t}_2 \right] =0. \end{aligned}$$
(11)

It can be written in the incremental form consistent with the form of \( \mathbf{Q}_0 \) of Eq. (7) and the multiplicative decompositions \( \mathbf{F}= \Delta \mathbf{F}\mathbf{F}^n \),

$$\begin{aligned} c \doteq \frac{1}{2} \left[ \mathbf{a}_1^n \cdot \left( \Delta \mathbf{A}\mathbf{t}_2^n \right) - \mathbf{t}_1^n \cdot \left( \Delta \mathbf{A}\!{}^T \mathbf{a}_2^n \right) \right] =0, \end{aligned}$$
(12)

where \(\Delta \mathbf{A}\doteq \Delta \mathbf{Q}_0^T \Delta \mathbf{F}\), the convected vectors are \( \mathbf{t}_{\alpha }^n \doteq \mathbf{F}^{n} \mathbf{t}_{\alpha } \) and the forward-rotated vectors are \( \mathbf{a}_{\alpha }^n \doteq \mathbf{Q}_0^{n} \mathbf{t}_{\alpha } \) (\(\alpha =1,2\)); a derivation of the above formula is given in Sect. 5. To obtain the shell equations with drilling rotations, we construct an extended potential energy functional including the above scalar equation.

Physical interpretation of drilling rotation For simplicity, consider the planar (2D) deformation, so only the drilling rotation \( \omega \) matters in the definition of \( \mathbf{Q}_0 \) while the tangent rotation components are equal to zero. To obtain an interpretation of \( \omega \), we consider a pair of orthogonal unit vectors \( \mathbf{t}_1 \) and \( \mathbf{t}_2 \), associated with the initial configuration, which are rotated and stretched by \( \mathbf{F}\), so we can write

$$\begin{aligned} \mathbf{F}\mathbf{t}_1 = \lambda _1 \, \mathbf{Q}(\beta _{1} ) \, \mathbf{t}_1 ,\qquad \mathbf{F}\mathbf{t}_2 = \lambda _2 \, \mathbf{Q}(\beta _{2} ) \, \mathbf{t}_2, \end{aligned}$$
(13)

where \( \lambda _1, \, \lambda _2 >0 \) are stretches and \( \beta _1, \, \beta _2 \) are rotation angles. Using these formulas in the drilling RC in the standard (non-incremental) form (see the derivation in Eq. (59)),

$$\begin{aligned} c \doteq \frac{1}{2} \left[ (\mathbf{F}\mathbf{t}_2) \cdot \mathbf{a}_1 - (\mathbf{F}\mathbf{t}_1) \cdot \mathbf{a}_2 \right] = 0, \end{aligned}$$
(14)

we obtain

$$\begin{aligned} \omega \approx \frac{1}{2}(\beta _1 + \beta _2) + k \pi , \qquad k=0, \ldots , K, \end{aligned}$$
(15)

for \( \cos \omega \ne 0 \), \( \lambda _1 c_1 + \lambda _2 c_2 \ne 0 \) and \( \lambda _{\alpha } \approx 1 \), where \( c_{1} \doteq \cos \beta _{1} \) and \( c_{2} \doteq \cos \beta _{2} \). Hence, the drilling angle \( \omega \) is an average of rotations of vectors \( \mathbf{t}_1 \) and \( \mathbf{t}_2 \); for details see [46] “Appendix”.

Extended potential energy functional for shells with drilling rotation To obtain the shell equations with drilling rotations, we define the extended shell potential energy,

$$\begin{aligned} F_{PE}^\mathrm{sh} \doteq \mathcal {W}^\mathrm{sh}(\mathbf{E}) - F_{ext}^\mathrm{sh} + F^\mathrm{sh}_{drill}. \end{aligned}$$
(16)

This functional includes the shell strain energy,

$$\begin{aligned} \mathcal {W}^\mathrm{sh}(\mathbf{E}) \doteq \int _A \int ^{+\frac{h}{2}}_{-\frac{h}{2}}\mathcal {W}(\mathbf{E}) \ \mu \, \mathrm {d}\zeta \, dA, \end{aligned}$$
(17)

the work of external forces \( F_{ext}^\mathrm{sh} \), and an additional term for the drilling RC, \( F^\mathrm{sh}_{drill} \). Besides \( \mu \doteq \det \mathbf{Z}\), where \( \mathbf{Z}\) is the shifter tensor, and A is the shell reference surface. We discuss below the first and third term.

(A) The strain energy \( \mathcal {W}^\mathrm{sh}(\mathbf{E}) = \mathcal {W}^\mathrm{sh}(\mathbf{E}_0,\mathbf{E}_1) \) by using the shell form of Green strain \( \mathbf{E}(\zeta ) \approx \mathbf{E}_0 + \zeta \mathbf{E}_1 \), see Eq. (6). For instance, for a linear material and symmetry of its properties w.r.t. the reference surface, upon integration over thickness, we obtain the well-known: \( \mathcal {W}^\mathrm{sh}(\mathbf{E}_0,\mathbf{E}_1) = h \ \mathcal {W}(\mathbf{E}_0) \ + \ ({h^3}/{12}) \ \mathcal {W}(\mathbf{E}_1) \).

(B) The drilling rotation term \( F^\mathrm{sh}_{drill} \) is assumed in the penalty form,

$$\begin{aligned} F^\mathrm{sh}_{drill} \doteq {\frac{\gamma h}{2} \int _A c^2} \ dA, \end{aligned}$$
(18)

where c is defined by Eq. (11) and \( \gamma \in (0, \infty ) \) is the regularization parameter. The upper bound on \( \gamma \) equal to the shear modulus G was found for an isotropic elastic material in [20], but a reduced value can be beneficial for non-planar shell elements; in the current paper we test also \( \gamma = G/1000 \). Note the thickness h in this formula.

Another question is how to select \( \gamma \) for non-isotropic and/or inelastic materials for which theoretical results are not available. For an orthotropic elastic material the shear modulus for the in-plane shear \( G_{12} \) should be used instead of G. For multilayer shells composed of orthotropic elastic layers of different orientation, the effective material is anisotropic. We treat this problem approximately, expressing \( G_{12} \) of a substitute orthotropic material in terms of the effective in-plane stiffness matrix \( \mathbf{D}_0 \). The elasto-plastic tangent matrix \( \mathbf{C}^\mathrm{ep} \) can be used similarly.

Remark on PL method We have also tested the Perturbed Lagrange (PL) form of the drilling rotation term,

$$\begin{aligned} F^\mathrm{sh}_{drill} \doteq h \int _A \left[ T^* c - {{\frac{1}{2\gamma } (T^*)^2}} \right] \ dA, \end{aligned}$$
(19)

where \( T^* \) is the Lagrange multiplier. The second term under the integral provides a regularization in \( T^* \), and a small perturbation of the tangent matrix which is needed when it is singular, i.e. for the drilling rotation \( \omega =0 \). Note that for 9-node elements, we have to use 9 parameters for \( T^* \) to avoid singularity of the tangent matrix. They can be either values at nodes or coefficients of interpolation functions, and can be eliminated (condensed out) on the element level. For 4-node mixed/enhanced shell elements, the PL form implies a reduced sensitivity to distortions and a larger radius of convergence in non-linear problems, see [48, 49]. For 9-node elements, the PL form also works well but is slightly less beneficial, hence the penalty form of Eq. (18), for which the element is faster, is tested in Sect. 6.

Taking a variation of the governing functional of Eq. (16) and performing a consistent linearization of it, we obtain the tangent stiffness matrix \( \mathbf{K}\) for the Newton method; this procedure is standard and, therefore, not described here. The standard procedure is also used to compute the stress and couple resultants.

Basic definitions for 9-node shell element We consider a 9-node isoparametric element with the nodes numbered and named as in Fig. 2, where 1, 2, 3, 4 are the corner nodes, 5, 6, 7, 8 are the midside nodes, and 9 is the central node. For a shell element, we use a Cartesian basis associated with it as a reference basis.

Fig. 2
figure 2

Numbering and naming of nodes of 9-node element

Consider the following vectors associated with the reference surface of a shell: the initial position \( \mathbf{X}\), the current position \( \mathbf{x}\), the displacement \( \mathbf{u}\) and the rotation vector \( \Delta \varvec{\psi }\). The above vectors are interpolated as follows:

$$\begin{aligned} \begin{aligned} \mathbf{X}(\xi ,\eta ) = \sum _{I=1}^{9} N_I(\xi ,\eta ) \ \mathbf{X}_I,&\quad \mathbf{x}(\xi ,\eta ) = \sum _{I=1}^{9} N_I(\xi ,\eta ) \ \mathbf{x}_I, \\ \mathbf{u}(\xi ,\eta ) = \sum _{I=1}^{9} N_I(\xi ,\eta ) \ \mathbf{u}_I,&\quad \Delta \varvec{\psi }(\xi ,\eta ) = \sum _{I=1}^{9} N_I(\xi ,\eta ) \ \Delta \varvec{\psi }_I, \end{aligned} \end{aligned}$$
(20)

where the natural coordinates \( \xi , \eta \in [-1,+1]\) and I is the node number. Note that the rotation vectors \( \Delta \varvec{\psi }_I \) are used in a step, and converted to quaternions at the end of the step. The shape functions \( N_I(\xi ,\eta ) \) are presented in Sect. 4.

The tangent vectors of the natural basis on the reference surface are defined as

$$\begin{aligned} \mathbf{g}_{1}(\xi , \eta ) \doteq \frac{\partial \mathbf{X}(\xi , \eta )}{\partial \xi } ,\qquad \mathbf{g}_{2}(\xi , \eta ) \doteq \frac{\partial \mathbf{X}(\xi , \eta )}{\partial \eta }. \end{aligned}$$
(21)

The vectors \( \mathbf{g}^{k} \) of the co-basis \( \{ \mathbf{g}^1, \mathbf{g}^2 \} \) are defined in the standard way by \( \mathbf{g}^{\alpha } \cdot \mathbf{g}_{\beta } = \delta ^{\alpha }_{\beta } \), \( \alpha ,\beta =1,2 \). In general, \( \mathbf{g}_{1} \) and \( \mathbf{g}_{2} \) as well as \( \mathbf{g}^{1} \) and \( \mathbf{g}^{2} \) are neither unit nor mutually orthogonal. The director \( \mathbf{t}_3 \) is defined as a unit vector perpendicular to vectors \( \mathbf{g}_1 \) and \( \mathbf{g}_2 \),

$$\begin{aligned} \mathbf{t}_3 \doteq \frac{\mathbf{g}_1 \times \mathbf{g}_2}{\Vert \mathbf{g}_1 \times \mathbf{g}_2 \Vert }. \end{aligned}$$
(22)

Tangent vectors of the Cartesian basis \(\{\mathbf{i}_k\}\) can be defined as

$$\begin{aligned} \mathbf{i}_1 = \frac{1}{\sqrt{2}} (\tilde{\mathbf{i}}_1 - \tilde{\mathbf{i}}_2), \qquad \mathbf{i}_2 = \frac{1}{\sqrt{2}} (\tilde{\mathbf{i}}_1 + \tilde{\mathbf{i}}_2), \end{aligned}$$
(23)

where the auxiliary vectors are

$$\begin{aligned} \tilde{\mathbf{i}}_1 = \frac{\tilde{\mathbf{g}}_1 + \tilde{\mathbf{g}}_2}{\Vert \tilde{\mathbf{g}}_1 + \tilde{\mathbf{g}}_2 \Vert } ,\qquad \tilde{\mathbf{i}}_2 = \mathbf{t}_3 \times \tilde{\mathbf{i}}_1. \end{aligned}$$
(24)

The normalized natural vectors are denoted by a tilde, i.e. \( \tilde{\mathbf{g}}_k = {\mathbf{g}_k}/{\Vert \mathbf{g}_k \Vert } \). Note that \( \mathbf{i}_1 \) and \( \mathbf{i}_2 \) are equally distant from \( \mathbf{g}_1 \) and \( \mathbf{g}_2 \), see Fig. 2 in [48]. The above vectors for the element center are designated by the letter “c”.

3 MITCi method for bending/twisting and transverse shear strains

Standard and improved 2D MITC9 element A lot of research has been devoted to various aspects of the Mixed Interpolation of Tensorial Components (MITC) method; for a comprehensive review see [11, 8]. Here we focus on the transformations used in this method.

The MITC9 is a 9-node element formulated using the MITC method and fully integrated (\(3 \times 3\) Gauss rule). This element uses the covariant components of the Green strain, which e.g. for 2D are as follows

$$\begin{aligned} 2 \varepsilon _{\xi \xi } \doteq \mathbf{x}_{,\xi } \cdot \mathbf{x}_{,\xi } - \mathbf{g}_1 \cdot \mathbf{g}_1,&\quad 2 \varepsilon _{\eta \eta } \doteq \mathbf{x}_{,\eta } \cdot \mathbf{x}_{,\eta } - \mathbf{g}_2 \cdot \mathbf{g}_2, \nonumber \\& 2 \varepsilon _{\xi \eta } \doteq \mathbf{x}_{,\xi } \cdot \mathbf{x}_{,\eta } - \mathbf{g}_1 \cdot \mathbf{g}_2. \end{aligned}$$
(25)

For \( \mathbf{X}\) and \( \mathbf{x}\) interpolated as in Eq. (20) and \( \mathbf{g}_{\alpha } \) of Eq. (21), the above components can be directly computed. Then, in the MITC method, these strains are sampled at selected points, interpolated, and transformed to the local Cartesian basis at each Gauss point.

Generally, the MITC9 element performs quite well but it does not pass the patch test even for a regular mesh shown in Fig. 7, i.e. with straight elements’ sides and middle positions of the midside nodes and the central node. This motivated our work on the formulation of this element in [43] and [30], and below we shortly describe the improvement which we proposed.

First, we note that the matrix \( \varvec{\varepsilon }_\xi \) of covariant components of Eq. (25) can be obtained from the Cartesian components \( \varvec{\varepsilon }^{ref} \) by the transformation

$$\begin{aligned} \varvec{\varepsilon }_\xi = \mathbf{j}^{T} \, \varvec{\varepsilon }^{ref} \mathbf{j}, \end{aligned}$$
(26)

where \( \mathbf{j}\doteq [ J_{\alpha \beta } ] \) (\(\alpha ,\beta =1,2\)) is a \(2 \times 2 \) sub-matrix of \( \mathbf{J}\) defined below Eq. (3). We noticed that \( \mathbf{j}\) varies over the element, and, in consequence, the covariant \( \varvec{\varepsilon }_\xi \) is associated with a different co-basis at each sampling point. We put forward the hypothesis that this was the cause of failing the patch test by the classical MITC9 element, and proposed an improvement described below.

Because the Jacobian \( \mathbf{j}\) varies over the element, it can be decomposed \( \mathbf{j}\doteq \mathbf{j}_c \Delta \mathbf{j}\), where \( \Delta \mathbf{j}\) designates the relative Jacobian between the element center and a Gauss point. Then,

$$\begin{aligned} \varvec{\varepsilon }_\xi \ = \ \mathbf{j}^{T} \, \varvec{\varepsilon }^{ref} \ \mathbf{j}\ = \ \Delta \mathbf{j}^T \underbrace{( \mathbf{j}_c^{T} \, \varvec{\varepsilon }^{ref} \ \mathbf{j}_c)}_{\doteq \ \varvec{\varepsilon }_\xi ^c} \ \Delta \mathbf{j}. \end{aligned}$$
(27)

Hence, we proposed to neglect \( \Delta \mathbf{j}\) and use the Jacobian at the element center \( \mathbf{j}_c \) instead of \( \mathbf{j}\). Note that the components \( \varvec{\varepsilon }_\xi ^c \) yielded by such a transformation are not exactly the covariant components of Eq. (25); for clarity, we designate them by “COVc”.

Fig. 3
figure 3

Sampling points: a for \( \varepsilon _{11}, \kappa _{11}, \gamma _{31} \), b for \( \varepsilon _{22}, \kappa _{22}, \gamma _{32} \), c for \( \varepsilon _{12}, \kappa _{12} \)

Remark

The Jacobian at center was used in [40] to improve the method of incompatible modes for a 4-node element. However, no such an improvement was proposed for the MITC method until our paper [43], where the MITC9i element was developed. The main difficulty was to notice that the covariant components of Eq. (25) can be obtained from the Cartesian ones by Eq. (26), and apply this formula in the context of sampling/interpolation.

MITCi method for bending/twisting and transverse shear strains For the membrane strains \( \varvec{\varepsilon }\) of the shell element MITC9i, we apply the transformations which we developed in [43]. In the present paper, we propose and test analogous transformations for the bending/twisting strains \( \varvec{\kappa }\) and the transverse shear strains \( \varvec{\gamma }\). Note that the transformation formulas between Cartesian and covariant components are different for the in-plane strains, i.e. \( \varvec{\varepsilon }\) and \( \varvec{\kappa }\), and for the transverse shear strain \( \varvec{\gamma }\), see “Appendix”.

Steps defining the improved shell element MITC9i are as follows:

  1. 1.

    The representations in the reference Cartesian basis are transformed to the co-basis at the element center, to obtain the COVc components,

    $$\begin{aligned} \varvec{\kappa }_\xi = \mathbf{j}_c^{T} \, \varvec{\kappa }^{ref} \ \mathbf{j}_c,\qquad \varvec{\gamma }_\xi = \mathbf{j}_c^{T} \, \varvec{\gamma }^{ref}, \end{aligned}$$
    (28)
  2. 2.

    The two-level approximations of the COVc components are performed,

    $$\begin{aligned} \varvec{\kappa }_\xi \ {\mathop {\longrightarrow }\limits ^{\mathrm{MITC}}}\ \widetilde{\varvec{\kappa }}{}_{\xi },\qquad \varvec{\gamma }_\xi \ {\mathop {\longrightarrow }\limits ^{\mathrm{MITC}}}\ \widetilde{\varvec{\gamma }}{}_{\xi }. \end{aligned}$$
    (29)

    This involves sampling and interpolation, which are described in detail in the next paragraph. Results are designated by the tilde \( ``\widetilde{~~}'' \).

  3. 3.

    The approximated COVc components in the co-basis at the element center are transformed back from the co-basis at the element center to the reference Cartesian basis,

    $$\begin{aligned} \widetilde{\varvec{\kappa }}{}^{ref} = \mathbf{j}_c^{-T} \, \widetilde{\varvec{\kappa }}{}_{\xi } \ \mathbf{j}_c^{-1},\qquad \widetilde{\varvec{\gamma }}{}^{ref} = \mathbf{j}_c^{-T} \, \widetilde{\varvec{\gamma }}{}_{\xi }. \end{aligned}$$
    (30)

The transformations of the first and third steps are reciprocal and without the second step we would simply obtain \( \widetilde{\varvec{\kappa }}^{ref} = {\varvec{\kappa }}^{ref} \) and \( \widetilde{\varvec{\gamma }}^{ref} = {\varvec{\gamma }}^{ref} \).

Sampling points and interpolation functions The two-level approximations are applied to the COVc components of shell strains, as symbolically given by Eq. (29). The COVc strain components are sampled at points shown in Fig. 3, where \(a=\sqrt{1/3}\) and \( b=\sqrt{3/5} \). Let us group the sampled shell strain components,

$$\begin{aligned}&E_{\xi \xi } \in \{ \varepsilon _{11}, \kappa _{11}, \gamma _{31} \}, \quad E_{\eta \eta } \in \{ \varepsilon _{22}, \kappa _{22}, \gamma _{32} \},\nonumber \\&\quad E_{\xi \eta } \in \{ \varepsilon _{12}, \kappa _{12} \}. \end{aligned}$$
(31)

Then the particular strain groups are interpolated, using the sampled values, as follows:

$$\begin{aligned}&\widetilde{E}_{\xi \xi }(\xi ,\eta ) = \sum _{l} R_{l}(\xi ,\eta ) \ (E_{\xi \xi })_l, \nonumber \\&\widetilde{E}_{\eta \eta }(\xi ,\eta ) = \sum _{l} R_{l}(\xi ,\eta ) \ (E_{\eta \eta })_l, \nonumber \\&\widetilde{E}_{\xi \eta }(\xi ,\eta ) = \sum _{l} R_{l}(\xi ,\eta ) \ (E_{\xi \eta })_l, \end{aligned}$$
(32)
Fig. 4
figure 4

Sampling points and lines for \( E_{\xi \xi } \). a \(2 \times 3\) points, b 2 sampling lines

where \( R_l \) are the interpolation functions defined below, and l is the index of sampling points: \( l=A,B,C,D,E,F \) for the 6-point schemes and \( l=A,B,C,D \) for the 4-point scheme. The sets of interpolation functions are defined as follows:

  1. 1.

    for \( \varepsilon _{11}, \kappa _{11}, \gamma _{31} \), the points of Fig. 3a are used (2 points in the \(\xi \) direction),

    (33)
  2. 2.

    for \( \varepsilon _{22}, \kappa _{22}, \gamma _{32} \), the points of Fig. 3b are used (2 points in the \(\eta \) direction),

    (34)
  3. 3.

    For \( \varepsilon _{12}, \kappa _{12} \), the points of Fig. 3c are used (2 points in \( \xi \) and \( \eta \) directions),

    (35)

Remark

The sampling points of Fig. 3 correspond to the integration points proposed for the Selective Reduced Integration (SRI) of strain energy terms in [32]. Several attempts were made to apply the 6-point schemes of Fig. 3a and b to \( \varepsilon _{12} \) and \( \kappa _{12} \) but without a significant improvement, see [19, 21, 31].

Improved sampling strategy Note that the schemes of Fig. 3a and b involve 6 sampling points each, which implies a considerable number of evaluations. To reduce it, we use the so-called sampling lines instead of points, which yields a more efficient implementation. This method is not fully equivalent to the 6-point scheme due to the transformations of Eqs. (28) and (30) but works very well.

To explain the method, we consider only one strain component \( E^c_{\xi \xi } \), for which sampling points and integration points are shown in Fig. 4a. Let us, for a moment, neglect the effect of transformations of Eqs. (28) and (30). Then we see that both these types of points are located at the same \( \eta \in \{-b, 0, +b \} \), where \( b =\sqrt{{3}/{5}} \). Hence, the \(3 \times 3\) integration does evaluate \( E^c_{\xi \xi } \) at correct \( \eta \)-coordinates, and, therefore, no separate sampling and interpolation in the \( \eta \)-direction is needed. In consequence, we sample and interpolate \( E^c_{\xi \xi } \) only in the \(\xi \)-direction,

$$\begin{aligned} \widetilde{E}_{\xi \xi }(\xi ,\eta ) = R_{L1}(\xi ) \, E^c_{\xi \xi }(-a,\eta ) \ + \ R_{L2}(\xi ) \, E^c_{\xi \xi }(+a,\eta ), \nonumber \\ \end{aligned}$$
(36)

where

$$\begin{aligned} R_{L1}(\xi )= & {} \frac{1}{2}\left( 1-\frac{\xi }{a}\right) , \qquad R_{L2}(\xi )=\frac{1}{2}\left( 1+\frac{\xi }{a}\right) ,\nonumber \\&a=\sqrt{{1}/{3}}. \end{aligned}$$
(37)

This formula involves two sampling lines shown in Fig. 4b, where L1 is located at \( \xi =-a \) and L2 at \( \xi =a \). Besides, note that the interpolation functions \( R_{L1} \) and \( R_{L2} \) of Eq. (37) replace six much more complicated functions \( R_l \) of Eq. (33). The sampling lines are transformed back by Eq. (30).

4 Corrected shape functions for shell element

In this section, we present several modifications to the method of calculation the shift parameters for the corrected shape functions, which: (a) are necessary for 9-node shell elements located in 3D space, and (b) improve accuracy of a solution for non-flat shell elements and (c) enable to construct a symmetric side curve for a shifted midside node. The last modification is also applicable to 2D problems.

The standard isoparametric shape functions are obtained by the assumption that the midside nodes (5,6,7,8) are located at the middle positions between the respective corner nodes and the central node 9 is located at the element center. When these nodes are shifted from the middle positions then the physical space parameterized by the standard shape functions is distorted, see e.g. Figs. 13a and 20 in [30].

To alleviate this problem, the corrected shape functions (CSF) were proposed in [9], with six additional parameters introduced in the local coordinates space, \( \alpha , \beta , \gamma , \epsilon , \theta , \kappa \in [-1,+1] \), see Fig. 5. The distance of these nodes from the middle positions in the local coordinates space is computed as proportional to their distance in the physical space. To determine these 6 parameters, nonlinear equations must be solved: 4 equations with 1 unknown each and 2 equations with 2 unknowns. This is done only once, so the time overhead is insignificant.

The corrected shape functions for the 9-node element are defined in two steps. First, the shape functions of the 8-node (serendipity) element are defined,

(38)

and they account for shifts of the midside nodes from the middle positions. Next, the basis function for the central node 9 is added hierarchically to the shape functions for the 8-node element. The obtained shape functions for the 9-node element are

(39)

where \( \bar{N}_i (\theta ,\kappa ) \doteq \bar{N}_i (\xi =\theta ,\eta =\kappa ) \), see [9], Eq. (20). These functions account for shifts of the midside nodes from the middle positions and the central node from the central position. When the shift parameters are equal to zero, then the CSF of Eq. (39) are reduced to the standard shape functions.

Fig. 5
figure 5

Shift parameters of 9-node element

4.1 Computation of shift parameters in 3D for midside nodes

For the midside nodes (5,6,7,8), the procedure to determine the shift parameters \(\alpha , \beta , \gamma , \epsilon \) can be extended from 2D to 3D space as follows. For instance, let us determine the shift parameter \(\alpha \) of node 5 in local coordinates. Consider the parametric form of the side 1-5-2, which, in general, can be curved. For 2D problems, it is

$$\begin{aligned} X(\xi )= & {} \mathbf{N}_{3n}(\xi ) \cdot [X_1,X_5,X_2] \quad \text{ and } \quad \nonumber \\ Y(\xi )= & {} \mathbf{N}_{3n}(\xi ) \cdot [Y_1,Y_5,Y_2], \end{aligned}$$
(40)

where the vector of corrected shape functions for a 3-node element is

$$\begin{aligned} \mathbf{N}_{3n}(\xi ) \doteq \left[ \frac{1}{2}\frac{(\xi -1)(\xi -\alpha )}{1+\alpha }, \ \frac{1-\xi ^2}{1-\alpha ^2}, \ \frac{1}{2}\frac{(\xi +1)(\xi -\alpha )}{1-\alpha } \right] .\nonumber \\ \end{aligned}$$
(41)

For shells in 3D space, we have to write additionally a similar expression for the third coordinate,

$$\begin{aligned} Z(\xi ) =\mathbf{N}_{3n}(\xi ) \cdot [Z_1,Z_5,Z_2]. \end{aligned}$$
(42)

In the method proposed in [9], the shift parameter \( \alpha \) is obtained from the proportion of arc-lengths, i.e. the fractional distance of node 5 along the curved side relative to nodes 1 and 2 is required to be identical in a physical space and in a local space,

$$\begin{aligned} \frac{L_{-1}^{\alpha }}{L_{-1}^{+1}}=\frac{\int _{-1}^{\alpha }d\xi }{\int _{-1}^{1} d\xi }, \end{aligned}$$
(43)

where the arc-length of the side in a physical space from \( \xi = -1 \) to \( \xi =\alpha \) is

$$\begin{aligned} L_{-1}^{\alpha } \doteq \int _{-1}^{\alpha } \sqrt{\left( {dX}/{d\xi }\right) ^2+\left( {dY}/{d\xi }\right) ^2 +\left( {dZ}/{d\xi }\right) ^2} \ d\xi . \end{aligned}$$
(44)

In the above form, we included the term \( \left( {dZ}/{d\xi }\right) ^2 \), i.e. the contribution of the third coordinate, which is needed for shells. The definition of \( L_{-1}^{+1} \) is analogous; we have to replace \( \alpha \) by \( +1\). Besides, for the right-hand-side, we obtain \( \int _{-1}^{\alpha }d\xi = 1+\alpha \), and \( \int _{-1}^{1}d\xi =2 \), and Eq. (43) can be transformed to a single non-linear equation in \( \alpha \),

$$\begin{aligned} F(\alpha ) \doteq \frac{\int _{-1}^{\alpha } \sqrt{a \xi ^2 + b \xi + c} \ d \xi }{\int _{-1}^{1} \sqrt{a \xi ^2 + b \xi + c} \ d \xi } - \frac{\alpha +1}{2} =0, \end{aligned}$$
(45)

where abc depend on differences in node positions and on \( \alpha \). We solve this equation using the Newton method, and the term added for shells, \( \left( {dZ}/{d\xi }\right) ^2 \), contributes to the tangent matrix and the residual vector.

An initial value of \( \alpha \), denoted as \( \alpha _0 \), is obtained by a proportion and a change of variables as follows:

$$\begin{aligned} a \doteq \frac{L_{15}}{L_{15}+L_{52}} \in [0,1], \, \alpha _0 \doteq 2 a -1 \in [-1,+1], \end{aligned}$$
(46)

where \( L_{ij} \) is the distance between nodes i and j in 3D space, computed as a length of a vector connecting these points. When the side 1-5-2 is straight then, \( L_{15}+L_{52} = L_{12}\) and the so-defined \( \alpha _0 \) is a solution of the nonlinear Eq. (43). The parameters for the other midside nodes, i.e. \(\beta , \gamma \) and \( \epsilon \), are obtained in an analogous way.

4.2 Computation of shift parameters in 3D for central node

For the central node 9 and the \((\theta , \kappa )\) parameters, the generalization to 3D space is more complicated. For 2D space, we use an assumption that the Jacobian of transformation from physical to local coordinates should not be affected by the central node 9. For shells, we have additionally the third coordinate Z, and we can consider two methods of treating it:

M1.:

Neglect a contribution of the Z-coordinate, and solve a system of 2 equations identical to that used for 2D space,

$$\begin{aligned} \left[ \begin{array}{c} X_9 - \sum _{i=1}^8 \bar{N}_i(\theta ,\kappa ) \ X_i =0 \\ Y_9 - \sum _{i=1}^8 \bar{N}_i(\theta ,\kappa ) \ Y_i =0 \end{array}\right] . \end{aligned}$$
(47)

This method is an option when the elemental reference basis is used, e.g. the tangent basis attached at node 9, as then Z describes elevation or warping of an element.

M2.:

Account for a contribution of the Z-coordinate. We propose to incorporate it using a definition of the square error

$$\begin{aligned} e \doteq {\mathbf{r}^T \mathbf{r}}, \end{aligned}$$
(48)

where

$$\begin{aligned} \mathbf{r}(\theta ,\kappa ) \doteq \left[ \begin{array}{c} X_9 - \sum _{i=1}^8 \bar{N}_i(\theta ,\kappa ) \ X_i \\ Y_9 - \sum _{i=1}^8 \bar{N}_i(\theta ,\kappa ) \ Y_i \\ Z_9 - \sum _{i=1}^8 \bar{N}_i(\theta ,\kappa ) \ Z_i \end{array}\right] . \end{aligned}$$
(49)

The error e is a scalar, and minimization of it w.r.t. \( \theta \) and \( \kappa \) yields 2 equations

$$\begin{aligned} \left[ \begin{array}{c} 2 \mathbf{r}^T (d \mathbf{r}/ d \theta ) =0 \\ 2 \mathbf{r}^T (d \mathbf{r}/ d \kappa ) =0 \end{array}\right] . \end{aligned}$$
(50)

This method can be applied when either the elemental or global reference basis is used for an element. For a flat shell element, M2 yields exactly the same results as M1, so the proposed generalization is correct indeed.

In both methods, the set of nonlinear equations is solved for \(\theta \) and \( \kappa \) using the Newton method. Initial values can be calculated, e.g., as follows:

$$\begin{aligned} \theta _0 \doteq \frac{2 L_{89}}{L_{89}+L_{96}}-1,\qquad \kappa _0 \doteq \frac{2 L_{79}}{L_{79}+L_{95}}-1, \end{aligned}$$
(51)

where \( L_{ij} \) is the distance between nodes i and j in 3D space. When nodes 8, 9 and 6 lie on one straight line then \( \theta =\theta _0 \). Similarly, when nodes 5, 9 and 7 lie on one straight line then \( \kappa =\kappa _0 \). The proposed method M2 is tested in Sect. 6.4.

4.3 Alternative computation of shift parameters for curved sides

When the element side is straight, then the shift \(\alpha = \alpha _0 \), where \( \alpha _0 \) is given by Eq. (46). Computations are more complicated when the side is curved; e.g. in the method of [9], the proportion of arc-lengths yields a nonlinear Eq. (45) from which \( \alpha \) is calculated. We have noticed two features of that procedure:

  1. 1.

    when the midside node is shifted from the middle position then the so-computed \( \alpha \) yields a non-symmetrical side curve,

  2. 2.

    any particular shape of the side curve is not assumed in this method so we cannot control it. It is a drawback, e.g., for domain boundaries, the shape of which we try to represent as exactly as possible.

We propose an alternative method by which a parabola is constructed in such a way that a symmetric shape of the side is obtained even for a shifted midside node. The steps of the proposed method for the given nodes \(P_1, \, P_2\) and \(P_5\) are as follows:

  1. 1.

    Check the position of \(P_5\) relative to \(P_1\) and \(P_2\)

    $$\begin{aligned} d \doteq \Vert \mathbf{p}_5 - \mathbf{p}_1 \Vert - \Vert \mathbf{p}_5 - \mathbf{p}_2 \Vert < tol, \end{aligned}$$
    (52)

    where \( \mathbf{p}_1, \ \mathbf{p}_2 \) and \( \mathbf{p}_5 \) are position vectors of \(P_1\), \(P_2\) and \(P_5\), respectively, and tol is a prescribed tolerance. If \( d < tol \) then \(P_5\) is on the axis of symmetry so \( \alpha = 0 \) and this ends the calculations; otherwise we proceed further.

  2. 2.

    Construct vectors of a local Cartesian basis in 3D using \(P_1, \, P_2\) and \(P_5\)

    $$\begin{aligned} \mathbf{s}_t = (\mathbf{p}_2- \mathbf{p}_1)/\Vert (\mathbf{p}_2- \mathbf{p}_1) \Vert , \end{aligned}$$
    $$\begin{aligned} \mathbf{v}= (\mathbf{p}_1 - \mathbf{p}_5) \times (\mathbf{p}_2 - \mathbf{p}_5),\qquad \mathbf{s}_r =\mathbf{v}/\Vert \mathbf{v}\Vert , \end{aligned}$$
    (53)
    $$\begin{aligned} \mathbf{s}_n = \mathbf{s}_r \times \mathbf{s}_t, \end{aligned}$$

    Note that \( \mathbf{s}_t \) and \( \mathbf{s}_n \) belong to the plane defined by \(P_1\), \(P_2\) and \(P_5\).

  3. 3.

    Calculate coordinates of \(P_1\), \(P_2\) and \(P_5\) in the local basis \( \{ \mathbf{s}_t, \, \mathbf{s}_n, \, \mathbf{s}_r \} \),

    $$\begin{aligned} \mathbf{r}_1= & {} \mathbf{O}^T (\mathbf{p}_1 - \mathbf{p}_0),\qquad \mathbf{r}_2 = \mathbf{O}^T (\mathbf{p}_2 - \mathbf{p}_0),\nonumber \\&\mathbf{r}_5 = \mathbf{O}^T (\mathbf{p}_5 - \mathbf{p}_0), \end{aligned}$$
    (54)

    where \( \mathbf{p}_0 = (\mathbf{p}_1 + \mathbf{p}_2)/2 \) and \( \mathbf{O}\doteq [ \mathbf{s}_t \, | \, \mathbf{s}_n \, | \, \mathbf{s}_r ] \in SO(3) \). The applied transformation involves a shift by \( \mathbf{p}_0 \) and a rotation by \( \mathbf{O}\). Associate the local coordinates xy with the vectors \( \mathbf{s}_t \) and \( \mathbf{s}_n \), respectively, so let them have zero at \( \mathbf{p}_0 \). The local coordinates of nodes are designated: \( \mathbf{r}_1 = [x_1, y_1] \), \( \mathbf{r}_2 = [x_2,y_2] \) and \( \mathbf{r}_5 = [x_5,y_5 ] \), where \( y_1 = y_2 = 0 \).

  4. 4.

    Calculate coefficients of a parabola in the local basis, assuming that it passes through \(P_1\) and \(P_2\), and is symmetrical w.r.t. \( x =0 \). Writing \( y = a x^2 + c \) for \(P_1\) and \(P_5\), we obtain a system of two equations, from which we can calculate

    $$\begin{aligned} a = \frac{y_5-y_1}{x_5^2 - x_1^2}, \qquad c = y_5 - a x_5^2. \end{aligned}$$
    (55)
  5. 5.

    The parametric equation of parabola \( y = a x^2 + c \) is

    $$\begin{aligned} x = -\frac{2}{4 a} t,\qquad y = \frac{1}{4 a} t^2 + c, \end{aligned}$$
    (56)

    where t is a parameter. The value of t for \( P_1 \) can be obtained using the condition \( x=x_1 \), and the value of t for \( P_5 \) using the condition \( x=x_5 \),

    $$\begin{aligned} t_{P_1} = -\, 2a x_1,\qquad t_{P_5} = -\, 2a x_5. \end{aligned}$$
    (57)

    Then, the shift parameter \( \alpha \in [-1,1] \) can be defined as a ratio

    $$\begin{aligned} \alpha \doteq \frac{t_{P_5}}{| t_{P_1} | } = \frac{x_5}{ | x_1 | }. \end{aligned}$$
    (58)

The new method is simpler than that of [9] and its accuracy is better when the shell edge is curved and symmetric indeed, see Sect. 6.5. Note that the midside shift parameters, such as \( \alpha \), affect also the \((\theta , \kappa )\) parameters for the central node, see Eq. (50). Finally, we note that e.g. a semi-circle can be implemented in a similar manner, but a parabola is simpler.

Example

Consider three points \(P_1\)(0,0), \(P_2\)(4,0) and \(P_5\)(1,2) shown in Fig. 6, where the side curves are obtained for the standard shape functions (“standard”) and the corrected shape functions. For the latter, \( \alpha \) is obtained in two ways: the method of [9] yields \( \alpha =-\,0.264405 \) and the non-symmetric curve “CSF,CG”, while the proposed method yields \( \alpha =-\,0.5 \) and the symmetric curve “CSF,new”.

Fig. 6
figure 6

Shape of curved side for shifted node 5 obtained for the CSF with coefficients computed either as in [9] (“CSF,CG”) or by the proposed method (“CSF,new”)

5 Treatment of drilling RC

The purpose of using the drilling Rotation Constraint (drilling RC) is to provide an additional equation for the drilling rotation \( \Delta \omega \doteq \Delta \varvec{\psi }\cdot \mathbf{a}_3^n \), which is not present in the shell kinematical assumption (2) and in strains.

We define the drilling RC as the (1,2) component of the RC equation of Eq. (10), which is taken with \( \mathbf{Q}\approx \mathbf{Q}_0 \) in the local basis \( \{ \mathbf{t}_k\} \) \( (k=1,2,3) \). Applying the \( \mathbf{t}_1 \cdot \left[ (\,\cdot \,) \, \mathbf{t}_2 \right] \) operation to the l.h.s. of Eq. (10), we obtain the scalar

$$\begin{aligned} c\doteq & {} \mathbf{t}_1 \cdot \left[ {\mathrm{skew}}(\mathbf{Q}_0^T \mathbf{F}) \, \mathbf{t}_2 \right] = \frac{1}{2} \left[ \mathbf{t}_1 \cdot \left( \mathbf{Q}_0^T \mathbf{F}\mathbf{t}_2 \right) - \mathbf{t}_1 \cdot \left( \mathbf{F}^T \mathbf{Q}_0 \mathbf{t}_2 \right) \right] \nonumber \\= & {} \frac{1}{2} \left[ (\mathbf{Q}_0 \mathbf{t}_1) \cdot \left( \mathbf{F}\mathbf{t}_2 \right) - (\mathbf{F}\mathbf{t}_1) \cdot \left( \mathbf{Q}_0 \mathbf{t}_2 \right) \right] \nonumber \\= & {} \frac{1}{2} \left[ \mathbf{a}_1 \cdot ( \mathbf{F}\mathbf{t}_2 )- (\mathbf{F}\mathbf{t}_1) \cdot \mathbf{a}_2 \right] , \end{aligned}$$
(59)

where \( \mathbf{a}_1 \doteq \mathbf{Q}_0 \, \mathbf{t}_1 \) and \( \mathbf{a}_2 \doteq \mathbf{Q}_0 \, \mathbf{t}_2 \) are the forward-rotated tangent vectors \( \mathbf{t}_1 \) and \( \mathbf{t}_2 \).

The drilling RC can also be obtained in the forward-rotated basis \( \{ \mathbf{a}_k \} \), where \( \mathbf{a}_k \doteq \mathbf{Q}_0 \, \mathbf{t}_k \), which is associated with the current (deformed) configuration. Let us denote \( \mathbf{A}\doteq \mathbf{Q}_0^T \mathbf{F}\) and its forward-rotated form \( \mathbf{A}\!{}^* \doteq \mathbf{Q}_0 \mathbf{A}\mathbf{Q}_0^T =\mathbf{F}\mathbf{Q}_0^T \). We see that

$$\begin{aligned} \mathbf{t}_1 \cdot ({\mathrm{skew}}\mathbf{A}\, \mathbf{t}_2) = \mathbf{t}_1 \cdot (\mathbf{Q}_0^T {\mathrm{skew}}\mathbf{A}\!{}^* \mathbf{Q}_0 \mathbf{t}_2) =\mathbf{a}_1 \cdot ({\mathrm{skew}}\mathbf{A}\!{}^* \, \mathbf{a}_2), \end{aligned}$$
(60)

where the last form uses the forward-rotated basis vectors. When we approach the solution, i.e. \( \mathbf{Q}_0 \rightarrow \mathbf{R}\), then \( \mathbf{A}\doteq \mathbf{Q}_0^T \mathbf{F}\rightarrow \mathbf{R}^T \mathbf{F}= \mathbf{U}\) and \( \mathbf{A}\!{}^* \doteq \mathbf{F}\mathbf{Q}_0^T \rightarrow \mathbf{F}\mathbf{R}^T = \mathbf{V}\), where the rotation \( \mathbf{R}\in SO(3) \) and the right and left stretching tensors, \( \mathbf{U}\) and \( \mathbf{V}\), respectively, are obtained by the polar decomposition of \( \mathbf{F}\).

Incremental form of the drilling RC An incremental form of the drilling RC can be obtained from the last form of Eq. (59) using the multiplicative decompositions \( \mathbf{F}= \Delta \mathbf{F}\mathbf{F}^n \) and \(\mathbf{Q}_0 = \Delta \mathbf{Q}_0 \mathbf{Q}_0^n \), where the superscript “n” designates the last converged configuration. Introducing the convected vectors \( \mathbf{t}_{\alpha }^n \doteq \mathbf{F}^{n} \mathbf{t}_{\alpha } \) and the forward-rotated vectors \( \mathbf{a}_{\alpha }^n \doteq \mathbf{Q}_0^{n} \mathbf{t}_{\alpha } \) (\(\alpha =1,2\)), after straightforward transformations, we obtain

$$\begin{aligned} c = \frac{1}{2} \left[ \mathbf{a}_1^n \cdot \left( \Delta \mathbf{A}\mathbf{t}_2^n \right) - \mathbf{t}_1^n \cdot \left( \Delta \mathbf{A}\!{}^T \mathbf{a}_2^n \right) \right] , \end{aligned}$$
(61)

where \(\Delta \mathbf{A}\doteq \Delta \mathbf{Q}_0^T \Delta \mathbf{F}\). This form of c complies with the additive/multiplicative rotation update scheme, in which, we use \( \Delta \mathbf{Q}_0 \) parametrized by \( \Delta \varvec{\psi }\) for the increment, see Eq. (8). This scheme works correctly for \( | \Delta \omega | < \pi /2 \), and, when combined with a quaternion, allows for arbitrarily large drilling rotations. For the initial configuration, \( \mathbf{F}^{n} = \mathbf{I}\) and \( \mathbf{Q}_0^{n} = \mathbf{I}\), so we have \( \mathbf{t}_{\alpha }^n =\mathbf{t}_{\alpha } \), \( \mathbf{a}_{\alpha }^n = \mathbf{t}_{\alpha } \), and the above formula reduces to

$$\begin{aligned} c = \frac{1}{2} \left[ \Delta \mathbf{a}_1 \cdot \left( \Delta \mathbf{F}\mathbf{t}_2 \right) - \left( \Delta \mathbf{F}\mathbf{t}_1 \right) \cdot \Delta \mathbf{a}_2 \right] , \end{aligned}$$
(62)

where \( \Delta \mathbf{a}_{\alpha } \doteq \Delta \mathbf{Q}_0 \mathbf{t}_{\alpha } \), of an apparent similarity to the last form of Eq. (59).

Discussion of approximation of drilling RC Below we show that for the equal-order bi-quadratic interpolations of displacements and the drilling rotation, the drilling RC is incorrectly approximated.

For simplicity, consider a planar bi-unit square element with drilling rotations and a linearized form of the drilling RC: \( 2 c \doteq 2 \omega + (u_{,\eta }-v_{,\xi })= 0 \), where \( u_{,\eta } \doteq u_{1,2} \) and \( v_{,\xi } \doteq u_{2,1} \). Let us write the interpolation formulas as follows:

$$\begin{aligned} u = \sum _{i=1}^9 \phi _i \, U_i, \qquad v = \sum _{i=1}^9 \phi _i \, V_i, \qquad \omega = \sum _{i=1}^9 \phi _i \, \Omega _i, \end{aligned}$$
(63)

where \( [\phi _i ] \doteq \left[ \, 1, \, \xi , \, \eta , \, \xi \eta , \, \xi ^2, \, \eta ^2, \, \xi \eta ^2, \, \xi ^2 \eta , \, \xi ^2 \eta ^2 \, \right] \) and \(\xi ,\eta \in [-1,+1]\). Besides, \( U_i, \, V_i, \, \Omega _i \) are coefficients for displacement components and the drilling rotation depending on the nodal values \( u_k, \, v_k, \, \omega _k \)   \((k=1, \ldots , 9)\). For the above interpolations, the linearized drilling RC yields

$$\begin{aligned} 2 c\doteq & {} \left( 2 \Omega _1 + U_3-V_2 \right) \ + \ \left( 2 \Omega _2 + U_4 -2 V_5 \right) \xi \ \nonumber \\&+ \ \left( 2 \Omega _3 +2 U_6 - V_4 \right) \eta +\, \ 2 \left( \Omega _4 + U_8 - V_7 \right) \xi \eta \nonumber \\&+ \ \left( 2 \Omega _5 + U_7 \right) \xi ^2 \ + \ \left( 2 \Omega _6 - V_8 \right) \eta ^2 +\, \ 2 \left( \Omega _8 - V_9 \right) \nonumber \\&\quad \xi \eta ^2 \ + \ 2 \left( \Omega _7 - U_9 \right) \xi ^2 \eta \ + \ \underline{\underline{2 \Omega _9 \ \xi ^2 \eta ^2}}. \end{aligned}$$
(64)

Note that the last \(\xi ^2 \eta ^2\)-term contains only the rotational coefficient \( \Omega _9 \) but no displacement coefficients \( U_i, \, V_i \), which is incorrect, because both these types of coefficients should be linked in each term of the drilling RC. This problem is caused by equal-order approximations of displacements and the drilling rotation; a similar one appears for 4-node (bi-linear) elements, but then the \(\xi \eta \)-term is faulty, see [48].

Let us designate the faulty term as \( c_9 \doteq \Omega _9 \ \xi ^2 \eta ^2 \). For a bi-unit square element and the linearized drilling RC, we can express \( c_9 \) in terms of nodal drilling rotations \( \omega _k \) \((k=1, \ldots , 9)\) as follows:

$$\begin{aligned} c_9= & {} \bigg [ \frac{1}{4}\left( \omega _1 + \omega _2 +\omega _3 +\,\omega _4 \right) \nonumber \\&-\frac{1}{2}(\omega _5 + \ \omega _6 + \omega _7 + \omega _8) + \omega _9 \bigg ] \xi ^2 \eta ^2. \end{aligned}$$
(65)

Note that for the rigid element rotation \( \omega _{rr} \), all nodal \( \omega _k = \omega _{rr} \) and the term in brackets vanishes, so the faulty term does not cause any problem then. However, in general, \( \int _{-1}^{1} \int _{-1}^{1} c_9^2 \ d\xi d\eta = \frac{4 }{25} \Omega _9^2 \ne 0 \), which means that the penalty form involving \( c_9 \) is non-zero and affects the solution.

To establish a magnitude of the effect caused by \( c_9 \), we: (1) removed \(c_9 \) from c, which implied 1 additional zero eigenvalue of the tangent matrix, and (2) stabilized this matrix by the scaled-down \(c_9 \). Then, Eq. (18) valid for an arbitrary element (not only for the bi-unit one), has the following modified form

$$\begin{aligned} F^\mathrm{sh}_{drill} = \frac{\gamma h}{2}\int _{A} \left[ \ (c- c_9)^2 \ + \ \frac{1}{10^3} \, c_9^2 \ \right] dA, \end{aligned}$$
(66)

where \( 1/10^3 \) is the scaling factor. This form was tested on the Cook’s membrane example of Sect. 6.3, and the effect of \( c_9 \) term was not strong. Hence, in further tests, we use the form of \( F^\mathrm{sh}_{drill} \) given by Eq. (18), which is simpler.

6 Numerical tests

In this section, we present numerical tests of the developed 9-node shell element MITC9i. The element uses the modified transformations of Sect. 3 and the corrected shape functions (CSF) in the extended version for shells of Sect. 4, which enables calculation of shift parameters for non-flat element geometry and generation of a symmetric side curve for a non-symmetric position of a midside node. An implementation of the drilling rotation is described in Sects. 2 and 5. The element is integrated using the \(3 \times 3\) Gauss rule.

The tested and reference shell elements are listed in Table 1. All “ours” shell elements are of the Reissner–Mindlin type and with drilling rotations (6 dofs/node).

Table 1 Tested and reference 9-node shell element

The elements were derived using the automatic differentiation program AceGen described in [23, 24], and were tested within the finite element program FEAP developed by R.L. Taylor [52]. The use of these programs is gratefully acknowledged. Our parallel multithreaded (OMP) version of FEAP is described in [22].

Fig. 7
figure 7

Five-elements patch test. Regular mesh

Fig. 8
figure 8

Five-elements patch test. Shifted nodes (circles not to scale)

We tacitly assume that any consistent set of units is used for the data defined in numerical examples.

6.1 Eigenvalues of single element

The eigenvalues of a tangent matrix are computed for a single unsupported element. First, a single bi-unit square element with regularly placed mid-side and central nodes is checked. Then, several other flat and non-flat (h-p, one- and two-curvature) element shapes with shifted mid-side and central nodes are examined. This test is performed for the standard as well as corrected shape functions, which implies different element shapes. For all these cases, the tested shell element MITC9i has a correct number of zero eigenvalues (6).

6.2 Patch tests

The patch tests are crucial to demonstrate the benefits of using the new MITC9i shell element. The five-element patch of elements proposed in [33] of Fig. 7 and its distorted form of Fig. 8 are used. The data \(E=10^{6} \), \( \nu =0.25\) and a thickness \(h=0.001\).

The stretching/shearing (membrane) and bending/twisting patch tests are performed as described in [27]; displacements and rotations are prescribed at external nodes and the computed values are checked at internal nodes. The transverse shear test is performed for the load case defined for a 9-node plate in [18], see “Shearing case” in Fig. 2b therein. The particular types of constant strains are verified as follows:

  1. 1.

    For the stretching/shearing (membrane) patch test, the displacement and rotation fields are

    (67)

    This test verifies that \( \varepsilon _{xx}=\varepsilon _{yy}=0.001 \) and \(\varepsilon _{xy}=0.0005 \) while the bending/twisting strains and the transverse shear strains are equal to zero.

    The drilling rotation, \( \psi _z \) is unconstrained, and we should obtain the solution \( \psi _z =0 \), where zero results from the linearized drilling RC, \( \psi _z=\omega \doteq {\frac{1}{2}}(u_{x,y} - u_{y,x}) \).

  2. 2.

    For the bending/twisting patch test, the displacement and rotation fields are

    (68)

    This test verifies that the bending strains \( \kappa _{xx}=\kappa _{yy}=0.001 \) and the twisting strain \(\kappa _{xy} = -0.0005 \) while the membrane strains and the transverse shear strains are equal to zero. Note that passing this test is not required for consistency; it is merely a test of ability to model constant bending/twisting strains.

  3. 3.

    For transverse shear patch, the uniform transverse force \( P_z =1 \) is applied at the right boundary, the left boundary is clamped. Rotations \( \psi _x \) and \( \psi _y \) are set to zero at all nodes of the mesh to prevent the bending moments developing. The analytical solution is

    $$\begin{aligned} u_z = 0.025 \ x, \end{aligned}$$
    (69)

    and at the right boundary \( u_z = 0.006 \). This test verifies that the transverse shear strains are: \( \varepsilon _{xz} = 0.0125 \) and \( \varepsilon _{yz} = 0 \).

Table 2 Patch tests of MITC9i shell element

The standard patch tests are performed using the regular mesh of Fig. 7, which has straight element sides, the side nodes are placed at the middle positions and the central node of each element is located at the intersection of lines connecting opposite midside nodes.

We additionally perform the patch tests using the distorted meshes obtained from the regular mesh by shifts of the selected five nodes indicated in Fig. 8. The shifts are kept within the radius \( r=0.00673145 \), which is a half of the minimal distance of nodes in the entire mesh. Pseudo-random real numbers are generated 100 times in the range \( [-r, r] \), and the relative error is computed over all nodes,

$$\begin{aligned} e_u = \max \frac{Abs(u_{ana} - u)}{u_{ana}}, \end{aligned}$$
(70)

where u is a selected component and the analytical solution \( u_{ana} \) is computed using either Eq. (67) or (68) or (69). The rounded logarithms of these errors are shown in Table 2, and we see that for the regular mesh (Case A), the errors are of order \( 10^{-16} \), which means that the MITC9i element passes all the standard patch tests. For the distorted meshes, additionally the corrected shape functions are activated, and the results can be summarized as follows:

  1. 1.

    For the shifted central node 25 (Case B) and for parallel shifts of nodes 21, 22, 23, 24 (Case C), the errors are of order \( 10^{-5} \), so the element passes all the patch tests for these cases. Note that to obtain such a performance the standard shape functions are not sufficient and the corrected shape functions are required.

  2. 2.

    For perpendicular shifts of nodes 21, 22, 23 and 24 (Case D), we observe a drop of accuracy in all three patch tests.

    The biggest error occurs for bending/twisting, and this patch test is not passed. We checked bending and twisting separately, and they both contribute to the error. (To shed additional light on this case, we replaced the transverse shear part of the 9-node element by an assembly of the transverse shear parts of four 4-node elements, in which the ANS method of [3] was applied to eliminate locking. Then the error dropped to \(\log _{10} e_u = -3.1 \).) Because the bending/twisting patch test is not necessary for consistency, the convergence of the FE solution is possible despite failing this test.

Finally, note that the classical MITC9 element does not pass these patch tests even for the regular mesh (Case A), so the MITC9i element provides an improvement.

6.3 Cook’s membrane

In this test, we demonstrate that the use of corrected shape functions reduces sensitivity of a solution to the value of regularization parameter \(\gamma \) in the drilling RC term. The implementation of \(F^\mathrm{sh}_{drill} \) of Eq. (18) is tested.

The membrane is clamped at one end (all degrees of freedom are restrained, including drilling rotations), while at the other end, the uniformly distributed shear load \( P=1 \) is applied, see Fig. 9. The data is as follows: \(E=1, \ \nu ={1}/{3} \) and a thickness \( h=1\).

Two meshes are used, the skew one of Fig. 9a, and the irregular one, where the central node 9 and three midside nodes (5, 7, 8) are shifted by d, see Fig. 9b. We use two mesh densities: \( 1 \times 1 \) and \( 16 \times 16 \) elements.

Fig. 9
figure 9

Cook’s membrane. Mesh of single element: a skew, b irregular for \(d=5\)

Table 3 Cook’s membrane

We test the MITC9i element using: (a) two values of the regularization parameter: \( \gamma = G \) and \( \gamma = G/1000 \), and (b) two types of shape functions, standard and corrected. The results are given in Table 3, and we summarize them as follows:

  1. 1.

    Solutions for the coarse \( 1 \times 1 \)-element mesh are more sensitive to the value of \( \gamma \) than those for the dense \( 16 \times 16 \)-element mesh. For both tested types of shape functions, the reduced value \( \gamma = G/1000 \) improves the accuracy.

  2. 2.

    For the irregular mesh of Fig. 9b and both mesh densities, the use of the corrected shape functions is beneficial and the solution is almost insensitive to the node shifts. The MITC9i element is more accurate than the other elements.

We see that for the corrected shape functions, the solution is less sensitive to the value of regularization parameter \( \gamma \), which is another positive effect of using these functions.

6.4 Shift parameters for parabolic cylindrical element

In this test, we evaluate the method M2 of calculation the shift parameters \( \theta \) and \( \kappa \) of the corrected shape functions for shells, which was proposed in Sect. 4.

The parabolic cylindrical element shown in Fig. 10a is obtained from a bi-unit square \( X,Y \in [-1,+1] \) by shifting nodes 5, 7 and 9 by the vector \( [d_x,0,d_z] \). (In the notation of Sect. 4 \(, \ Z_5 =Z_7=Z_9=d_z \).) The remaining nodes are at \( Z=0 \) and the standard XY positions.

For this element, we first calculate the shift parameters \( \alpha , \beta , \gamma , \epsilon \) and next \( \theta \) and \( \kappa \) using methods M1 and M2 of Sect. 4. For the initial values given by Eq. (51), the Newton method always converged in less than 5 iterations. The values of \( \theta \) obtained for the horizontal shift \( d_x \in [0, \, 0.5] \) and the elevation \( d_z \in [0, \, 0.7] \) are plotted in Fig. 10b, and we see that:

  1. 1.

    M1 yields always the value \( \theta = d_x \), which is correct for flat elements and acceptable for shallow elements, when \(0 \le d_z \le 0.1 \), but is incorrect beyond this range.

  2. 2.

    For M2, the value of \( \theta \) varies with \( d_z \) and the bigger \( d_z \) the \( \theta \) differs more from \( d_x \), which is correct as the arc-length changes then. Note that, e.g., for \( d_z=0.7 \) and \( d_x =0.5 \), the error of M1 relative to M2 is about \( 17.7 \% \).

Concluding, the method M2 is appropriate for flat, shallow and non-flat elements, and can be used as a general method of calculation \( \theta \) and \( \kappa \) for 9-node shell elements.

Fig. 10
figure 10

Parabolic cylinder. a Shift \( [d_x, 0, d_z] \) of nodes 5, 7 and 9 of square element. b Values of \( \theta \) for varying elevation \( d_z\)

6.5 Single curved element

In this test, we evaluate the method of computation of the shift parameters for curved sides proposed in Sect. 4, which constructs a symmetrical side curve when the midside node is shifted from the middle position.

The curved cantilever is clamped at one end and at the other end is loaded by either “Load 1” causing in-plane bending by a pair of in-plane forces, or “Load 2” causing twisting by a pair of transverse forces, see Fig. 11. The material data and geometry are: \(E=1.0\times 10^{5}, \nu =0.0, h=0.025\), inner radius = 0.095, outer radius = 0.105, force \(P=0.1\), as in [25]. One 9-node element is used and it’s nodes are shifted as follows: (1) the midside nodes 6 and 8 by \(d=n*0.001\) along straight boundaries, (2) the midside nodes 5 and 7 by \( \phi =n*1^{\circ } \) in the circumferential direction along curved boundaries, and (2) the central node 9 in the radial direction by \(d=n*0.001\), see Fig. 11.

Fig. 11
figure 11

Single curved element. Load cases and shifts of nodes

The element shape for \( n=3 \) in shown in Fig. 12, and we see that the standard shape functions very poorly approximate the geometry while the corrected ones much better.

The displacements at node 1 obtained for the increasing distortion parameter n are shown in Figs. 13 and 14. The curves are designated as follows: “standard” for the standard shape functions, while for the corrected shape functions: “CSF,CG” for the method of calculation of the shift parameter of [9], and “CSF,new” for the method of calculation of the shift parameter proposed in Sect. 4.

Fig. 12
figure 12

Single curved element. Parameterizations of domain for shifted nodes (\(n=3\)) using: a standard shape functions, b CSF [9], c) CSF with new shift parameters

Next, we can calculate errors of the displacement at node 1 for the distortion parameter \( n=4 \) relative to the displacement for \( n=0 \), see Table 4. We see that the corrected shape functions are beneficial for both tested elements and significantly reduce errors. The proposed method of calculation of the shift parameter “CSF,new” is more accurate than the original method of [9] “CSF,CG”. It renders that the element MITC9i is practically insensitive to nodes’ shifts for both load cases.

6.6 Curved cantilever

In this test, we assess the effects of elements’ curvature, skew shape and a varying shell thickness h on the accuracy of a solution.

Fig. 13
figure 13

Single curved element. Displacement for “Load 1”

Fig. 14
figure 14

Single curved element. Displacement for “Load 2”

The curved cantilever is fixed at one end and loaded by a moment \( M_z \) at the other, see Fig. 15. The data is as follows: \(E=2\times 10^5 \), \(\nu =0\), width \(b= 0.025\) and radius of curvature \(R=0.1\). The FE mesh consists of 6 nine-node elements, which have either rectangular or skew shape, see [25]. The analytical solution for a curved beam is

$$\begin{aligned} u_y=\frac{M_z R^2}{EI} = 0.024, \qquad \psi _z=\frac{\pi M_z R}{2EI} = 0.377, \end{aligned}$$
(71)

where I is the moment of inertia.

The shell thickness is varied in \( h \in [ 10^{-2}, 10 ^{-5}] \), and the external moment is assumed as \( M_z=\left( {R}/{h}\right) ^{-3} \), so a solution of the linear problem should remain constant. For this range of h, we obtain the range of \( R/h \in [ 10, 10^4 ] \) and \( L/h \in 2.6 \times [ 1, 10^4] \), where L is a circumferential length of a single rectangular element.

Note that for the rectangular mesh, coefficients of the corrected shape functions are equal to zero while for the skew mesh non-zero values are obtained; the values for the ’middle’ elements (\( \theta \) and \( \kappa \) are obtained by M2 of Sect. 4) are given in Table 5.

Table 4 Single curved element
Fig. 15
figure 15

Curved cantilever. Rectangular and skew mesh

Table 5 Coefficients of corrected shape functions for skew mesh (\( \times 10^{4} \))

The displacement \( u_y \) at point A obtained by the linear analysis are shown in Fig. 16. The plots of the rotation \( \psi _z \) are similar and for this reason not shown here. We can conclude this test as follows:

  1. 1.

    For the rectangular mesh, the solutions for all elements are are close to the analytical value, and we provide for reference the curve designated “MITC9i,rectang”. The only exception is the element ‘9’, which severely locks; then the curve is similar to the one shown for this element and the skew mesh.

  2. 2.

    For the skew mesh,

    1. a.

      all the tested elements, except ‘9’, yield accurate solution for \(R/h \le 100\). Beyond this range, the accuracy of all elements worsens. The most accurate is S9R5, second is MITC9i but the difference between it and the next 9-EAS11, 9-AS and 9-SRI is not big. The solution for MITC9 was obtained only for \(\log ({R}/{h})=1,2\), see [29] p. 93.

    2. b.

      MITC9i behaves slightly better than the elements 9-AS and 9-SRI of [29]; this can be attributed to the corrected shape functions implemented in MITC9i. MITC9i performs also slightly better than 9-EAS11 when both use the corrected shape functions.

Fig. 16
figure 16

Curved cantilever. Displacement \( u_y \) at point A for skew mesh and diminishing thickness

6.7 Pinched hemispherical shell with hole

In this test, the shell undergoes an almost in-extensional deformation and membrane locking can strongly manifest itself, see [4]. The elements are curved and we test two values of the regularization parameter \( \gamma \) for the drilling rotation term.

A hemispherical shell with an \( 18^o\) hole is loaded by two pairs of equal but opposite external forces, applied in the plane \(z=0\), along the 0X and 0Y axes, see Fig. 17. The data is as follows: \(E=6.825\times 10^{7} \), \( \nu =0.3 \), \( R=10 \) and thickness \( h=0.04 \) or \( h=0.01 \). Note that for the smaller thickness, \( h/R=0.001\). Because of the double symmetry, only a quarter of the hemisphere is modeled.

Fig. 17
figure 17

Pinched hemispherical shell with hole

Linear analyses Two values of the regularization parameter \( \gamma \) for the drilling RC term are tested, \( \gamma =G\) and \( \gamma =G/1000 \), and the results for the \(8 \times 8\) element mesh are given in Tables 6 and 7. A displacement at the point where a force is applied and in a direction of this force is reported. The conclusions are as follows:

  1. 1.

    For both thicknesses, the reduced value \( \gamma =G/1000\) yields more accurate results for all tested elements.

  2. 2.

    For \( h=0.04 \) and both tested values of \( \gamma \), MITC9i performes similarly to 9-EAS11.

We see that the solution for the basic element 9 is very locked, and such techniques as EAS, MITC, AS or SRI improve accuracy about threefold for \( h=0.04 \) and over 30 times for \( h=0.01 \).

Table 6 Pinched hemispherical shell with a hole. \( h=0.04 \). Linear analysis
Table 7 Pinched hemispherical shell with a hole. \( h=0.01 \). Linear analysis

Non-linear analyses The non-linear analyses are performed using the Newton method and \( \Delta P =0.2 \). We use the mesh of \(8 \times 8\) elements, unless differently indicated. The solution curves for the inward displacement under the force are shown in Fig. 18.

  1. 1.

    The curves MITC9i, 9-SRI0 and 9-EAS11 are obtained for \( \gamma =G/1000\). We see that they almost coincide with the solution for the 4-node element HW47.

  2. 2.

    For MITC9i, we additionally provide the solution for \( \gamma =G \) (“MITC9i,G”) and it is locked compared to the one for \( \gamma =G/1000\). The solution for a \(16 \times 16\)-element mesh (“MITC9i, 16x16”) is softer than that for the \(8 \times 8\)-element mesh.

Concluding the linear and non-linear analyses, we see that the accuracy of the MITC9i shell element is very good compared to the 9-SRI0 element and that the reduced value \( \gamma =G/1000\) for the drilling rotation term is beneficial in the case of curved elements.

Fig. 18
figure 18

Pinched hemispherical shell. \( h=0.01\). Inward displacement at force

6.8 Short C-beam

Drilling rotations are mainly introduced to allow for analyses of intersecting shells and in this example we have two 90-degree intersections.

A short C-beam is fully clamped at one end and loaded by a vertical force P at the other, see Fig. 19a. At the clamped end, displacements and rotations are constrained to zero, as proposed in [12]. The data is as follows: \(E=10^{7} \), \(\nu =0.333\), the thickness \(h=0.05\). The web is modeled by \( 18 \times 3 \) elements and each flange by \( 18 \times 1 \) elements, so the total number of elements is 90. The vertical displacement \( u_z \) at the point where the force P is applied is monitored.

The mesh is regular so coefficients of the corrected shape functions (CSF) are equal to zero in this example.

Fig. 19
figure 19

Short C-beam. a Initial geometry and load. b Deformed configuration at force \(P=112\)

The linear solutions for \( P=1 \) and \( \gamma =G/1000 \) are given in Table 8. The reference value is computed in [13], using the \((2+3+2)\times 9\)-element mesh of the 16-node CAM elements and \( \alpha _t =0.01 \). For comparison, we also provide a solution by 4-node HW47 and \((2+6+2)\times 36\)-element mesh obtained in [48].

We see that the solutions for MITC9i, 9-AS, 9-SRI and 9-EAS11 are similar and slightly above the reference value. Besides, MITC9i is insensitive to the value of \( \gamma \), and yields almost the same results for \( \gamma =G/1000 \) and \( \gamma =G \). The solution by MITC9 is slightly excessive. Surprisingly, the solution for a basic element 9 does not show much locking.

Table 8 Short C-beam. Linear solution. Vertical displacement
Fig. 20
figure 20

Short C-beam. Non-linear solutions for \( \Delta P=20 \)

The non-linear solution computed using the arc-length method with the initial \( \Delta P=20 \) is shown in Fig. 20. All elements are tested for \( \gamma =G/1000 \). The curves for 9-AS and 9-SRI coincide with that for MITC9i and the solution for MITC9 is quite close to them. The 4-node HW47 element is slightly softer than MITC9i. Additionally, MITC9i is tested for \( \gamma =G \), and the solution curves for both values of \( \gamma \) almost coincide.

Note that the reference elements 9 and S9R5 behave erroneously; the solution for 9 is too stiff while for S9R5 is too flexible, compared also to the solutions from, e.g., [6, 12]. Note that S9R5 lost convergence at about \( u_z \approx - 2.7 \).

6.9 L-shaped plate

In this test we compare the convergence properties of the MITC9i element to the 9-node element 9-EAS11 and two 4-node elements, including the mixed/enhanced HW29 element of [48]. This example was also analyzed using quadrilateral and triangular shell elements in [38] and [10].

The L-shaped plate is clamped at one end and the in-plane force P is applied at the other end, see Fig. 21. The data is as follows: \(E=71{,}240 \), \( \nu =0.31 \), \( w=30 \), \( L=240\), and thickness \( h=0.6 \). The value of the regularization parameter for the drilling RC term \( \gamma =G\). A mesh of 17 nine-node elements (102 nodes) is used.

Fig. 21
figure 21

L-shaped plate. Initial geometry and load

The solution of this problem has a bifurcation point at which an out-of-plane deformation occurs. We add a small out-of-plane load and solve the equilibrium problem using the arc-length method. The in-plane force P and the out-of-plane load \( P_3 = P/1000 \) are applied at point B, at which the out-of-plane displacement \(u_3 \) is monitored.

In this test, 10 steps are performed by the arc-length method for the initial load increment \( \Delta P = 0.5 \) and the requested number of iterations per step \( I_{req} = 20 \). The non-linear solutions are presented in Fig. 22. The reference curve was obtained in [48] using 64 4-node elements and \( \Delta P = 0.1 \).

We see in Fig. 22, that the longest steps were made by the 4-node HW29 element, next by the 9-node MITC9i and 9-EAS11, and the shortest ones by the 4-node EADG5A. The total number of Newton iterations used in 10 steps was as follows:

(a) 4-node elements: HW29 - 67, EADG5A - 90,

(b) 9-node elements: MITC9i - 91, 9-EAS11 - 91.

We see that the 4-node HW29 outperforms the other 4- and 9-node elements in this test. We recall that a treatment of the drilling RC was pivotal to improve convergence properties of this element, see [48]. In this element, we applied the Perturbed Lagrange method and the 3-parameter Lagrange multiplier, which yielded one spurious mode, for which we developed the \(\gamma \)-stabilization. Finally, we note that this analysis can be continued further without any problem, and, e.g., for MITC9i and 20 steps, we end up at the load level of about 130.

Fig. 22
figure 22

L-shaped plate. Non-linear solution. Indicated are the last points for particular elements after 10 steps

7 Final remarks

The improved nine-node shell element MITC9i with drilling rotations was developed and tested in this paper. The element is based on the Reissner–Mindlin kinematics, Green strain and the extended potential energy functional for the plane stress condition. Its formulation includes several improvements, which we summarize as follows:

  1. 1.

    We propose to formulate the MITC method for the bending/twisting strains \( \varvec{\kappa }\) and the transverse shear strains \( \varvec{\gamma }\) using the ‘COVc’ components of Green strain, see Sect. 3, which is different from in the classical MITC9 element. This modification renders that the patch tests are passed by the MITC9i element for the regular mesh of Fig. 7.

  2. 2.

    The corrected shape functions are applied instead of the standard shape functions, see Sect. 4. They eliminate distortions of a local coordinate space caused by shifted nodes, which results in a better interpolation accuracy. These functions enable the MITC9i element to pass the patch tests for meshes distorted by parallel shifts of midside nodes and arbitrary shifts of the central node, see Fig. 8. The method of computation of the shift parameters of [9] was generalized from 2D to shells located in 3D space in Sect. 4. To compute the shift parameters of a central node, we propose the method based on the minimization of a square error, Eq. (50), which is suitable for flat, shallow and non-flat elements, see Sect. 6.4. Additionally, we propose an alternative method to calculate the shift parameters for midside nodes, Eq. (58), different from the one of [9]. It does not rely on the proportion of arc-lengths but uses a parametric equation of a parabola. In effect, a symmetric curved side is generated even for a shifted midside node, which improves accuracy when the shell boundary is curved and symmetric, see Sect. 6.5.

  3. 3.

    The drilling rotation is incorporated using the drilling part of the Rotation Constraint equation, Eqs. (10) and (11). We found that the corrected shape functions reduce sensitivity of solutions to the value of regularization parameter \( \gamma \) of the penalty method. Besides, we confirmed that the reduced value \( \gamma =G/1000\) improves accuracy for curved or distorted element shapes, see Sects. 6.3 and 6.7.

Finally, the shell element MITC9i with drilling rotations not only passes the patch tests described above, but its accuracy is very good in linear tests for coarse distorted meshes. In non-linear tests, see Sects. 6.7, 6.8 and 6.9 (we have also run several other tests, not reported in this paper), it is very robust and its convergence properties are good. Nonetheless, its radius of convergence is smaller than of our best 4-node element HW29, see Sect. 6.9. Therefore, further studies are needed to fully compare its performance to other existing very good quadrilateral and triangular elements.