1 Introduction

In modern engineering applications such as automotive engineering and aerospace engineering, computer-aided design (CAD) is a key method to design structural components. The mathematical underlying of these drawings usually consists of B-splines and non-uniform rational B-splines (NURBS) and provides that by using isogeometric analysis (IGA) [1] for the numerical analysis, the model for the design and the analysis are the same. A major issue of numerical analyses is the treatment of trimmed geometries whereas parts of the initial geometry are cut out [2]. This implies, that a numerical analysis in common frameworks is not conductible anymore in a straightforward manner. Several approaches are presented in the literature for treating trimming such as [3,4,5] mostly considering an approximation of the trimming curve and a limitation to quadrilateral sections but do not incorporate the exact trimming curve in the domain.

Isogeometric analysis is especially suitable for Kirchhoff–Love shells [6] since the formulation is derived on the change of the normal vector which requires well-defined second order derivatives of the basis functions. This is naturally fulfilled within single patches of quadratic or higher order. However, across patch boundaries, IGA patches are not naturally \(C^{p-1}\) continuous. This implies that the Kirchhoff–Love shell formulation is not applicable for multi-patch structures in IGA. As complex shell structures often consist of multi-patch geometries, \(C^1\) continuity needs to be enforced at patch boundaries. Common approaches to ensure higher continuity on multiple patches are Nitsche methods [7, 8], mortar methods [9, 10], and penalty methods [11,12,13,14], among others [15, 16]. However, all of these methods are coupling techniques in a weak sense that can only represent the isogeometric discretization space approximately \(C^1\) smooth. To ensure exact \(C^1\) smooth multi-patch geometries, a special class of \(G^1\) continuous multi-patch surfaces, namely analysis-suitable \(G^1\) surfaces [17] can be utilized in the two-dimensional domain. An approach of analysis-suitable \(G^1\) spaces that will be utilized in this work, is presented in [18] for Kirchhoff–Love shells with restriction to quadrilateral patches.

A promising approach to take the exact boundary of geometries more into account is the scaled boundary isogeometric analysis (SB-IGA) [19, 20]. It combines the advantages of the scaled boundary finite element method [21, 22] and the isogeometric analysis providing patches of arbitrarily shaped boundaries. This yields that any domain can be discretized by segmentation into star-shaped blocks [23]. Since the discretization of an SB-IGA domain always consists of multiple patches even for a single star-shaped block, a coupling approach is inherently necessary to obtain \(C^1\)-continuity on the SB-IGA domain.

This contribution presents a Kirchhoff–Love shell in the framework of scaled boundary isogeometric analysis with analysis-suitable \(G^1\) surfaces that are especially suitable for complex, trimmed geometries by incorporating the trimming curve into the boundary representation of the geometry in a simple way and thus provides an exact discretization of the trimmed domain. Moreover, to preserve the approximation ability of the SB-IGA test functions, special scaling center test functions have to be introduced. A step that can also be observed if smooth polar splines are considered [24]. The proposed approach is tested on its general performance by untrimmed shell structures and the potential is later outlined by trimmed shell structures in the linear case. The advantages are summarized as follows.

  • A linear Kirchhoff–Love shell formulation is presented in isogeometric boundary representation.

  • A patch coupling of smooth patches across boundary edges is applied utilizing the analysis-suitable \(G^1\) concept including modifications in the vicinity of the scaling center.

  • Advantages of the approach to discretized star-shaped domains of an arbitrary number of boundaries are outlined.

  • Examples of discretizations for complex topologies including trimmed surfaces are presented and evaluated.

The work is structured as follows. In Sect. 2, the linear formulation of the Kirchhoff–Love theory is provided. Section 3 presents the fundamental concept of SB-IGA and the notation herein. Further, Sect. 4 discusses the choice of basis functions for \(C^1\) continuity in the planar domain and the application to Kirchhoff–Love shells with the incorporation of trimming. The proposed approach is tested in numerical examples in Sect. 5. Finally, the contribution is concluded in Sect. 6 including an outlook to further research.

2 Kirchhoff–Love shell formulation

The Kirchhoff–Love shell formulation is recalled in this section, based on the derivations presented in [6, 8, 25]. The formulation is derived considering a single patch but can be extended to scaled boundary multi-patch structures as outlined in the following sections. Neglecting cross-sectional shear stresses, the Kirchhoff–Love shell formulation states the assumption that the initial director vectors to the shell center surface remain perpendicular during deformation. The description of the shell is reduced from the domain of the shell body to the mid-surface \(\Omega \subset {\mathbb {R}}^3\) utilizing a convective covariant space \({\tilde{\Omega }} \subset {\mathbb {R}}^2\). Utilizing the unit normal vector on the mid-surface, the initial shell structure reduced on the mid-surface is described as

$$\begin{aligned} {\textbf{S}}(\theta ^1,\theta ^2,\theta ^3) = {\textbf{a}}(\theta ^1,\theta ^2) + \theta ^3 {\textbf{a}}_3(\theta ^1,\theta ^2) \end{aligned}$$
(1)

where \({\textbf{a}}\) is the position vector in the initial configuration, \({\textbf{a}}_3\) is the unit normal vector on each point on the surface, and \(\theta ^3\) the thickness coordinate ranging from \(-t/2\) to \(+t/2\). Further, we use the Greek indices \(\alpha ,\beta , \lambda , \mu \in \{1,2\}\) and Latin indices \(i,j \in \{ 1,2,3 \}\) and drop the dependence of \(\theta ^{\alpha }\). To obtain the normal vector on the surface, the partial derivatives on the mid-surface are utilized to construct the unit normal vectors with

$$\begin{aligned} {\textbf{a}}_{\alpha } = {\textbf{a}}_{,\alpha } = \frac{\partial {\textbf{a}}}{\partial \theta ^{\alpha }} \qquad {\textbf{a}}_3 = \frac{{\textbf{a}}_1 \times {\textbf{a}}_2}{|{\textbf{a}}_1 \times {\textbf{a}}_2|}. \end{aligned}$$
(2)

In the following, we will indicate differentiation w.r.t. the corresponding coordinate \((\cdot )_{,\alpha }= \frac{\partial }{\partial \theta ^{\alpha }}\). Further, we define the \(L_2\)-norm of the normal vector \({\textbf{a}}_3\) as \({\bar{J}}\). Utilizing the partial derivatives, we introduce the covariant metric coefficients constructed by

$$\begin{aligned} a_{\alpha \beta } = {\textbf{a}}_\alpha \cdot {\textbf{a}}_\beta . \end{aligned}$$
(3)

Due to the orthogonality condition, we construct the contravariant basis system \({\textbf{a}}^{\alpha } \cdot {\textbf{a}}_{\beta } = \delta _{\beta }^{\alpha }\), that yields a relation of the covariant and the contravariant metric system by the inverse operator \(\{a^{\alpha \beta }\} = \{a_{\alpha \beta }\}^{-1},\) where \(\{ \cdot \}\) denotes the matrix components.

In the discrete setting of the boundary conditions of the boundary value problem, we denote the boundary of the body \(\Gamma = \partial \Omega\) with Dirichlet and Neumann boundary conditions \(\Gamma _D\) and \(\Gamma _N\) with the assumption that \(\Omega\) is a smooth surface with well-defined derivatives of the curvature. The boundary conditions of \(\Gamma _D\) and \(\Gamma _N\) are non-overlapping \(\Gamma = \overline{\Gamma _D \cup \Gamma _N}\). Further, we decompose the boundary conditions into \(\Gamma _D = \Gamma _u \cup \Gamma _{\beta }\) and \(\Gamma _N = \Gamma _Q \cup \Gamma _M\) with \(\Gamma _u \cap \Gamma _Q = \varnothing\) and \(\Gamma _{\beta } \cap \Gamma _M = \varnothing\) since the prescribed displacements \(\tilde{{\textbf{u}}}\) and traction forces \(\tilde{{\textbf{Q}}}\), as well as the prescribed rotations \(\tilde{\mathbf {\beta }}\) and traction moments \(\tilde{{\textbf{M}}}\) at the boundary are of energetically conjugate nature. A similar consideration is done at the corners \(\chi \subset \Gamma\) with a split into Neumann boundary conditions \(\chi _N \cap \Gamma _N\) and Dirichlet boundary conditions \(\chi _D \cap \Gamma _D\).

Having defined the boundary, we choose some suitable discrete space \({\textbf{V}}_h \in H^2(\Omega )\) in the sense of finite element methods and depending on the boundary conditions of the problem. Then, the discrete weak form seeks for \({\textbf{u}}_h \in {\textbf{V}}_h\) such that

$$\begin{aligned} a({\textbf{u}}_h,{\textbf{v}}_h) = F({\textbf{v}}_h), \qquad \forall \; {\textbf{v}}_h \in {\textbf{V}}_h. \end{aligned}$$
(4a)

where the bilinear form a and the linear form F are expanded as

$$\begin{aligned} a({\textbf{u}}_h,{\textbf{v}}_h)= & {} \int _{\Omega } \varvec{\varepsilon }({\textbf{v}}_h): {\textbf{n}}({\textbf{u}}_h) \textrm{d}\Omega + \int _{\Omega } \varvec{\kappa }({\textbf{v}}_h): {\textbf{m}}({\textbf{u}}_h) \textrm{d}\Omega . \end{aligned}$$
(4b)
$$\begin{aligned} F({\textbf{v}}_h)= & {} \int _\Omega {\textbf{g}} \cdot {\textbf{v}}_h \textrm{d}\Omega + \int _{\Gamma _Q} \tilde{{\textbf{Q}}} \cdot {\textbf{v}}_h \textrm{d}\Gamma \nonumber \\{} & {} + \int _{\Gamma _M} \tilde{{\textbf{M}}} \beta _n({\textbf{v}}_h) \textrm{d}\Gamma + \sum _{e\in \chi _N} \left( {\tilde{S}} v_{3,h } \big |_e \right) \end{aligned}$$
(4c)

where \({\textbf{g}}\) is an applied body force, \({\tilde{S}}\) a prescribed twisting moment at each corner of \(\chi _N\), and \(\beta _n\) the normal rotation [8]. In this work, only body forces and traction forces are considered. Additionally, for a complete weak form, the kinematics and the constitutive relation are pending. The quantities \(\varvec{\varepsilon }\), \(\varvec{\kappa }\), \({\textbf{n}}\) and \({\textbf{m}}\) denote the membrane strains and bending strains depending on the test function \({\textbf{v}}_h\) and the energetically conjugate membrane forces and bending moments depending on the discretized solution field \({\textbf{u}}_h\). According to the Kirchhoff kinematical assumptions, transverse shear strains vanish and membrane and bending strains remain. Consequently, the decomposition of the linearized Green-Lagrange strain tensor reads

$$\begin{aligned} {\textbf{E}}_{lin}({\textbf{v}}_h) = \varvec{\varepsilon }({\textbf{v}}_h) + \theta ^3 \varvec{\kappa }({\textbf{v}}_h). \end{aligned}$$
(5)

For a rigorous derivation of the linearization, see [8]. According to [26] the linearized strain components are

$$\begin{aligned} \varepsilon _{\alpha \beta } = \frac{1}{2} \left( {\textbf{a}}_{\beta } \cdot {\textbf{v}}_{h,\alpha } + {\textbf{a}}_{\alpha } \cdot {\textbf{v}}_{h,\beta } \right) \end{aligned}$$
(6a)

and

$$\begin{aligned} \kappa _{\alpha \beta } = -{\textbf{a}}_3 \cdot {\textbf{v}}_{h,\alpha \beta } + {\textbf{a}}_{\alpha ,\beta } \cdot {\textbf{a}}_3 \cdot \frac{1}{\bar{J}} \left( \left( {\textbf{a}}_2 \times {\textbf{a}}_3 \right) \cdot {\textbf{v}}_{h,1} -\left( {\textbf{a}}_1 \times {\textbf{a}}_3 \right) \cdot {\textbf{v}}_{h,2} \right) \\ + \frac{1}{\bar{J}} \left( \left( {\textbf{a}}_{\alpha ,\beta } \times {\textbf{a}}_2 \right) \cdot {\textbf{v}}_{h,1} -\left( {\textbf{a}}_{\alpha ,\beta } \times {\textbf{a}}_1 \right) \cdot {\textbf{v}}_{h,2} \right) . \end{aligned}$$
(6b)

Besides the kinematics, the stress resultants \({\textbf{n}}\) and \({\textbf{m}}\) are derived by applying a suitable constitutive relation. Thus, the Cauchy stress tensor is analytically integrated through the thickness and reads as a decomposition into the stress tensors’ components as [13]

$$\begin{aligned} {\textbf{n}}({\textbf{u}}_h) = t\cdot {\textbf{D}}: \varvec{\varepsilon }({\textbf{u}}_h) \end{aligned}$$
(7a)

and

$$\begin{aligned} {\textbf{m}}({\textbf{u}}_h) = \frac{t^3}{12} \cdot {\textbf{D}}: \varvec{\kappa }({\textbf{u}}_h) \end{aligned}$$
(7b)

with the materials fourth-order tensor \({\textbf{D}}\). We want to remark, that the analytical integration herein assumes a constant thickness of the shell. Applying Hooke’s law as a linear constitutive model, the tensor is given as [13]

$$\begin{aligned} {\textbf{D}} = D^{\alpha \beta \lambda \mu } {\textbf{a}}_{\alpha } \otimes {\textbf{a}}_{\beta } \otimes {\textbf{a}}_{\lambda } \otimes {\textbf{a}}_{\mu } \end{aligned}$$
(7c)

and

$$\begin{aligned} D^{\alpha \beta \lambda \mu } = \frac{E}{2(1+\nu )} \left( a^{\alpha \lambda }a^{\beta \mu }+ a^{\alpha \mu }a^{\beta \lambda } + \frac{2\nu }{1-\nu } a^{\alpha \beta }a^{\lambda \mu }\right) . \end{aligned}$$
(7d)

Herein the parameters \(\nu\) and E are the specific material parameters of Poisson’s ratio and Young’s modulus, respectively. It is remarkable, that due to the occurrence of second order derivatives of the basis functions in the bending components, \(C^1\) continuity is required for the computation. This is fulfilled naturally for SB-IGA patches across the elements within each patch, however, at the patch boundaries, only \(C^0\) continuity is given. Thus, \(C^1\) continuity is enforced across patch boundaries in the manner of scaled boundary isogeometric analysis.

3 B-splines and SB-IGA

In this section, we introduce the notation herein and explain briefly some basic notions in the context of the SB-IGA ansatz. For more details regarding isogeometric analysis, we refer to [27, 28]. We start with the definition of B-spline functions and B-spline spaces, respectively.

An increasing sequence of real numbers \(\Xi {:}{=}\{ \xi _1 \le \xi _2 \le \dots \le \xi _{n+p+1} \}\) for some \(p \in {\mathbb {N}}\) is called knot vector, where we assume \(0=\xi _1=\dots =\xi _{p+1}, \ \xi _{n+1}=\dots =\xi _{n+p+1}=1\), and call such knot vectors p-open. Further, the multiplicity of the j-th knot is denoted by \(m(\xi _j)\). Then the univariate B-spline functions \({\widehat{B}}_{j,p}(\cdot )\) of degree p corresponding to a given knot vector \(\Xi\) is defined recursively by the Cox-DeBoor formula:

$$\begin{aligned} {\widehat{B}}_{j,0}(\zeta ) {:}{=}{\left\{ \begin{array}{ll} 1, \ \ if \ \zeta \in [\xi _{j},\xi _{j+1}) \\ 0, \ \ else , \end{array}\right. } \end{aligned}$$
(8)

and if \(p \in {\mathbb {N}}_{\ge 1} \ we \, set\)

$$\begin{aligned} {\widehat{B}}_{j,p}(\zeta )&{:}{=}\frac{\zeta -\xi _{j}}{\xi _{j+p}-\xi _j} {\widehat{B}}_{j,p-1}(\zeta ) \nonumber \\&+\frac{\xi _{j+p+1}-\zeta }{\xi _{j+p+1}-\xi _{j+1}} {\widehat{B}}_{j+1,p-1}(\zeta ). \end{aligned}$$
(9)

Note one sets \(0/0=0\) to obtain well-definedness. The knot vector \(\Xi\) without knot repetitions is denoted by \(\{ \psi _1, \dots , \psi _N \}\).

The extension of the last spline definition to the multivariate case is achieved by a tensor product construction. In other words, we set for a given tensor knot vector \(\varvec{\Xi } {:}{=}\Xi _1 \times \dots \times \Xi _d,\) where the \(\Xi _{l}=\{ \xi _1^{l}, \dots , \xi _{n_l+p_l+1}^{l} \}, \ l=1, \dots , d\) are \(p_l\)-open, and a given degree vector \(\varvec{p} {:}{=}(p_1, \dots , p_d)\) for the multivariate case

$$\begin{aligned} {\widehat{B}}_{\varvec{i},\varvec{p}}(\varvec{\zeta }) {:}{=}\prod _{l=1}^{d} {\widehat{B}}_{i_l,p_l}(\zeta _l), \ \ \ \ \forall \, \varvec{i} \in {\textbf{I}}, \ \ \varvec{\zeta } {:}{=}(\zeta _1, \dots , \zeta _d), \end{aligned}$$
(10)

with d as the underlying dimension of the parametric domain \({\widehat{\Omega }}= (0,1)^d\) and \({\textbf{I}}\) the multi-index set \({\textbf{I}}{:}{=}\{ (i_1,\dots ,i_d) \ | \ 1\le i_l \le n_l, \ l=1,\dots ,d \}\).

B-splines fulfill several properties and for our purposes the most important ones are:

  • If for all internal knots, the multiplicity satisfies \(1 \le m(\xi _j) \le m \le p,\) then the B-spline basis functions \({\widehat{B}}_{i,p}\) are global \(C^{p-m}\)-continuous. Therefore we define in this case the regularity integer \(r {:}{=}p-m\). Obviously, by the product structure, we get splines \({\widehat{B}}_{\varvec{i},\varvec{p}}\) which are \(C^{r_l}\)-smooth w.r.t. the l-th coordinate direction if the internal multiplicities fulfill \(1 \le m(\xi _j^l) \le m_l \le p_l, \ r_l {:}{=}p_l-m_l, \ \forall l \in 1, \dots , d\) in the multivariate case. To emphasize later the regularity of the splines, we introduce an upper index r and write in the following \({\widehat{B}}_{{i},{p}}^{{r}}, \ {\widehat{B}}_{\varvec{i},\varvec{p}}^{\varvec{r}}\) respectively. Here \(\varvec{r} {:}{=}(r_1,\dots ,r_d)\).

  • For univariate splines \({\widehat{B}}_{i,p}^r, \ p \ge 1, \ r \ge 0\) we have

    $$\begin{aligned} \partial _{\zeta } {\widehat{B}}_{i,p}^r(\zeta )&= \frac{p}{\xi _{i+p}-\xi _i}{\widehat{B}}_{i,p-1}^{r-1}(\zeta ) \nonumber \\&\quad + \frac{p}{\xi _{i+p+1}-\xi _i}{\widehat{B}}_{i+1,p-1}^{r-1}(\zeta ), \end{aligned}$$
    (11)

    with \({\widehat{B}}_{1,p-1}^{r-1}(\zeta ){:}{=}{\widehat{B}}_{n+1,p-1}^{r-1}(\zeta ) {:}{=}0\).

  • The support of the spline \({\widehat{B}}_{i,p}^r\) is part of the interval \([\xi _i,\xi _{i+p+1}]\).

The space spanned by all univariate splines \({\widehat{B}}_{i,p}^r\) corresponding to given knot vector and degree p and global regularity r is denoted by

$$\begin{aligned} S_p^r {:}{=}span \{ {\widehat{B}}_{i,p}^r \ | \ i = 1,\dots , n \}. \end{aligned}$$

Later, to have more flexibility it could be useful to introduce a strictly positive weight function \(W = \sum _{{i}} w_{{i}} {\widehat{B}}_{{i},{p}}^{{r}} \in S^{r}_{p}\) and use NURBS functions \({\widehat{N}}_{{i},{p}}^{{r}} {:}{=}\frac{w_i \, {\widehat{B}}_{{i},{p}}^{{r}}}{W}\), the NURBS spaces \({N}_{p}^{r} {:}{=}\frac{1}{W} S_{p}^{r},\) respectively. Such weighted spline functions are needed for conic section parametrizations. For the multivariate case we just define the needed spaces as product spaces, e.g.

$$\begin{aligned} S_{p_1, \dots , p_d}^{r_1,\dots ,r_d} {:}{=}S_{p_1}^{r_1} \otimes \dots \otimes S_{p_d}^{r_d} = span \{{\widehat{B}}_{\varvec{i},\varvec{p}}^{\varvec{r}} \ | \ \varvec{i} \in {\textbf{I}} \}, \end{aligned}$$

provided proper univariate spaces.

To define discrete spaces in the computational domain \({\tilde{\Omega }}\) we require a parametrization mapping \({\textbf{F}} :{\widehat{\Omega }} {:}{=}(0,1)^d \rightarrow {\tilde{\Omega }} \subset {\mathbb {R}}^d\). The knots stored in the knot vector \(\varvec{\Xi }\), corresponding to the underlying splines, determine a mesh in the parametric domain \({\widehat{\Omega }}\), namely \({\widehat{M}} {:}{=}\{ K_{\varvec{j}}{:}{=}(\psi _{j_1}^1,\psi _{j_1+1}^1 ) \times \dots \times (\psi _{j_{d}}^{d},\psi _{j_{d}+1}^{d} ) \ | \ \varvec{j}=(j_1,\dots ,j_{d}), \ with \ 1 \le j_i <N_i\},\) and with \({\varvec{\Psi }}= \{\psi _1^1, \dots , \psi _{N_1}^1\} \times \dots \times \{\psi _1^{d}, \dots , \psi _{N_{d}}^{d}\}\) as the knot vector \({\varvec{\Xi }}\) without knot repetitions. The image of this mesh under the mapping \({\textbf{F}}\), i.e. \({\mathcal {M}} {:}{=}\{{{\textbf{F}}}(K) \ | \ K \in {\widehat{M}} \}\), gives us a mesh structure in the physical domain. Obviously, by inserting knots without changing the parametrization we can refine the mesh, which is known as h-refinement; see [1, 27]. For a mesh \({\mathcal {M}}\) we can define the global mesh size through \(h {:}{=}\max \{h_{{K}} \ | \ {K} \in {\widehat{M}} \},\) where for \({K} \in {\widehat{M}}\) we denote with \(h_{{K}} {:}{=}diam ({K})\) the element size and \({\widehat{M}}\) is the underlying parametric mesh.

The underlying concept of SB-IGA fits the fact that in CAD applications the computational domain is often described by means of its boundary. Furthermore, as discussed later the boundary representation is particularly suitable if trimming is considered.

As long as the region of interest is star-convex we can choose a scaling center \({\textbf{z}}_0 \in {\mathbb {R}}^d\) and the domain is then defined by a scaling of the boundary w.r.t. to \({\textbf{z}}_0\). In this article, we restrict ourselves to planar SB domains, and in view of isogeometric analysis we have some boundary NURBS curve \(\gamma (\zeta ) = \textstyle \sum _{i=1}{\textbf{C}}_i \ {\widehat{N}}_{i,p}^{r}(\zeta ), \ {\textbf{C}}_i \in {\mathbb {R}}^2\) and define the SB-parametrization of some \({\tilde{\Omega }}\) through

$$\begin{aligned} {\textbf{F}} :{\widehat{\Omega }} {:}{=}(0,1)^2 \rightarrow {\tilde{\Omega }} \, \ (\zeta ,\xi ) \mapsto \xi \ \big ( \gamma (\zeta )-{\textbf{z}}_0\big )+{\textbf{z}}_0 \ \ \end{aligned}$$

(compare Fig. 1).

Fig. 1
figure 1

Within SB-IGA a boundary description is used, where a well-chosen scaling center is required

Remark 1

In the considerations below it is allowed to replace the prefactor \(\xi\) by a general degree 1 polynomial \(c_1 \xi + c_2, \ c_1 >0, \ c_2\ge 0\), i.e. no difficulties arise. This might be useful in some situations.

By the linearity w.r.t. the second parameter \(\xi\) we can assume for \({\tilde{\Omega }} \subset {\mathbb {R}}^2\) that \({\textbf{F}} \in \big [ {N}_p^r \otimes S_{p}^r \big ]^2\). In particular, the weight function depends only on \(\zeta\).

Fig. 2
figure 2

The mesh and corresponding control net for a simple SB parametrization. Here we have \(p=3, r=1\) for the underlying NURBS definition

We suppose that there are control points \({\textbf{C}}_{i,j} \in {\mathbb {R}}^2\) associated to the NURBS \((\zeta ,\xi ) \mapsto {\widehat{N}}_{i,p}^r(\zeta ) {\widehat{B}}_{j,p}^r(\xi ) \in N_p^r \otimes S_p^r\) which define \({\textbf{F}}\), namely

$$\begin{aligned} {\textbf{F}}(\zeta ,\xi ) = \sum _{i=1}^{n_1} \sum _{j=1}^{n_2} {\textbf{C}}_{i,j} \ {\widehat{N}}_{i,p}^r(\zeta ) {\widehat{B}}_{j,p}^r(\xi ). \end{aligned}$$

For simplification, we assume equal degree and regularity w.r.t. each coordinate direction. Due to the SB ansatz, we obtain in the physical domain \({\tilde{\Omega }}\) layers of control points and it is \({\textbf{C}}_{1,1}={\textbf{C}}_{2,1}= \dots = {\textbf{C}}_{n_1,1}\); cf. Figure 2. The isogeometric spaces utilized for discretization methods are defined as the push-forwards of the NURBS, namely

$$\begin{aligned} {\mathcal {V}}_h= {\mathcal {V}}_h(r,p) {:}{=}\{ {\hat{\phi }} \circ {\textbf{F}}^{-1} \ | \ {\hat{\phi }} \in N_{p}^r \otimes {S}_p^r \}. \end{aligned}$$

In particular, we suppose the existence of an inverse mapping on the interior of \({\tilde{\Omega }}\). If the domain boundary \(\partial \Omega\) is composed of different curves \(\gamma ^{(k)}\), one defines parametrizations for each curve as written above and we get a multi-patch geometry; see Fig. 3. To be more precise, for a n-patch geometry we have

$$\begin{aligned}&\bigcup _{m=1,\dots ,n} \overline{{\tilde{\Omega }}_{m}} = \overline{{\tilde{\Omega }}}, \ \ \ {\tilde{\Omega }}_k \cap {\tilde{\Omega }}_l = \emptyset \ if \ k \ne l, \ \ \nonumber \\&{\textbf{F}}_m :{\widehat{\Omega }} \rightarrow {\tilde{\Omega }}_m, \ {\textbf{F}}_m \in \big [N_{p}^r \otimes {S}_p^r \big ]^2 \ \end{aligned}$$
(12)

and \({\textbf{F}}_m\) are SB parametrizations. IGA spaces in the multi-patch framework are straight-forwardly defined as

$$\begin{aligned} {\mathcal {V}}^M_{h} {:}{=}\{ \phi :{\tilde{\Omega }} \rightarrow {\mathbb {R}}\ | \phi _{|{\tilde{\Omega }}_m} \in {\mathcal {V}}_h^{(m)}, \ \forall m \}, \end{aligned}$$

where \({\mathcal {V}}_h^{(m)}\) denotes the IGA space corresponding to the m-th patch, to \({\textbf{F}}_m\), respectively. If the boundary curves do not meet \(G^1\) but high global regularity is necessary, then the coupling is an issue. For all the patch coupling considerations we suppose the next assumption.

Assumption 1

(Regular patch coupling)

  • In each patch we use the NURBS and B-splines with the same degree p and regularity \(r>0\). Furthermore, the \(\varvec{F}_m\) are \(C^1\) in the interior of each patch with \(C^1\)-regular inverse.

  • The control points at interfaces match, i.e. the control points of the meeting patches coincide along the interface.

Thus, it is justified to write for the set of parametric basis functions in the m-patch

$$\begin{aligned} \{ {\widehat{N}}_{i,p}^r \cdot {\widehat{B}}_{j,p}^r \ | \ 1 \le i \le n_1^{(m)}, \ 1 \le j \le n_2\}, \end{aligned}$$

for proper \(n_1^{(m)}, \ n_2 \in {\mathbb {N}}_{>1}.\)

Below we look at the \(C^1\) coupling of such SB-IGA patches, i.e. face spaces of the form

$$\begin{aligned} {\mathcal {V}}_h^{M,1} \subset {\mathcal {V}}_h^{M} \cap C^1({\tilde{\Omega }}), \end{aligned}$$
(13)

where the singularity of the \({\textbf{F}}_m\) at \({\textbf{z}}_0\) requires a special attention.

Fig. 3
figure 3

The boundary can be determined by the concatenation of several curves. In this situation the patch-wise defined discrete function spaces have to be coupled in order to obtain the desired global smoothness

4 From planar SB-IGA to KL shells

The appearance of second derivatives in the variational formulation (4b) for the Kirchhoff–Love shell model requires a proper choice of the test and ansatz spaces for the computation of the shell displacements. An important aspect is the representation of the shell via a middle surface which reduces the shell formulation to a 2D problem w.r.t. the parametric coordinates. We exploit this fact by using \(C^1\)-regular mappings in the parametric domain to express the shell configuration.

Fig. 4
figure 4

Our shell middle surface is parametrized by some mapping \({\textbf{R}}\). We assume in next sections that the domain \({\tilde{\Omega }}\) of this \({\textbf{R}}\) is given as a SB multi-patch domain

To be more precise, the basic idea for the KL-shell within SB-IGA framework is as follows. We express the initial shell configuration as well as the deformation of the shell utilizing the coupled test functions defined on the parametric domain \({\tilde{\Omega }},\) where we suppose \(\overline{{\tilde{\Omega }}}= \overline{\cup _m {\tilde{\Omega }}_m}\) to be given as a multi-patch SB-IGA geometry. On the patches \({\tilde{\Omega }}_m\) in turn we can introduce basis functions by means of the standard push-forwards. This means our shell middle-surface can be described by

$$\begin{aligned} {\textbf{R}} :{\tilde{\Omega }} \rightarrow \Omega , \end{aligned}$$

with

$$\begin{aligned} {\textbf{R}}^m = \sum _{i,j} {\textbf{P}}^{(m)}_{i,j} \big [ {\widehat{N}}_{i,p}^r \cdot {\widehat{B}}_{j,p}^r \big ] \circ {{\textbf{F}}}_m^{-1}, \ \ {\textbf{R}}^m={\textbf{R}}_{|{\tilde{\Omega }}_m} \end{aligned}$$
(14)

for suitable control points \({\textbf{P}}^{(m)}_{i,j} \in {\mathbb {R}}^3\); see Fig. 4. The advantage of such an approach is clear, namely coupling in the planar domain \({\tilde{\Omega }}\) is easier than a strong \(C^1\) coupling of NURBS surface patches in 3D. And the restriction to the special class of SB domains \({\tilde{\Omega }}\) gets useful if trimmed shells are considered.

Assumption 2

The initial shell configuration is \(C^1\) smooth in a strong sense. Further, we assume that the shell deformations can be expressed with \(C^1\) mappings. In particular, we do not consider shells with kinks or deformations that lead to non-smooth shell configurations.

Summarising, it is enough to introduce globally \(C^1\) basis functions on \({\tilde{\Omega }}\) to obtain test and ansatz functions for the Kirchhoff–Love shell model.

The coupling of scalar SB-IGA spaces in planar domains is part of the next section. A component-wise generalization to compute shell displacements is clear and will not be addressed separately.

4.1 Planar SB-IGA with \(C^1\) coupling

Fig. 5
figure 5

A simple two-patch SB geometry

We explain the procedure of how to get \(C^1\) basis functions in the two-patch situation as shown in Fig.  5 since a generalization to more patches is straightforward. According to the notation from the previous section and in view of isogeometric analysis we define the uncoupled basis functions on \(\overline{{\tilde{\Omega }}}= \overline{{\tilde{\Omega }}_1 \cup {\tilde{\Omega }}_2}\)

$$\begin{aligned}{} & {} {\mathcal {B}} {:}{=}\bigcup _m \{ \phi _{ij}^{(m)} \ | \ i=1, \dots , n_1^{(m)}, \ j=1,\dots ,n_2\}, \ \ with \ \\{} & {} \phi _{ij}^{(m)} \circ {\textbf{F}}_m = {\widehat{N}}_{i,p}^r \cdot {\widehat{B}}_{j,p}^r. \end{aligned}$$

Above we extend the basis functions to the whole \({\tilde{\Omega }}\) by setting them to zero on the remaining patches. To obtain the necessary global \(C^1\) smoothness we change the basis \({\mathcal {B}}\) according to the subsequent steps.

4.1.1 Remove basis functions near the scaling center

First, we remove in each patch all parametric and thus physical basis functions which are associated to \({\widehat{N}}_{i,p}^r \cdot {\widehat{B}}_{j,p}^r\) with \(j<3\). This means we consider the modified basis

$$\begin{aligned} {\mathcal {B}}^{'} {:}{=}\bigcup _m \{ \phi _{ij}^{(m)} \ | \ i=1, \dots , n_1^{(m)}, \ j=3,\dots ,n_2\}. \end{aligned}$$

As a consequence, we see directly that the pull-backs of the remaining basis functions are elements of \(C^0(\overline{{\widehat{\Omega }}})\), i.e. we have a well-defined value 0 in the singular point \({\textbf{z}}_0\). Further, it can be easily verified that the pullbacks onto the parametric domain define mappings \(C^1(\overline{{\widehat{\Omega }}})\). Indeed, an application of the chain rule implies vanishing derivatives of the physical basis functions in the scaling center. For this purpose assume w.l.o.g. \({\textbf{z}}_0 = \varvec{0}, \ {\textbf{F}}(\zeta , \xi ) = \xi \ \gamma (\zeta ), \ \gamma = (\gamma _1,\gamma _2)^T\) and let

$$\begin{aligned} {\hat{\phi }} \in span \{ {\widehat{N}}_{i,p}^r \cdot {\widehat{B}}_{j,p}^r \ | \ j\ge 3, r \ge 1\}, \end{aligned}$$

i.e. we have a \(C^1\) function with \({\hat{\phi }}= \partial _{\xi }{\hat{\phi }}= \partial _{\zeta }{\hat{\phi }} =0\) for \(\xi =0\).

Set \(\phi (\theta ^1,\theta ^2) {:}{=}{\hat{\phi }} \circ {\textbf{F}}^{-1}(\theta ^1,\theta ^2)\) then, with \((\theta ^1,\theta ^2)= {\textbf{F}}(\zeta ,\xi )\) it is

$$\begin{aligned} \begin{bmatrix} {\partial }_{\zeta } {\hat{\phi }}(\zeta ,\xi ) \\ \partial _{\xi } {\hat{\phi }}(\zeta ,\xi ) \end{bmatrix} = \begin{bmatrix} \xi {\partial }_{\zeta }\gamma _1(\zeta ) &{} \xi {\partial }_{\zeta }\gamma _2(\zeta ) \\ \gamma _1(\zeta ) &{} \gamma _2(\zeta ) \end{bmatrix} \begin{bmatrix} \partial _{\theta ^1} \phi (\theta ^1,\theta ^2) \\ \partial _{\theta ^2} \phi (\theta ^1,\theta ^2) \end{bmatrix}. \end{aligned}$$
(15)

Below we use the abbreviation

$$\begin{aligned} d(\zeta ) {:}{=}\big ({\partial }_{\zeta }\gamma _1(\zeta ) \ \gamma _2(\zeta ) - {\partial }_{\zeta }\gamma _2(\zeta )\gamma _1(\zeta )\big ), \end{aligned}$$

and we have \(d(\zeta ) \ne 0\) due to the assumed invertibility of \({\textbf{F}}\). Hence, it is

$$\begin{aligned} \begin{bmatrix} \partial _{\theta ^1} \phi (\theta ^1,\theta ^2)\\ \partial _{\theta ^2} \phi (\theta ^1,\theta ^2) \end{bmatrix} = \frac{1}{\xi \ d(\zeta )} \begin{bmatrix} \gamma _2(\zeta ) &{} -\xi {\partial }_{\zeta }\gamma _2(\zeta ) \\ -\gamma _1(\zeta ) &{} \xi {\partial }_{\zeta }\gamma _1(\zeta ) \end{bmatrix} \begin{bmatrix} {\partial }_{\zeta } {\hat{\phi }} (\zeta ,\xi )\\ \partial _{\xi } {\hat{\phi }}(\zeta ,\xi ) \end{bmatrix}. \end{aligned}$$
(16)

By linearity and the definition of the B-spline basis functions and the assumption

\({{\hat{\phi }} = \partial _{\xi }{\hat{\phi }}= \partial _{\zeta }{\hat{\phi }} =0, \ for \ \xi =0 }\), we can w.l.o.g. suppose \({\hat{\phi }} (\zeta ,\xi ) = {\widehat{N}}(\zeta ) \ \xi ^2,\) for a suitable \({\widehat{N}}\). Note \({\widehat{B}}_{j,p}^r(\xi ) \in {\mathcal {O}}(\xi ^2)\) for \(\xi \rightarrow 0\) if \(j\ge 3\). For this case we study the derivatives when \(\xi \rightarrow 0\). With (16) one sees

$$\begin{aligned} \partial _{\theta ^1} \phi (\theta ^1,\theta ^2)&= \frac{{\partial }_{\zeta } {\widehat{N}}(\zeta ) \ \xi ^2}{\xi \ d(\zeta )} \ \gamma _2(\zeta )\nonumber \\&\quad - 2\frac{\xi \ {\widehat{N}}(\zeta ) \ \xi }{\xi \ d(\zeta )} \ {\partial }_{\zeta }\gamma _2(\zeta ) \overset{ \xi \rightarrow 0}{\longrightarrow }\ \ 0 . \end{aligned}$$
(17)

But this implies directly that \(\phi (\theta ^1,\theta ^2)\) has a well-defined \(\theta ^1\)-derivative in the scaling center, namely \(\partial _{\theta ^1} \phi = 0\) in \({\textbf{z}}_0\). Analogously one gets the well-defined derivative \(\partial _{\theta ^2} \phi ({\textbf{z}}_0) = 0\).

With this first basis modification step we avoid the problematic part near the scaling center.

4.1.2 Add scaling center basis functions

To preserve the approximation ability of SB-IGA test functions, we certainly have to introduce new test functions in the physical domain that determine the function value and derivatives at the scaling center. In the planar case, three additional test functions are sufficient, where we exploit the iso-parametric paradigm to define preliminary test functions \(\phi _{i,sc} \in C^0(\Omega )\) with

$$\begin{aligned} \phi _{1,sc}({\textbf{z}}_0)&= 1, \ \ \partial _{\theta ^1}\phi _{1,sc}({\textbf{z}}_0) = \partial _{\theta ^2}\phi _{1,sc}({\textbf{z}}_0)= 0, \\ \phi _{2,sc}({\textbf{z}}_0)&= 0, \ \ \partial _{\theta ^1}\phi _{2,sc}({\textbf{z}}_0) = 1, \ \ \partial _{\theta ^2}\phi _{2,sc}({\textbf{z}}_0)= 0, \\ \phi _{3,sc}({\textbf{z}}_0)&= 0, \ \ \partial _{\theta ^1}\phi _{3,sc}({\textbf{z}}_0) = 0, \ \ \partial _{\theta ^2}\phi _{3,sc}({\textbf{z}}_0)= 1. \end{aligned}$$

Latter requirements can be easily satisfied if we use the entries of the geometry control points as coefficients for the parametric pendants \({\hat{\phi }}_{i,sc}\). To be more precise, if we have \({\textbf{F}}_m = \sum _{j=1}^{n_2} \sum _{i=1}^{n_1^{(m)}} {\textbf{C}}_{i,j}^{(m)} {\widehat{N}}_{i,p}^r \cdot {\widehat{B}}_{j,p}^r,\) then we set

$$\begin{aligned} {\hat{\phi }}_{1,sc}^{(m)}&{:}{=}\sum _{j=1}^{p+1}\sum _{i=1}^{n_1^{(m)}} {\widehat{N}}_{i,p}^r \cdot {\widehat{B}}_{j,p}^r, \end{aligned}$$
(18)
$$\begin{aligned} {\hat{\phi }}_{2,sc}^{(m)}&{:}{=}\sum _{j=1}^{p+1}\sum _{i=1}^{n_1^{(m)}} ({\textbf{C}}_{i,j}^{(m)})_1 \ {\widehat{N}}_{i,p}^r \cdot {\widehat{B}}_{j,p}^r, \end{aligned}$$
(19)
$$\begin{aligned} {\hat{\phi }}_{3,sc}^{(m)}&{:}{=}\sum _{j=1}^{p+1}\sum _{i=1}^{n_1^{(m)}} ({\textbf{C}}_{i,j}^{(m)})_2 \ {\widehat{N}}_{i,p}^r \cdot {\widehat{B}}_{j,p}^r. \end{aligned}$$
(20)

And then the \(\phi _{i,sc}\) are determined on \({\tilde{\Omega }}\) via

$$\begin{aligned} (\phi _{i,sc})_{| {\tilde{\Omega }}_m }\circ {\textbf{F}}_m= {\hat{\phi }}_{i,sc}^{(m)}. \end{aligned}$$

By the properties of B-splines we see directly \({\phi }_{1,sc}^{(m)}=1, {\phi }_{2,sc}^{(m)}=\theta ^1, \ {\phi }_{3,sc}^{(m)}=\theta ^2\) in a neighborhood of \({\textbf{z}}_0\). In other words, we can choose the latter three functions for the determination of values and derivatives at \({\textbf{z}}_0\), i.e. we add them to the set of basis functions used for the coupling step. Hence now we have the new set of basis functions

$$\begin{aligned} {\mathcal {B}}^{''} {:}{=}{\mathcal {B}}^{'} \cup \{ \phi _{1,sc}, \ \phi _{2,sc}, \ \phi _{3,sc}\}. \end{aligned}$$

The three new test functions are continuous since we assume that the patches match continuously. And we note that the \(\phi _{i,sc}\) are only defined once for a scaling center. For example, in Fig. 6, the scaling center test functions for a three-patch case are shown.

Fig. 6
figure 6

An illustration of the scaling center basis functions for a planar 3-patch example. Underlying (patch-wise) degree and regularity are \(p=3, \ r=1\)

4.1.3 The coupling step

For the functions in \({\mathcal {B}}^{''}\), we now apply the needed coupling step to obtain the global \(C^1\) regularity. This coupling is in turn composed of two simple substeps which correspond to the procedure used in [17].

Namely, we first couple the basis functions from \({\mathcal {B}}^{''}\) in a \(C^0\) manner and observe that this is easily achieved due to the regular patch coupling Assumption 1. So we have again a new basis \({\mathcal {B}}^{'''} = {\mathcal {B}}^{''} \cap C^0(\overline{{\tilde{\Omega }}})\). Looking at the interface \(\Gamma\) between two patches, e.g. like in Fig. 5, we have for \(\phi \in {\mathcal {B}}^{'''}\) a well-defined directional derivative in the direction of the interface. Thus it is enough to find linear combinations \(\phi\) of basis functions in \({\mathcal {B}}^{'''}\) that have continuous directional derivatives \(\nabla \phi \cdot \varvec{n}_{\Gamma },\) where \(\varvec{n}_{\Gamma }\) is a fixed normal vector to the interface. Consequently, we get the \(C^1\) coupled basis functions by the null space of the derivative jump matrix \(M_{\Gamma },\) where

$$\begin{aligned} (M_{\Gamma })_{kl} {:}{=}\int _{\Gamma } [[\nabla \phi _k \cdot \varvec{n}_{\Gamma }]] \,[[\nabla \phi _l \cdot \varvec{n}_{\Gamma }]] \, ds, \ \phi _k, \phi _l \in {\mathcal {B}}^{'''} \end{aligned}$$

with [[g]] standing for the jump value of the g across the interface and above we assume \({\mathcal {B}}^{'''} {:}{=}\{\phi _1, \ \phi _2, \dots \}\). Straightforwardly this null space computation is adapted if several interfaces are involved.

Finally, we have with the basis of the null space of \(M_{\Gamma }\) our \(C^1\) smooth basis functions, i.e. our desired coupled basis \({\mathcal {B}}^1 {:}{=}{\mathcal {B}}^{'''} \cap C^1({\tilde{\Omega }})\). We denote the space spanned by the coupled basis functions as

$$\begin{aligned} {\mathcal {V}}_h^{M,1} = span \{ \phi \ | \phi \in {\mathcal {B}}^{1} \}. \end{aligned}$$

Remark 2

The steps to get smooth basis functions above can be implemented directly. Even if the computation of the jump matrix for the different matrices seems problematic, we get well-defined integral values since the evaluations are only done in quadrature points away from the singular point. Besides, we note that all the steps from above reduce to a suitable transformation matrix \(T \in {\mathbb {R}}^{N \times N_1}\) expressing the coupled basis functions w.r.t. the original basis. In particular \(N_1 = \# {\mathcal {B}}^1, \ N = \# {\mathcal {B}}\).

After we showed the possibility to obtain \(C^1\) mappings in the planar SB context, an obvious question arises. Do the coupled functions yield a reasonable approximation behavior if we utilize them in numerical applications? It is well-known that a strong \(C^1\) coupling might lead to \(C^1\) locking, i.e. the loss or worsening of approximation abilities. Admittedly, we do not give here a strict proof, of whether the \(C^1\) coupling for planar SB domains ensures optimal convergence orders. However, we want to outline why we expect the latter. Numerical tests confirm this conjecture. Following the results from [17], we get optimal convergence orders in the planar multi-patch case, if we restrict ourselves to so-called analysis-suitable \(G^1\) (AS-\(G^1\))parametrizations and B-spline basis functions with \(p>r+1>1\). The mentioned parametrizations class is defined for the standard two-patch case, cf.  Fig. 7, as follows.

Definition 1

In view of Fig. 7 we set \({\textbf{F}}^{(R)}={\textbf{F}}_2, \ {\textbf{F}}^{(L)} = {\textbf{F}}_1(\cdot +1,\cdot )\). The global parametrization \(\tilde{{\textbf{F}}},\) i.e. \(\tilde{{\textbf{F}}}_{|{\widehat{\Omega }}^{(S)}}={\textbf{F}}^{(S)}, \ S \in \{L,R\}\), is analysis-suitable \(G^1\) if there are polynomial functions \(\alpha ^{(S)}, \ \beta ^{(S)} :[0,1] \rightarrow {\mathbb {R}}\) of degree at most 1 s.t.

$$\begin{aligned}&\alpha ^{(R)}(\xi ) \, \partial _{\zeta }{\textbf{F}}^{(L)}(0,\xi )- \alpha ^{(L)}(\xi ) \partial _{\zeta }{\textbf{F}}^{(R)}(0,\xi )\nonumber \\&\quad + \beta (\xi ) \, \partial _{\xi }{\textbf{F}}^{(L)}(0,\xi ) = \varvec{0}, \end{aligned}$$
(21)

with \(\beta = \alpha ^{(L)} \, \beta ^{(R)} - \alpha ^{(R)} \, \beta ^{(L)}\). Further we require \(\tilde{{\textbf{F}}} \in C^0( \overline{{\widehat{\Omega }}^{(L)} \cup {\widehat{\Omega }}^{(R)}}; {\mathbb {R}}^2),\) and that \(\tilde{{\textbf{F}}}^{(S)} \in C^1(\overline{{\widehat{\Omega }}^{(S)}}; {\mathbb {R}}^2)\) is invertible.

We call then the complete multi-patch parametrization analysis-suitable \(G^1\), if the latter condition is fulfilled for each interface.

Fig. 7
figure 7

A standard planar two-patch geometry

With the next lemma we relate the introduced AS-\(G^1\) geometries to the planar SB ansatz.

Lemma 1

(SB-IGA patch coupling as quasi AS-\(G^1\)) The planar SB parametrizations fulfill the condition in (21) for proper polynomials \(\alpha ^{(S)}, \ \beta ^{(S)}\) of degree \(\le 1\).

Proof

This can be shown by simple calculations. But it is also clear by the observation that the SB-parametrizations can be approximated in a neighbourhood of an interface by bilinear parametrizations. This can can be exemplified if w.l.o.g. \({\textbf{F}}(\zeta ,\xi ) = \xi \gamma (\zeta ),\) where the interface corresponds to the points with \(\zeta =0\). Then it is

$$\begin{aligned} {\textbf{F}}(\zeta ,\xi ) = \xi \gamma (0) + \xi \zeta \, \partial _{\zeta } \gamma (0)+ {\mathcal {O}}(\zeta ^2). \end{aligned}$$

But since bilinear parametrizations are AS-\(G^1\) as shown in [17], the assumption is clear. \(\square\)

Hence, if we are away from the singular point we get with the SB ansatz AS-\(G^1\) parametrizations. And for the approximation near the scaling center we added the scaling center basis functions \(\phi _{i,sc}\). This and Theorem 1 in [17] suggest the feasibility of SB-IGA for \(C^1\) coupling.

4.2 Generalization to non-star shaped and trimmed geometries

In this section, we shortly explain why the coupling from above can be generalized to more complicated geometries.

Up to now, the computational domain is considered to be star-shaped. However, assuming we can partition our domain into several star-shaped blocks, we can do the coupling as explained previously block-wise. The coupling between the different blocks can then be realized analogously and easily if the block interfaces are given by straight lines. Moreover, two patches from two blocks that meet at a straight interface meet w.l.o.g. as two bilinear parametrizations, see Fig. 8. But as already mentioned, the bilinear parametrizations are AS-\(G^1\) meaning we should not see \(C^1\) locking if \(p>r+1>1\).

Fig. 8
figure 8

A non-star-shaped domain which is divided into star-shaped subdomains that have non-curved interfaces. Such multi-patch structures are still suitable for a \(C^1\) coupling. If the interface between SB-param. with two different scaling centers is a straight line, then w.l.o.g. the patches meet as two bilinear patches and the param. is quasi AS-\(G^1\), i.e. AS-\(G^1\) except at the singular points

The mentioned natural approach to applying a preliminary partition step to handle more complicated geometries is convenient when considering trimmed planar domains. The trimming operation, i.e. the cut away of domain parts is a standard operation within the IGA community and standing to reason for the description of different geometries. Especially, when dealing with perforated domains trimming curves are adequate to determine the computational domain. The concept of trimming can be formally incorporated within planar SB-IGA. Namely, let us suppose an untrimmed domain \({\tilde{\Omega }}\) is defined as SB multi-patch domain. If a trimming curve \(\gamma _T\) defines which parts are omitted, we first compute the intersections between the trimming curve and the boundary curves of the untrimmed domain. First, we think of a non-interior curve, i.e. there are at least two intersections. After possible knot insertions, it is possible to represent all relevant boundary segments by new NURBS curves exactly. If the trimmed domain is not-star shaped we first partition the new domain into star-convex blocks and then choose suitable scaling centers. Otherwise, we choose directly a feasible scaling center.

If there is an interior trimming curve, we start with the partition step and then we detect the relevant boundary curves that are again inputs for the blocks-wise SB-parametrizations. Since the situation with an interior trimming curve is more interesting for us and the only one appearing in the numerics section later, we illustrate the proceeding for the latter case in the subsequent Fig. 9.

Fig. 9
figure 9

Here we see a trimming curve that would lead to a non-star domain. We can divide the trimmed domain into two star-shaped parts using a straight cut line

Before we come to numerical examples for the SB-IGA framework with \(C^1\) coupling, we briefly summarize the ideas for trimming in Algorithm 1.

figure a

After we discussed how we can obtain \(C^1\) basis functions on planar SB multi-patch domains, we exploit them below to compute approximations to the Kirchhoff–Love shell model.

5 Numerical examples

In the following, the presented formulation is checked on its consistency at first by a simple test as square flat shell. In the further, the example of the Scordelis–Lo roof, known from the so-called ’shell obstacle course’ is evaluated [29,30,31]. Moreover, the double curved hyperbolic paraboloid [32] is evaluated as it considers negative Gaussian curvature and is a highly challenging example. Besides, the example of the Scordelis–Lo roof and further examples are evaluated in terms of trimmed structures as they can be found in literature [3, 5, 33] and are especially suitable for the boundary representation. Conducting an h-refinement for all examples, the models are validated by error norms or the displacements at specific points on reference solutions obtained analytically or from the literature. We denote that we further use t as the thickness, E as the Young’s modulus, \(\nu\) as the Poisson’s ratio, and h as mesh size for the underlying mesh with 1/h equidistant subdivisions with respect to both parametric coordinate directions. The approach has been implemented using MATLAB 2022 [34] in combination with the open source package GeoPDEs [35]. It is specifically designed to solve partial differential equations in the context of isogeometric analysis. We use the model from above, namely basis function in the space \({\mathcal {V}}_h^{M,1}\) for each component. But we note that due to the specific boundary conditions we have to reduce the number of test functions at specific places.

5.1 Geometry approximation

The coupling of the basis functions for the Kirchhoff–Love shell is done in the parametric domain \({\tilde{\Omega }}\) and \({\textbf{R}}\) denotes the initial shell configuration parametrization. Sometimes the latter is not directly available in the form (14). Then, due to the special structure of SB-IGA, it is not clear how to choose in general the control points in order to represent the initial shell configuration in an exact manner, to obtain \({\textbf{R}}\) in the sense of (14), respectively. Thus we exploit the coupled \(C^1\)-smooth basis functions in the parametric domain to approximate the initial shell shape for the examples below. In this sense, we follow the isogeometric paradigm. To be more precise, if we state below the geometry mapping \({\textbf{R}}\), we use in the actual computations an approximated \({\textbf{R}}_{approx } \approx {\textbf{R}}\). Doing so, we use a \(L^2\)-projection onto the test function space to get \({\textbf{R}}_{approx }\). Although this is a naive geometry approximation, it gives us even for coarse meshes reasonable results. Furthermore, several geometries like the hyperbolic paraboloid shape can be still represented exactly, except of rounding errors; see Fig. 10 below.

Fig. 10
figure 10

Here we see the difference between the exact parametrization of the Scordelis–Lo roof with holes and the approximated parametrization mapping utilizing the coupled basis functions. To be more precise, the Euclidean norm difference \(|{\textbf{R}}_{approx }(\theta ^1,\theta ^2)- {\textbf{R}}(\theta ^1,\theta ^2)|\) is plotted, where the underlying meshes are displayed in Fig. 25 and Fig. 19. Even for relatively coarse meshes we see only small differences and the geometry errors can be assumed to be small

Furthermore, in principle, it is possible to use different NURBS for the initial geometry in order to have exact geometries. But, this requires more implementation effort due to the special form of the SB-IGA basis functions in view of quadrature rules. And on the other hand, we would leave in some sense the idea of iso-geometric analysis.

5.2 Smooth solution on a square shell

The first example considering the shell formulation is a flat shell of the square domain \(\Omega = [0,2]^2\) under a smoothly distributed load. It is dedicated to investigating the convergence rates of the approach. The parametric domain coincides with the physical domain in this example. The properties are \(E = 10^6\), \(\nu =0.1\) and correspondingly \(t = \left( 12(1-\nu ^2) /E\right) ^{1/3}\). The boundary \(\partial \Omega\) is fixed and a load g is applied as \(g_z = 4\pi ^4\sin (\pi x) \sin (\pi y)\), such that the analytical solution of the deformation is \(u_{z,ref}= \sin (\pi x) \sin (\pi y)\). The scaling center is placed in the middle of the structure and the mesh is evaluated for basis functions of degree \(p=3\), \(p=4\), and \(p=5\). An exemplary mesh for \(h=1/4\), \(p=3,r=1\) for each patch and a corresponding deformation plot is shown in Fig. 11.

Fig. 11
figure 11

Example of the smooth solution on a square shell. On the left, the underlying mesh of \(h=1/4\) is pictured. On the right side, the corresponding deformed structure is shown with a plot of the deformation magnitude of the problem for \(p=3\) and \(r = 1\)

The results of the computation are compared to the analytical solution in terms of the \(H^2\) seminorm and the \(L^2\) norm defined as

$$\begin{aligned} | {\textbf{u}} - {\textbf{u}}_h |_{H^2(\Omega )} \quad \text {for the} \, H^2\text {-error} \end{aligned}$$
(22)
$$\begin{aligned} || {\textbf{u}} - {\textbf{u}}_h ||_{L^2(\Omega )} \quad \text {for the} \, L^2\text {-error}. \end{aligned}$$
(23)

The convergence rates are shown in Fig. 12.

Fig. 12
figure 12

Convergence studies of the \(H^2\)-errors (left) and the \(L^2\)-errors (right) on the example of the smooth solution on a square shell and degrees of \(p = 3\), \(p = 4\) and \(p = 5\)

The convergence rates indicate for both error estimations optimal convergence rate \({\mathcal {O}}(h^{p-1})\) for the \(H^2\) seminorm and \({\mathcal {O}}(h^{p+1})\) for the \(L^2\) norm. The deviations for \(p=5\) might be caused by large condition numbers together with rounding errors.

5.3 Scordelis–Lo roof

The Scordelis–Lo roof is a well-known model described by [36]. It is a cylinder cutout of \(80^{\circ }\) with dimensions of radius \(R = 25\) and length \(L =50\). The thickness is \(t=0.25\) and the material parameters are \(E = 4.32\cdot 10^8\) and \(\nu = 0.0\). The structure is supported by rigid diaphragms at the curved edges and free at the straight edges. The Scordelis–Lo roof is investigated in three setups as they are the untrimmed structure, trimmed with an elliptic hole under gravity load, and trimmed with four holes under a single load. The untrimmed example is investigated to compare the boundary parametrization to standard IGA parametrizations. Further, the trimmed roofs are compared to numerical results obtained from the literature. The exact parametrization function is chosen to

$${\mathbf{R}}\left( {\theta ^{1} ,\theta ^{2} } \right) = \left[ {25\sin \left( {\pi \theta ^{1} \frac{4}{{9L_{{\tilde{\Omega },\theta ^{1} }} }}} \right)\quad \theta ^{2} \frac{{50}}{{L_{{\tilde{\Omega },\theta ^{2} }} }}\quad 25\cos \left( {\pi \theta ^{1} \frac{4}{{9L_{{\tilde{\Omega },\theta ^{1} }} }}} \right)} \right]^{T}$$
(24)

with \(L_{{\tilde{\Omega }},\theta ^1}\) and \(L_{{\tilde{\Omega }},\theta ^2}\) being the corresponding side length of \({\tilde{\Omega }}\) in each parametric direction.

5.3.1 Untrimmed Scordelis–Lo roof

At first, the untrimmed roof under a gravity load of \(g_z = 90\) per unit area is investigated and the reference solution is given as the vertical displacement at the midpoint of the straight, free edge as \(u_{ref} = 0.3024\) [29, 30]. Since the reference considers shear deformation which is not represented in Kirchhoff–Love shells, the reference solution herein refers to [6] with \(u_{ref}=0.3006\) in terms of the vertical deflection at the same point of interest. The parametric mesh, defined on the domain \({\tilde{\Omega }} = [-0.5,0.5],[-1,1]\), and the corresponding initial shell configuration are shown in Fig. 13. The parametric mesh considers an offset of the scaling center with \(\theta ^1_{off} = 0.2\) and \(\theta ^2_{off} = 0.1\) to show the generality of the formulation.

Fig. 13
figure 13

Parametric mesh and initial shell configuration of the Scordelis–Lo roof for \(h=1/2\)

The results of basis functions of degree \(p=3\), \(p=4\), and \(p=5\) are shown in Fig. 14 on the left side. Even though the scaling center is chosen in non-centered discretization, the results converge in a smooth way towards the reference solution. A comparison to a standard IGA computation of the Scordelis–Lo roof shows that the convergence of IGA-basis functions is at better results for fewer degrees of freedom. This is a natural consequence of the SB-IGA approach since four patches are coupled towards one scaling center in this example. This points out, that the SB-IGA formulation is not as computationally efficient as IGA for standard single-patch structures. However, the example shows a similar convergence rate for the IGA and the SB-IGA approach which validates the proposed method.

Fig. 14
figure 14

On the left side, the convergence studies of the displacement \(u_z\) at the middle of the straight edge with degrees of \(p = 3\), \(p = 4\), and \(p=5\) are shown. On the right side, the convergence rate is compared to the standard IGA discretization

5.3.2 Scordelis–Lo roof with one hole under gravity load

For the incorporation of trimmed geometries, the previously defined Scordelis–Lo roof is subjected to trimming in the parametric domain of one hole of radius \(r = 1\). Same as in the untrimmed roof, the structure is subjected to a gravity load of \(g_z = 90\) per unit area. A comparative solution of the vertical displacement at the midpoint of the straight, free edge as \(u_{ref} = -0.361078869965661\) is obtained by overkill solution of the method for a Kirchhoff–Love shell proposed in [5] with degree \(p=5\) and 62.456 active elements. The parametric mesh of domain \({\tilde{\Omega }} = [-4,4]^2\) and the initial shell configuration is shown in Fig. 15. The point of interest is marked in red in the figure.

Fig. 15
figure 15

Parametric mesh of the Scordelis–Lo roof with hole and the initial shell configuration of \(h=1/2\)

The results of the vertical deformation at the investigated point of the model with respect to the comparative solution in Fig. 16 show good agreement. Accurate solutions are obtained even from the initial mesh. A slight underestimation is visible for the converged results, however, the difference is less than \(0.5\%\) for \(n=6\) and \(p=5\). As the comparative solution is not an analytically obtained solution, but a numerically converged solution, we assume the slight deviation between the observed deformation values might come from the different trimming strategies. However, it shows the proper incorporation of trimming curves for the analysis. This is underlined by the deformation plot of \(u_z\) on the right side obtained with \(p=5\) and \(h=1/6\).

Fig. 16
figure 16

On the left side, the convergence study on of the Scordelis–Lo roof with one hole under gravity load is figured. On the right side a plot of the deformation component \(u_z\) is shown for a mesh of \(h=1/6\) and \(p=5\), \(r=1\)

5.3.3 Scordelis–Lo roof with four holes under single load

Further, the Scordelis–Lo roof is subjected to trimming in the parametric domain of four equally spaced holes of radius \(r = 0.5\). The loading is changed to a point load in the vertical direction in the center of the structure of \(F_z= 10^{-5}\). The example is shown in Fig. 17 with the trimming curves shown in red and the point load applied in the center in green.

Fig. 17
figure 17

Mesh and parametric representation of the Scordelis–Lo roof with four holes (\(h=1/2\))

The results of the model can be compared to deformation plots presented in [5, Fig. 11(a)], which proposes an IGA shell with adaptive refinement.  Figure 18 shows the deformed structure with the displacement in z-direction for the SB-IGA approach of \(p=3\), \(r = 1\) and \(h = 0.125\).

Fig. 18
figure 18

Deformed Scordelis–Lo roof with four holes with coloring of the z-displacement obtained for \(p=3\), \(h=1/6\), and \(r=1\)

The results point out that the approach derived herein is capable of computing the deformation for trimmed domains of shells. The deformation plot has its maximum and minimum at \(u_{z,min} \approx -3.3 \cdot 10^{-1}\) and \(u_{z,max} \approx 3.7 \cdot 10^{-1}\), respectively. These results are also obtained in [5]. Good agreement is visible on the whole domain including the area of the load application and the free edges.

5.4 Hyperbolic paraboloid

The model of the hyperbolic paraboloid is a saddle structure described in [32]. Besides its complexity due to the double-curved structure and the negative curvature, the problem is compared to the ASG\(^1\) approach for standard IGA multi-patches. The structure is clamped one-sided and loaded by a uniformly distributed load of \(g_z = -8000 \cdot t\). The properties are length \(L = 1\), Young’s modulus \(E=2\cdot 10^{11}\), Poisson’s ratio \(\nu = 0.3\) and thickness of \(t=1/1000\) and \(t = 1/100\). The exact parametrization function of both hyperbolic paraboloid shells is chosen as

$$\begin{aligned} {\textbf{R}}(\theta ^1,\theta ^2) = \left[ \theta ^1 \qquad \theta ^2 \qquad \left( \theta ^1\right) ^2-\left( \theta ^2\right) ^2 \right] ^T. \end{aligned}$$
(25)

The reference solution is obtained from [32] as the vertical deflection at the middle of the free, curved edge with \(u_{z,t=1/1000} = -0.0063941\) and \(u_{z,t=1/100} = -0.93137\cdot 10^{-4}\). The partition of the parametric mesh of domain \({\tilde{\Omega }} = [-0.5,0.5]^2\) and the initial shell configuration is shown in Fig. 19 with the clamped boundary highlighted in blue and the point of interest highlighted in red. The scaling center is placed with an offset in \(\theta ^2\)-direction as \(\theta ^2_{off} = -0.1\). This yields the possibility to have a higher mesh density towards the Dirichlet boundary conditions naturally enforced by moving the scaling center.

Fig. 19
figure 19

Mesh and parametric representation of the hyperbolic paraboloid. On the left, the parametric mesh for \(h=1/4\) is shown. On the right, the corresponding initial shell configuration is plotted. The clamped boundary is marked with a blue line and the point of interest for the evaluation is marked with a red dot in both figures

The results of the convergence study of both thicknesses are shown in Fig. 20. The computed results converge smoothly towards the reference solution for all polynomial orders of the basis functions. For the thin shell, the computation is converging less rapidly than for the thick shell.

Fig. 20
figure 20

Example of the hyperbolic paraboloid. On both sides the convergence studies for degrees of \(p=3\), \(p=4\), and \(p=5\) with \(r=1\) are shown for the thin shell (left) and the thick shell (right)

Fig. 21
figure 21

Comparison of the results from the proposed approach with the standard analysis-suitable \(G^1\) for Kirchhoff–Love shells proposed in [18] for a thickness of \(t= 1/100\) (left) and an exemplary deformation plot of the overall deformation u for \(p=3\) and \(h=1/24\) (right)

Further, the proposed approach is compared to the analysis-suitable \(G^1\) approach for standard IGA patches. Figure 21 shows a comparison of the results for the degree of \(p=3\) and \(p=4\). It is important to note, that the approach herein has a regularity of \(r=1\) for various degrees, while the compared approach has a regularity of \(r=p-2\). The comparison shows, that the Kirchhoff–Love shell in boundary representation seems to converge faster towards the reference solution than the approximate solutions from [18] utilizing non-degenerate IGA multi-patches.

5.5 Flat shell with multiple holes

To take the trimming more into account, a flat shell structure with an asymmetrical arrangement is evaluated following [33]. The model is presented in Fig. 22 with the parametric mesh and the corresponding deformation. The quadratic shell of side length \(L = 5\) and thickness \(t = 0.005\) is trimmed by 16 circular holes of radius \(r=0.025\) and clamped at all four sides. The material parameters are \(E = 8.736\cdot 10^{7}\) and \(\nu = 0.3\). The structure is loaded by a vertical load of \(g_z = \sin \left( \pi x \right) \cdot \sin \left( \pi y \right)\).

Fig. 22
figure 22

Parametric representation of the flat shell with multiple holes and an exemplary deformation plot with \(p=3\) and \(h=1/3\)

To compare the results to reference solutions from the literature [33], a normalization of the vertical deformation is done as

$$\begin{aligned} u_z^* = \frac{u_z D}{L^4}, \end{aligned}$$
(26)

with \(u_z\) as the computed deflection in z-direction, D the flexural stiffness and L the side length of the shell. Figure 23 shows the results of the proposed approach for the deformation \(u_z\) and to compare the results to the reference solution from the literature, the results are evaluated in terms of a normalization. We refer to the reference solution of an SB-FEM plate formulation with scaling in the thickness direction and semi-analytic solution procedure presented in [33, Figure 29 (a)]. Good agreement is visible for the proposed approach considering maximal normalized deflection and the contour lines.

Fig. 23
figure 23

Left, the deformation \(u_z\) is shown for the flat shall with multiple holes. Right, the normalized vertical displacements \(u_z^*\) of the proposed method look similar to results by an SBFEM formulation using normal scaling presented in [33]

5.6 Violin

In the last example, we utilize the boundary representation in the most sophisticated extent by evaluating a sketch of a violin following the idea of [3] with modifications for the boundary conditions and the parametrization functions. The violin in this contribution is clamped at the whole outer boundary and trimmed by two so-called "F-holes". It is loaded by a constant vertical dead load of \(g_z = 0.05\) per unit area. The parameters are \(t=0.25\), \(E = 10^5\) and \(\nu = 0.1\). The underlying parametrization function of the violin is

$$\begin{aligned} {\textbf{R}}(\theta ^1, \theta ^2) = \left[ \theta ^1 \qquad \theta ^2 \qquad 2\exp \left( -0.0025\left( \theta ^1\right) ^2 \right) \cdot 2\exp \left( -0.01\left( \theta ^2\right) ^2 \right) \right] . \end{aligned}$$
(27)

The parametric mesh and the corresponding initial shell configuration are shown in Fig. 24. The advantages of the scaled boundary approach are especially visible due to the various shapes of the SB-patches including triangles, quadrilaterals, and pentagons. Further, the outer boundary curve of the violin contains vertices that are easily included in the computational domain. Note, that the trimming curves of the "F-holes" are considered as part of the boundary. Even though there is no reference solution, the results in Fig. 25 seem reasonable as the deformation is symmetric in the y-axis, and the boundary conditions are fulfilled.

Fig. 24
figure 24

Parametric representation and initial shell configuration of the violin. On the left, the parametric mesh for \(h=1/2\) is shown. On the right, the corresponding initial shell configuration is shown. The violin is clamped at the outer boundary in all directions including rotations

Fig. 25
figure 25

Deformation plot of the proposed approach for a violin with \(p=3\) and \(h=1/2\)

6 Conclusions

In this contribution, a Kirchhoff–Love shell was derived in the framework of scaled boundary isogeometric analysis. To ensure \(C^1\)-continuity across patches, a coupling of the scaled boundary geometries was applied that fits the concept of analysis-suitable \(G^1\) parametrizations from [17] and a special treatment of the basis functions in the vicinity of the scaling center was implemented. The benefits of the boundary representation technique are pointed out by the incorporation of trimming curves as part of the geometry. The shell formulation is at first tested in general against optimal convergence rates of the \(H^2\) seminorm and the \(L^2\) norm. Further, a comparison to the Kirchhoff–Love shell proposed by [6] and in the terms of multi-patch structures [18] is done. The application of trimming is presented in several examples and good agreement with examples from the literature is obtained. The method is especially powerful when it comes to multi-patch geometries that cannot easily be described by a single IGA patch which is outlined by an example of a violin structure with trimmed F-holes.

In further work, an exact representation of the shells in the physical domain is pending. A procedure to adjust the planar domain and the corresponding parametrization according to the physical domain will improve the applicability of the approach. Besides, the formulation of the Kirchhoff–Love shell may be extended to geometric and material nonlinearity to show the formulations’ power not only for the linear case but to make it applicable to more advanced shell problems including buckling or plastic deformations.