1. Introduction
A wide range of applications of IGA in the fields of linear elasticity, vibration, elastodynamics, nonlinear problems, incompressible solids and fluid mechanics are presented in [
1], which can be considered a fundamental milestone of this method. Isogeometric analysis is a relatively new method for problem-solving. Since IGA uses the same basic functions in the creation of the geometry and in the expression of physical tensor quantities such as displacements, temperature, etc., it reduces the time to perform the simulation. Which is an advantage over FEM. NURBS allows the use of higher-order basis functions, thus increasing the accuracy of the solution. This is mainly due to the ability to create arbitrary shapes, including perfect circles. Of course, even with this method, one can encounter “refinement” which serves to increase the flexibility of NURBS. All this knowledge is perfectly suited to working with plates of different shapes, or with any shapes of shells. Time savings are obtained by not having to create new geometry by meshing. IGA is nowadays a very accurate method for analysing a wide range of problems.
It should be noted that there are several programs where surfaces can be created using NURBS. Mostly these are preprocessors only, with the exception of MATLAB and Rhinoceros 3D after downloading add-ons. Several of these are described in [
2].
Mention should be made of the work [
3], which is one of the few works that provides a comprehensive tutorial for the creation of NURBS surfaces and at the same time provides the basis for IGA of plates and shells in MATLAB. This work, like the work of [
1], has been a source of knowledge for the understanding of Bézier curves and surfaces, B-splines and their special variant NURBS.
In [
4], one can take a closer look at the possibility of creating a model that is composed of multiple “patches”. Additionally described are hierarchical and parametric shell models, which have different numbers of parameters depending on the desire to achieve the most accurate result. The emergence of the “locking” phenomenon is also described in detail and can be encountered in [
5]. Shells and plates represent the basic structural elements. They are three-dimensional objects where one dimension is smaller than the remaining two. Due to their curvature, shells are able to carry transverse loads and allow for optimal material utilization. Shells and their behaviour have been a very common object of reflection throughout history, and many theories have been developed to describe their behaviour more or less accurately. Among the best-known shell theories are the Byrne relations, the Love–Timoshenko relations, the Reissner–Naghdi relations, etc. For boards, the Kirchhoff–Love theory, the Reissner–Mindlin theory, the Reissner–Stein theory, and many others have arisen. Plates are a special case of shells. To understand the behaviour of shells, we have relied on the literature [
6,
7,
8]. For plates, we have focused mainly on the work of [
8], as it provides a more than sufficient basis for understanding the plate problem.
When comparing FEA with IGA, it is worth pointing out the works of [
9,
10,
11,
12], which represent a very rich source of information for understanding FEA. Only then can the capabilities and properties of NURBS elements be fully appreciated.
2. Current Status of the Issue
Since 2005, many papers have been published on the topic of IGA. In this work, the contribution of predecessors who have used IGA for various shell, slab or volume problems cannot be avoided. Works that have used FEM and other, similar methods for shell analysis have also found a place here.
Among the interesting methods developed from IGA is the isogeometric mesh-free collocation approach. In [
13] it was used for static, vibration and stability analysis of a laminate composite. It is a promising alternative to the Galerkin method. The collocation method in the isogeometric analysis is used to reduce the computational time and increase the convergence rate. In [
14], the authors focused on the stabilized space–time formulation for linear and nonlinear elastodynamics. In this work, they set two objectives. The first was to introduce stabilized weak formulations in the linear and nonlinear context. The second was the use of the Galerkin scheme in space and time with higher order and higher continuity of the basis function. To express the numerical performance of this problem, this method is applied to typical shock or vibration problems that are commonly solved in elastodynamics. The current trend is to reduce the time required for the simulation, and this has not been avoided in the solution of the problems associated with the rolling wheel [
15]. Current numerical methods provide an opportunity to understand this complex phenomenon. Of the many approaches to solving such a problem, FEM is the most widely used in engineering practice. IGA, in turn, provides an accurate and more efficient geometric description of the body. B-splines have been used to describe the wheel, the continuity of the geometry and the array of variables. The high degree of model continuity allows the analysis to be less sensitive to discretization. When compared with FEM, a difference can be noticed at this point.
At present, the FCP is at a very high level. It allows to solve even nonlinear problems, see [
16]. The novelty in this work is a family of shell finite elements developed for geometrically nonlinear tube bending analysis. The first Piola–Kirchhoff stress tensor and the conjugate gradient of the virtual displacement field are introduced in the framework of the virtual work principle. The constitutive description is based on the Saint Venant–Kirchhoff model. More recent works include [
17]. In it, a new quadrilateral element for doubly curved laminate composite shells is presented. Mindlin’s shell theory, which includes von Kármán type nonlinearities, was used in the formulation of the governing equations. The publication [
18] describes the development of finite element matrices for shell and plate elements. The authors concluded that for FEM, the formulations between plates and 2D solids are very similar.
In [
19], Bernoulli-Euler beams are analysed using IGA. This is an efficient and accurate numerical approach for static bending and vibration analysis. This method includes a deformation gradient, a rotation gradient and a velocity gradient, which influence simultaneously through a reformulated stress elasticity gradient with only one material parameter for each gradient influence. Based on Hamilton’s principle and IGA, the governing equations are derived and solved, satisfying the requirements for a higher degree of continuity in the microstructure-dependent Bernoulli–Euler beam.
The paper [
20] deals with the simulation of fracture initiation under impact loading on a shell made of a composite composed of metallic elements using X-FEM. The fracture is described as a simple 1D mesh located on the centroidal surface and is independent of the finite element mesh. The fracture criterion is based on the measurement of the equivalent stress at the crack root. A similar problem of fracture in shells is addressed in [
21]. A local form of the equilibrium laws for the continuum was expressed. These were used to express the resulting stresses. A special feature is the use of the mesh-free Galerkin formulation using differential operators.
Cracks can also be solved using IGA [
22], where IGA has been used for the crack root only and a structured mesh based on the B-spline finite element method (BSFEM) is used for the remaining area. BSFEM is used in the global approximation and IGA was applied to the crack surroundings, which are covered by only a few elements. The geometry of the selected region is described using the basic functions of B-splines in the parameter space. A specific function with the relevant parameters is inserted into the geometric description to determine the type of solution around the crack shank. The basic functions of the B-splines are used as the basis functions to compute the displacement field in the local region in parametric space.
FEA and IGA are not the only options for plate and shell analysis. The mesh-free Petrov-Galerkin method can also be used to solve the shell problem in three-dimensional space. The work [
23] provides a brief introduction to understanding mesh-free methods. Additionally, the work [
24] deals with the analysis of plates and shells using mesh-free methods. The objects analysed are composite structures. Galerkin’s mesh-free method and Kernel particle method were used.
In [
25], new basis functions for IGA using NURBS have been introduced, with the main goal of making it easier to introduce Dirichlet boundary conditions. These new basis functions were obtained by embedding rational local Lagrangian interpolations (as T-splines) and were computed in a process similar to the finite difference method. Due to the equivalence with NURBS, the new basis functions are named “non-uniform” rational Lagrange basis functions (NURLs) in this paper. Dirichlet boundary conditions can be directly embedded in the IGA using NURLs because they are interpolations of the basic functions.
The publication [
7] can be considered a fundamental work in the field of plate and shell theory, but the reader may find more useful the more recent work [
6], which contains detailed descriptions of the theories of plates (quadrilateral and circular) and shells. Space is devoted to shear deformations, stability and dynamic analysis. The last chapter is devoted exclusively to the analysis of plates using FEM. In [
3,
8,
26] it was not the primary task to deal with shell theory, but chapters describing shells, plates and their analytical calculation can be found. FEM also allows modelling plates and shells that are made up of fibre-reinforced composite materials. In [
27] formulations for large deformations are also described. The orientation of the fibres can be either random or purposely chosen in the analysis.
Nowadays, more and more of the professional community is dealing with composite materials, and we have already mentioned several papers that discuss shells and plates that are composite using FEA, or mesh-free methods. Sandwich shells and plates are also among the quite common materials. In [
28], a special kind of element was used to describe the structural behaviour and bonding of a sandwich shell. To eliminate interlaminar stress discontinuities and to satisfy boundary conditions, a method is used to accurately compute the transverse shear and normal stresses in the laminate shell. In [
29], cells that can be considered to be shells are considered. A numerical model was constructed to obtain the desired results.
Thanks to the addition of embedding to the IGA for Kirchhoff–Love shells in [
30], the treatment of even large elastoplastic deformations is possible. The main goal was to reformulate the governing equations of the thin shell. Numerical examples, ranging from static to dynamic tests, demonstrate accuracy, efficiency and robustness. There are also earlier works where Kirchhoff–Love shell elements were solved using IGA, without various add-ons. For a more detailed procedure, it is worthwhile to consult the work [
31]. Kirchhoff–Love shell elements also have the advantage that the necessary continuity between the elements is easily achieved. The Rhinoceros 3D software was used for the modelling.
IGA has also found its application in creating a high-quality mesh, which would be as conformal as possible, for the body shape in complex composite microstructures [
32]. Micro CT photographs of composites reveal many irregularly shaped inclusions. Due to Nitsche’s method, volume connections between the inclusions and the main domain of the structure are embedded.
In modelling, it may be the case that the model consists of multiple “patches”. Sometimes it may happen that the surfaces formed from NURBS, intersect each other and need to be clipped. In this case, the IGA discontinuous Galerkin method (hereafter referred to as IGA DG) is used to unify them. Its use can be encountered in the work [
33]. The surfaces are required to be C0 continuous for the IGA DG to be applicable. By extending the IGA DG, the problem of overlapping surfaces can be solved.
In [
34], a discretization of Kirchhoff–Love thin shells based on the splitting algorithm is presented. Symmetry is exploited to increase the efficiency of the analysis by splitting the surfaces. This new algorithm provides an improvement in the flexibility of the current IGA, while expanding the area of possible applications.
IGA, as mentioned above, finds its application not only in homogeneous materials. The work [
35] describes the use of IGA for a composite material containing graphene layers under load on a strut while varying the temperature and the distribution of the layers.
The 2012 work [
36] proved that IGA is able to compete with classical FEA in a field that has very high demands on the accuracy and precision of the results, such as the aerospace industry. The deformation of the turbine blade was assumed to be linearly elastic with respect to all types of loads and boundary conditions that normally occur. This assumption was verified using classical FEM. This resulted in nearly identical outputs, but with only a fraction of the degrees of freedom for IGA versus FEM.
2.1. Preprocessor Overview for IGA
In the following section, a brief overview of some of the programs that allow geometry creation using NURBS is described.
2.1.1. Rhinoceros 3D
Rhinoceros 3D is a specially designed program for modelling NURBS curves and surfaces. In Rhinoceros 3D, anything can be modelled as a NURBS. It uses output formats with the extension .3DM and .IGES. It is equipped with a number of methods for NURBS modelling. The geometry can be easily edited at all times. Access to NURBS is quite straightforward, it is easy to change control point positions, edit nodal vectors and rotate curves and surfaces. It is mainly designed for 2D mode-matching, but can also be applied to 3D.
2.1.2. Inkscape
It is a vector graphic editor. For IGA it is usable as a simple preprocessor. It uses the .SVG format, but can be formatted to .XML. The data to describe a Bézier curve can be easily obtained.
2.1.3. AutoCAD
Since AutoCAD contains NURBS curves, it is usable as a preprocessor for IGA. The storage format is DWG or DXF, which consist of ASCII data. From these, the curve data can then be easily extracted. For area data, it is more difficult. In AutoCAD, there are two options for modelling curves, either by identifying the curve with data points or by modelling the curve with control points. It is also possible to add control points, modify the degree of the polynomial, modify the position of the control points, or weight parameters.
2.1.4. Blender
A comprehensive environment for modelling, animation, and rendering. Geometrically, Blender provides excellent support for B-REP modelling with polygonal mesh. Although Blender has a few NURBS tools, it is made up of straight edges. This is especially reflected when creating circles or curves. It needs to be part of the preprocessor chain and not the whole of it [
2].
2.1.5. MATLAB and GNU Octave
Their advantage is easy orientation in the notation. The disadvantage is that NURBS is not part of these programs. You have to define them or use the available toolboxes for extensions. Another disadvantage is that these programs do not provide the interactive display capabilities that Rhinoceros 3D or Blender provide.
The open-source package GeoPDE can now be used. It is very user friendly, contains many examples and detailed step-by-step descriptions. Thanks to it, MATLAB and GNU Octave do not remain only preprocessors, but it is possible to perform IGA directly in it. The IgaFEM package is still usable for MATLAB.
3. Interpolation Using B-Splines and NURBS Method
NURBS represents a special case of a B-spline curve where the nodal vector is “non-uniform”. “Non-uniformity” allows to plot curves with arbitrary degrees of continuity [
9]. They are significant precisely for this ability, which allows them to represent every object quite accurately. This is possible due to the projective transformation over parts of a quadratic curve.
For different orders of continuity between curves, the following can be said:
curve is not continuous,
curve is continuous,
retains continuity even after the first derivative,
is continuous even after the second derivative,
continuous up to the nth derivative.
It is true that any node can be a breakpoint of several polynomial curves. That is, a single polynomial is expressed using two non-repeating nodes. If two of the three control points are to be “fixed” at the ends of the curve, then the first and last nodes must be repeated times. This also achieves discontinuity at the endpoints.
By inserting a node into an interval of control points that is from −1 to 1, one can increase the number of basic functions and hence also increase the number of control points required to plot a B-spline curve without increasing the degree of the polynomial of the curve [
3].
For the NURBS curve, control points are obtained using a projective transformation. Variables such as the projective curve
, are related to the B-splines, which is the projection of the control points,
. For NURBS, it is equally true that
relates to the projective curve and
relates to the projection of points. The control points for the NURBS curve are obtained from the relations [
1]
where
is the
j-th component of the vector
,
is the
i-th weighting parameter. Redistributing the projected control points by the weights is equivalent to using a projective transformation. It is necessary to apply this procedure to each point of the curve in order to define the weighting function
where
is the standard B-spline basis function. Consequently, the NURBS curve can be defined as
where
and
are both piecewise polynomial functions. The NURBS curve
is a piecewise rational function, with a polynomial partitioned by another polynomial in each element. In NURBS, the two polynomials have the same degree.
If a B-spline curve has points with continuity and it is necessary to express this state as a quadratic function, then the values of the nodes at these positions must be multiplied by two. Often, however, the level of continuity is limited by the shape of the projective curve rather than by the curve itself. To give an idea, there is no solution to constructing a circle without nodes where the continuity is at the level. To perform the affine transformation of a NURBS object, the affine transformation must be applied directly to the control points, but the weighting parameters are preserved. Although the weight parameters are bound to a specific control point, they are not a component of it, which is a common mistake when constructing a NURBS data structure.
The algebraic approach allows to understand the construction of NURBS objects. Similar to B-splines, the weighting function is a scalar, piecewise polynomial function for the
component of the projected curve.
which is a piecewise rational function [
1]. Using this equation with control points, one can arrive at the NURBS curve equation [
1]
3.1. NURBS—Basis for Analysis
In IGA, a basis is selected that is capable of accurately representing the geometry, which is then used as the basis for the fields to be approximated.
Sufficient conditions for a basic proof of convergence are provided for a wide range of problems. However, the following must hold:
C1 continuity for the interior of the element,
C0 continuity at the boundaries of the element,
completeness—on any element is a basis able of representing all linear functions.
These conditions are necessary to ensure convergence for the different elements.
3.2. Numerical Methods
There are several methods that have found their application in IGA. The most widely used is Galerkin finite element analysis. Others worth mentioning are the collocation method, the least squares method, and mesh-free methods.
Algorithms for Systematic Modification of NURBS
Most commonly, 3 basic algorithms are used to increase the flexibility of objects created from NURBS, while modifying the properties associated with the basic functions. Their names are:
knot insertion, knot refinement,
increase in order, degree of rotation,
k-refinement.
These modifications not only affect the geometry but can be used to obtain more accurate values of displacements, relative strains and stresses.
3.3. Elastostatics in the IGA
Here,
represents the components of the displacement vector and the Cauchy stress tensor
has Cartesian components
. The strain tensor
with components
is determined to be the symmetric part of the displacement gradient
Next, the generalized Hooke’s law can be introduced
where
represent the elastic coefficients, which have two characteristic properties:
symmetry,
positive definiteness.
The material is expected to be homogeneous and isotropic. Thus, the elastic coefficients take the form
where
and
represent the Lamé parameters and
is the Kronecker delta.
3.4. Strong Formulation
Consequently, a strong formulation must be defined. It is given that
and
and it is necessary to find
such that
The last two Equations (11) and (12) are generalizations of the Dirichlet and Neumann boundary conditions. These conditions are utilized in each direction independently, so that and for . and are the prescribed displacements.
3.5. Weak Formulation
The test solution space
and the weight space
are introduced. In addition to the existing conditions, one more condition is added. Each
satisfies
na
. Equation (10) is multiplied by the weight function and integrated piecewise. The goal is to obtain the variational form. The purpose is to find
such that for all
one can write
This equation can also be expressed more concisely when
and let
. Given
,
and
. The search is for
such that for all
3.6. Galerkin’s Method
In order to transform the weak formulation of the problem into a system of algebraic equations, it is necessary to apply Galerkin’s method, which consists of constructing finite-dimensional approximations and working in the subspaces
and
Briefly, these are subsets that will be associated with the bridged space of the isoparametric basis. NURBS bases are used to define these subspaces, and they contain vector control variables. If
are determined, where
, then for all
where
. For the Galerkin approximation, when applied to the weak form, we use the relation
It is possible to achieve an increase in accuracy by defining
indices of all NURBS functions that define the geometry. Respectively, let
contain the indices of all basis functions that are nonzero on
. Then, for the i-th component
can be used in the equation
The equation is a simple vector generalization, with
representing the
-th component of the control variable
. A similar formulation can be written for
Finally, it is possible to express
and
using
where
in three-dimensional space can be expressed by the relations
The purpose of all this was to obtain equations to express the matrix formulation of the problem
where
whereby the IEN connectivity field must be used to assign a local function number and element number to the global basis function. One equation was assigned to each such global function. Then there are d equations for each global function. Next, a second degree of connectivity must be introduced using the ID field, which is related to the degrees of freedom
and the number of the global function
and returns the equation number
. With this knowledge, the number of the global equations can be obtained by constructing ID and IEN to obtain
. For use in three-dimensional space, a connectivity field
LM is introduced which includes both of the mentioned fields. Then
Given Equation (24), it is necessary to write that
.
and
3.7. Construction of Global and Local Stiffness Matrices
First, it is necessary to define a vector of strains, then a simplified form of the fourth-order elastic coefficient tensor can be introduced into the matrix
, where
. With this knowledge, the stress vector can be defined as
This is often referred to as Voigt notation. Equation (15) is then used, which is then translated into the form
then the notation is expanded
where
With this knowledge, the global stiffness matrix is rewritten in the form
By using all the elements and creating local stiffness matrices and force vectors, a global stiffness matrix and force vector are created. With d spatial dimension and local shape function
, the input values on the local stiffness matrix on element
are calculated as
while
and
. Similarly, the terms of the local force vector can be expressed
where
is the edge intersection of the element with
and
. In practice, Gaussian quadrature is used to compute integrals.
The relations given in this section, except where otherwise noted, are taken from the literature [
37].
5. Conclusions
The aim of the study was to perform isogeometric analysis on thin-walled elements of various shapes, but mostly on elements with at least one radius, and to evaluate its accuracy in comparison with the finite element method. This is a complex problem involving the issue of geometry interpolation using NURBS and the formulation of appropriate computational procedures. The description of isogeometric analysis itself consists of the Galerkin method, the NURBS refinement algorithm, the output of isogeometric analysis, and the definition of the relations valid for elastostatics in isogeometric analysis.
Isogeometric analysis has the following main advantages with respect to the finite element method:
There is no geometric approximation error, due to the fact the geometry of the analyzed body is represented exactly.
Interpolation of geometry can be obtained directly from a computer-aided design tool.
Wave propagation problems are better described due to the reduction of numerical dispersion and dissipation errors.
In principle, there is only one disadvantage of this method compared to the classical finite element method and that is a more complicated theory.
The work clearly demonstrated that for thin-walled structural elements, the isogeometric analysis gives similar results to the finite element method. A number of thin-walled structural problems in elastostatics were solved. In all cases, a high agreement was shown even in cases where refinement of the mesh occurred in the finite element method.
Table 5 shows the mesh parameters in each solved case along with the computation times. In this case, however, these times are of limited informative value because different solvers are used in the FEM calculations and in the isogeometric analysis, moreover, they are programmed in programming languages of different performance.