# Isogeometric Analysis (IGA)

The aim of this post is to give a brief introduction to the recently emerged isogeometric analysis (IGA) which was presented in the seminal paper " Hughes, T.J.R.; J.A. Cottrell, Y. Bazilevs (2005). "Isogeometric analysis: CAD, finite elements, NURBS,exact geometry and mesh refinement". Comput. Methods Appl. Mech. Engrg. (Elsevier) 194: 4135–4195." IGA refers to a computational framework in which the basis functions used to represent the geometry in CAD are used for approximating the unknown fields in FEA. In this regard, IGA also employs the well known isoparametric concept.

Two important industries in engineering are Computer Aided Design (CAD) and Finite Element Analysis (FEA). FEA was developed to improve engineering analyses and CAD was developed to improve the design process. The FEA evolution started in the 1940s whereas the CAD became a mature field much later in the 1970s. That explains why different mathematical models have been employed to represent the same object. In FEA, trivariate polynomials of low order (usually one or two) are used to approximate the solid object while in CAD, the same object is represented by NURBS (Non Uniform Rational B-splines). Due to the difference in the geometrical representation, the transfer from a CAD model to a FEA model requires another technology--the so-called mesh generators that transform the CAD model in to a finite element (FE) mesh that is suitable for a FE computation. Meshing complex structures is, however, a very time-consuming process and can be much longer than the analysis itself. Moreover, imagine that one needs to change the geometry of the object, then they have to repeat the time consuming meshing procedure.

It is probably that the first work that attempted to link CAD and FEA was the work of Kagan and his co-workers in 1998 where B-splines were utilized to represent the solid geometry in the FE model. Therefore, both CAD and FEA models employ the same technology--B-splines to construct the object of interest. Along this line of research, another notable contribution was made by Cirak et al. (2000) in which subdivision surface, which is a CAD technology extensively used in computer animation, was used in a finite element thin shell model.
It was not until 2005 that the idea was generalized and a new field was emerged--the isogeometric analysis (IGA) by Hughes and his co-workers where NURBS were adopted in FE solid/structural/fluid mechanics models. Since this seminal paper, a monograph was published entirely on the subject and applications have been found in several fields including structural mechanics, solid mechanics, fluid mechanics, fracture mechanics, biomechanics and contact mechanics.

Not only IGA reduces the gap between CAD and FEA, but also it has triggered a new drive in spline research after a quiet period, see for instance the locally refined splines, the polynomial splines over hierarchical T-meshes (PHT) etc. There is an increasing communication between CAD and FEA researchers.

Some distinct advantages of IGA are
(1) Closely link to CAD data (important for optimization problems) and exact geometry representation (important for shell problems, fluids etc);
(2) B-splines/NURBS are very smooth functions with easily obtained high order continuity (faciliates the construction of C^1 plate/shell elements or PDEs with high order derivatives);
(3) Due to the high order continuity, the number of degrees of freedom needed are usually less than standard Lagrange FEs; accurate stress fields are obtained (important in fracture modeling);
(4) Easy incorporation into existing FE codes (this is in sharp contrast to somewhat related meshfree methods) by using the Bezier extraction. It is available in LS-Dyna and Abaqus (http://abqnurbs.insa-lyon.fr/index.php/2-uncategorised/4-isogeometric-an...). Bezier extraction based IGA code can be parallelized using the standard domain decomposition methods being applied for FEM.

It should be emphasized that IGA is not restricted to B-splines/NURBS. Other CAD technologies including T-splines, subdivision surfaces, PHT, locally refined splines and Powell-Sabin splines can be utilized.  Some open source IGA codes are GeoPDEs which can be found at http://geopdes.apnetwork.it, MIGFEM hosted at http://sourceforge.net/projects/cmcodes/ (this code implements 1D/2D/3D IGAFEM and IGAXFEM, solid and structural models with large displacements) and OOFEM (http://www.oofem.org/en/oofem.html). It is also incorporated in FEAP.

Probably the most challenge of IGA is how to define an analysis-suitable trivariate model given a CAD surface. Note that in CAD environment, a solid is only a surface which is not sufficient for analysis purposes. In this regard, the IGABEM--isogeometric Boundary Element Method, developed by Simpson et al. can be considered a truly isogeometric method so far. NURBS enhanced FEM (NEFEM) by Sevilla is yet another method in which only a NURBS surface is required, the interior is discreised by Lagrange finite elements. Another interesting approach to this problem is the IGA-Max ent method proposed by Rosolen, Arroyo where the boundary is represented by NURBS and the interior is discretised by a set of points. The idea is to combine the bests of IGA and meshfree methods.

Although IGAFEM is pretty much the same as Lagrange FEs, there are some differences. Firstly the mapping from the parameter space to the physical space is not local in the sense that it maps a unit cube (3D problems) to many "elements" not to a single element. Secondly the basis functions can be different for different elements. This made the implementation a non-trivial task. However implementation of IGA using the Bezier extraction is straightforward. "Elements" are defined as non-zero knot spans. In IGA, control points play the role of nodes. However since splines basis are not interpolatory the field values at control points do not have a physical meaning as nodal values in Lagrange FEs.

Obviously complex geometries cannot be defined simply as a mapping from a unit cube, therefore they have to be represented by multiple NURBS patches. Connecting these patches is not a simple task if they have different parametrization/discretization. This is similar to hanging nodes in FEM. Note that NURBS elements can be considered as high order structured curved quadrilateral elements. NURBS, due to its tensor product nature, do not support local refinement. Hierarchical B-splines/NURBS, however, do and so do T-splines.

Although B-splines/NURBS are generally not interpolatory, they are so at boundaries due to the use of open knot vectors. Therefore, enforcement of homogeneous boundary conditions is standard. Again, this is totally contrary to meshless approximations. Numerical integration is also performed in a standard fashion. Optimal quadrature for B-spline/NURBS elements is an open topic although some works have been done by Hughes and Aurrichio.

Currently it is still a challenge to perform analyses on trivariate trimmed NURBS solids. There are two ways to solving this problem: T-splines and fictitious domain methods. The former is a recent generalization of NURBS and complicated to implement and not yet popular in CAD. The later includes the boundary immersed methods, the Finite Cell Method (FCM).

In a recent paper of the author, IGA was shown to tremendously improve the design and analysis of laminated composites. This is due to a direct link to CAD and the ease of generating cohesive elements (in an automatic manner) for delamination analyses.

For FEA, there are numerous commercial and/or free pre-processors. However, for IGA, the resource is quite limited: currently people is using either Rhino3D (a NURBS/T-spline modeling package which is not free) or the NURBS toolbox which does not provide a user friendly GUI.