Isogeometric analysis is a computational approach that offers the possibility of integrating
finite element analysis
The finite element method (FEM) is a popular method for numerically solving differential equations arising in engineering and mathematical modeling. Typical problem areas of interest include the traditional fields of structural analysis, heat t ...
(FEA) into conventional
NURBS
Non-uniform rational basis spline (NURBS) is a mathematical model using basis splines (B-splines) that is commonly used in computer graphics for representing curves and surfaces. It offers great flexibility and precision for handling both analy ...
-based
CAD
Computer-aided design (CAD) is the use of computers (or ) to aid in the creation, modification, analysis, or optimization of a design. This software is used to increase the productivity of the designer, improve the quality of design, improve c ...
design tools. Currently, it is necessary to convert data between CAD and FEA packages to analyse new designs during development, a difficult task since the two computational geometric approaches are different. Isogeometric analysis employs complex NURBS geometry (the basis of most CAD packages) in the FEA application directly. This allows models to be designed, tested and adjusted in one go, using a common data set.
The pioneers of this technique are
Tom Hughes and his group at
The University of Texas at Austin
The University of Texas at Austin (UT Austin, UT, or Texas) is a public research university in Austin, Texas
Austin is the capital city of the U.S. state of Texas, as well as the county seat, seat and largest city of Travis County, Te ...
. A reference
free software
Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, ...
implementation of some isogeometric analysis methods is GeoPDEs.
Likewise, other implementations can be found online. For instance, PetIGA
is an open framework for high performance isogeometric analysis heavily based on
PETSc
The Portable, Extensible Toolkit for Scientific Computation (PETSc, pronounced PET-see; the S is silent), is a suite of data structures and routines developed by Argonne National Laboratory for the scalable (parallel) solution of scientific appl ...
. In addition, MIGFEM is another IGA code which is implemented in Matlab and supports Partition of Unity enrichment IGA for 2D and 3D fracture. Furthermore, G+Smo
is an open C++ library for isogeometric analysis. In particular, FEAP
is a finite element analysis program which includes an Isogeometric analysis library FEAP IsoGeometric (Version FEAP84 & Version FEAP85). An account of the developments leading up to IGA has been documented in.
Advantages of IGA with respect to FEA
Isogeometric analysis presents two main advantages with respect to the finite element method:
*There is no geometric approximation error, due to the fact the
domain is represented exactly
*
Wave
In physics, mathematics, and related fields, a wave is a propagating dynamic disturbance (change from equilibrium) of one or more quantities. Waves can be periodic, in which case those quantities oscillate repeatedly about an equilibrium (r ...
propagation problems, arising for instance in
cardiac electrophysiology
Cardiac electrophysiology is a branch of cardiology and basic science focusing on the electrical activities of the heart. The term is usually used in clinical context, to describe studies of such phenomena by invasive (intracardiac) catheter recor ...
,
acoustics and
elastodynamics
Linear elasticity is a mathematical model of how solid objects deform and become internally stressed due to prescribed loading conditions. It is a simplification of the more general nonlinear theory of elasticity and a branch of continuum mech ...
, are better described, thanks to the reduction of
numerical dispersion
In computational mathematics, numerical dispersion is a difficulty with computer simulations of continua (such as fluids) wherein the simulated medium exhibits a higher dispersivity than the true medium. This phenomenon can be particularly egregiou ...
and dissipation errors.
Meshes
In the framework of IGA, the notions of both control
mesh and physical mesh are defined.
A control mesh is made by the so called control points and it is obtained by a piecewise
linear interpolation
In mathematics, linear interpolation is a method of curve fitting using linear polynomials to construct new data points within the range of a discrete set of known data points.
Linear interpolation between two known points
If the two known po ...
of them. Control points play also the role of
degrees of freedom
Degrees of freedom (often abbreviated df or DOF) refers to the number of independent variables or parameters of a thermodynamic system. In various scientific fields, the word "freedom" is used to describe the limits to which physical movement or ...
(DOFs).
The physical mesh lays directly on the geometry and it consists of patches and knot spans. According to the number of patches that are used in a specific physical mesh, a single-patch or a multi-patch approach is effectively employed. A patch is mapped from a reference
rectangle in two dimensions and from a reference
cuboid
In geometry, a cuboid is a hexahedron, a six-faced solid. Its faces are quadrilaterals. Cuboid means "like a cube", in the sense that by adjusting the length of the edges or the angles between edges and faces a cuboid can be transformed into a cu ...
in three dimensions: it can be seen as the entire computational domain or a smaller portion of it. Each patch can be decomposed into knot spans, which are
points,
lines and
surfaces in 1D, 2D and 3D, respectively. Knots are inserted inside knot spans and define the elements.
Basis function
In mathematics, a basis function is an element of a particular basis for a function space. Every function in the function space can be represented as a linear combination of basis functions, just as every vector in a vector space can be repre ...
s are
across the knots, with
degree of the
polynomial
In mathematics, a polynomial is an expression consisting of indeterminates (also called variables) and coefficients, that involves only the operations of addition, subtraction, multiplication, and positive-integer powers of variables. An ex ...
and
multiplicity of a specific knot, and
between a certain knot and the next or preceding one.
Knot vector
A knot vector, normally indicated as
, is a set of non-descending points.
is the
knot,
is the number of functions,
refers to the basis functions order. A knot divides the knot span into elements. A knot vector is uniform or non-uniform according to the fact that its knots, once their multiplicity is not taken into account, are equidistant or not. If the first and the last knots appear
times, the knot vector is said to be open.
Basis functions
Once a definition of knot vector is provided, several types of basis functions can be introduced in this context, such as
B-splines,
NURBS
Non-uniform rational basis spline (NURBS) is a mathematical model using basis splines (B-splines) that is commonly used in computer graphics for representing curves and surfaces. It offers great flexibility and precision for handling both analy ...
and
T-splines.
B-splines
B-splines can be derived recursively from a piecewise constant function with
:
Using
De Boor's algorithm In the mathematical subfield of numerical analysis de Boor's algorithmC. de Boor 971 "Subroutine package for calculating with B-splines", Techn.Rep. LA-4728-MS, Los Alamos Sci.Lab, Los Alamos NM; p. 109, 121. is a polynomial-time and numerically ...
, it is possible to generate B-splines of arbitrary order
:
valid for both uniform and non-uniform knot vectors. For the previous formula to work properly, let the division of two
zero
0 (zero) is a number representing an empty quantity. In place-value notation such as the Hindu–Arabic numeral system, 0 also serves as a placeholder numerical digit, which works by multiplying digits to the left of 0 by the radix, usu ...
s to be equal to zero, i.e.
.
B-splines that are generated in this way own both the
partition of unity
In mathematics, a partition of unity of a topological space is a set of continuous functions from to the unit interval ,1such that for every point x\in X:
* there is a neighbourhood of where all but a finite number of the functions of are ...
and positivity properties, i.e:
So as to calculate
derivative
In mathematics, the derivative of a function of a real variable measures the sensitivity to change of the function value (output value) with respect to a change in its argument (input value). Derivatives are a fundamental tool of calculus. ...
s or order
of the
B-splines of degree
, another recursive formula can be employed:
where:
whenever the denominator of an
coefficient is zero, the entire coefficient is forced to be zero as well.
A B-spline curve can be written in the following way:
where
is the number of basis functions
, and
is the
control point, with
dimension of the space in which the curve is immersed.
An extension to the two dimensional case can be easily obtained from B-splines curves.
In particular B-spline surfaces are introduced as:
where
and
are the numbers of basis functions
and
defined on two different knot vectors
,
,
represents now a matrix of control points (also called control net).
Finally, B-splines solids, that need three sets of B-splines basis functions and a tensor of control points, can be defined as:
NURBS
In IGA basis functions are also employed to develop the computational domain and not only for representing the numerical solution. For this reason they should have all the properties that permit to represent the geometry in an exact way. B-splines, due to their intrinsic structure, are not able to generate properly circular shapes for instance.
In order to circumvent this issue, non-uniform rational B-splines, also known as NURBS, are introduced in the following way:
where
is a one dimensional B-spline,
is referred to as
weighting function, and finally
is the
weight.
Following the idea developed in the subsection about B-splines, NURBS curve are generated as follows:
with
vector of control points.
The extension of NURBS basis functions to manifolds of higher dimensions (for instance 2 and 3) is given by:
hpk-refinements
There are three techniques in IGA that permit to enlarge the space of basis functions without touching the geometry and its parametrization.
The first one is known as knot insertion (or h-refinement in the FEA framework), where
is obtained from
with the addition of more knots, which implies an increment of both the number of basis functions and control points.
The second one is called degree elevation (or p-refinement in the FEA context), which permits to increase the polynomial order of the basis functions.
Finally the third method, known as k-refinement (without a counterpart in FEA), derives from the preceding two techniques, i.e. combines the order elevation with the insertion of a unique knot in
.
References
External links
GeoPDEs: a free software tool for Isogeometric Analysisbased on
Octave
In music, an octave ( la, octavus: eighth) or perfect octave (sometimes called the diapason) is the interval between one musical pitch and another with double its frequency. The octave relationship is a natural phenomenon that has been refer ...
MIG(X)FEM: a free Matlab code for IGA (FEM and extended FEM)PetIGA: A framework for high-performance Isogeometric Analysis{{Webarchive, url=https://web.archive.org/web/20140714225851/https://bitbucket.org/dalcinl/petiga , date=2014-07-14 based on
PETSc
The Portable, Extensible Toolkit for Scientific Computation (PETSc, pronounced PET-see; the S is silent), is a suite of data structures and routines developed by Argonne National Laboratory for the scalable (parallel) solution of scientific appl ...
G+Smo (Geometry plus Simulation modules): a C++ library for isogeometric analysis, developed at RICAM, LinzFEAP: a general purpose finite element analysis program which is designed for research and educational use, developed at University of California, BerkeleyBembel: An open-source isogeometric boundary element library for Laplace, Helmholtz, and Maxwell problems written in C++T.J.R. Hughes, J.A. Cottrell, Y. Bazilevs: "Isogeometric analysis: CAD, finite elements, NURBS, exact geometry and mesh refinement", Computer Methods in Applied Mechanics and Engineering, Elsevier, 2005, 194 (39-41), pp.4135-4195.
Finite element method
Computer-aided design