A Generalized Finite Element Formulation For Arbitrary Basis Functions - From Isogeometric Analysis To XFEM
A Generalized Finite Element Formulation For Arbitrary Basis Functions - From Isogeometric Analysis To XFEM
SUMMARY
Many of the formulations of current research interest, including iosogeometric methods and the extended
finite element method, use nontraditional basis functions. Some, such as subdivision surfaces, may not
have convenient analytical representations. The concept of an element, if appropriate at all, no longer
coincides with the traditional definition. Developing a new software for each new class of basis functions
is a large research burden, especially, if the problems involve large deformations, non-linear materials, and
contact. The objective of this paper is to present a method that separates as much as possible the generation
and evaluation of the basis functions from the analysis, resulting in a formulation that can be implemented
within the traditional structure of a finite element program but that permits the use of arbitrary sets of
basis functions that are defined only through the input file. Elements ranging from a traditional linear
four-node tetrahedron through a higher-order element combining XFEM and isogeometric analysis may be
specified entirely through an input file without any additional programming. Examples of this framework
to applications with Lagrange elements, isogeometric elements, and XFEM basis functions for fracture
are presented. Copyright q 2010 John Wiley & Sons, Ltd.
∗ Correspondence to: D. J. Benson, Department of Structural Engineering, University of California, San Diego 9500
Gilman Drive, La Jolla, CA 92093, U.S.A.
†
E-mail: [email protected]
1. INTRODUCTION
Lagrange interpolation polynomials have been the standard choice for basis functions in finite
element analysis from almost the very beginning of finite element research. They are the over-
whelming choice today whether the preferred metric is their prevalence in commercial codes or in
research articles. In the last few years, however, the research on different classes of basis functions
has dramatically increased in an effort to circumvent the limitations of Lagrange polynomials.
Isogeometric analysis [1] uses basis functions from computer-aided design (CAD), including
NURBS [1, 2], T-Splines [3, 4], and subdivision surfaces [5–7]. One major goal of this approach is
direct design-to-analysis without the intermediate step of mesh generation. An exact representation
of the geometry, e.g. via an IGES file, provides the definitions of the basis functions. Additional
benefits may include higher-order accuracy [2, 8–14], C 1 or higher continuity, and increased
robustness [15].
The extended finite element method (XFEM) [16–19] was developed to enhance the solution
accuracy for particular classes of problems, such as fracture analysis, where the standard basis
functions have difficulties in capturing the exact solution. The displacement field is typically
enriched to include displacement fields approximating known classical solutions. The approach is
general enough, however, to be applied to problems without classical solutions such as contact in
multi-material arbitrary Lagrangian Eulerian (MMALE) calculations [20, 21].
The two broad classes of methods mentioned here are not intended to be exhaustive, but only a
representative listing of the diversity of basis functions currently being investigated by the research
community.
Traditionally, each choice of basis function is implemented in its own software. Equation solvers,
material models, and boundary conditions must additionally be implemented even to solve simple
problems, adding the burden of software infrastructure development to the basic research.
The objective of this paper is to present a framework that separates as much as possible the
generation and evaluation of the basis functions from the analysis, resulting in a formulation
that is readily implemented within the structure of a traditional finite element program and once
implemented, permits the use of basis functions that need only to be defined through the input
file. This separation facilitates
1. Direct design-to-analysis by permitting CAD software to provide both the exact geometry
and the basis functions used to define it.
2. The rapid prototyping of elements for research by eliminating the need for implementing
elements that are basis function specific or the additional infrastructure for material models
and complicated boundary conditions, e.g. contact.
3. Teaching finite element methods in a hands-on computational environment that is not tied to
a specific programming language.
The generalized element formulation discussed here is generalized in the sense that it is not
tied to specific choices of basis functions, integration rules, or coordinates. Elements ranging
from a traditional linear four-node tetrahedron through a higher-order element combining XFEM
and isogeometric analysis may be specified entirely through an input file without any additional
programming. Our implementation in LS-DYNA [22] of a generalized solid element and a gener-
alized Reissner–Mindlin shell element [23] is intended to be illustrative of our approach, but not
exhaustive. This element formulation can be implemented in virtually any finite element program,
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme
ELEMENT FORMULATION FOR ARBITRARY BASIS FUNCTIONS 767
and permits the extensive capabilities of mature production codes to be utilized in research. We
anticipate that further generalized element capabilities will be added in the future.
The domain is discretized into elements that are defined by nodes numbered A = 1, N . The
kinematics are traditionally defined in terms of the basis functions, N A , expressed in terms of
the element parametric coordinates, s, and the nodal values of the coordinates, velocities, and
accelerations,
x(s, t) = N A (s)x A (t). (6)
A=1,N
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme
768 D. J. BENSON ET AL.
Lagrange interpolation polynomials defined locally within each element are the usual choice
for the basis functions. Their advantages are well known
1. The solution values at the nodes have the appealing physical interpretation of being the value
of the solution at the node.
2. The compact support guarantees the sparseness of the global stiffness and mass matrices
used in implicit solution algorithms.
Elements, in this traditional setting, define regions used for both numerical quadrature and
generating the basis functions. The simplicity of the Lagrange polynomials encourages a strategy,
where every choice of basis function is implemented separately as its own element type to optimize
its efficiency. The boundaries of the elements also define the geometry used to evaluate surface
tractions, contact, and other boundary conditions. Again, the simplicity of the basis functions
encourages the implementation of each type of boundary condition independently to optimize
efficiency. To obtain the necessary generality in our formulation, some efficiency is necessarily
sacrificed; however, the savings in development time and the use of code that has been validated
using a broad class of basis functions more than compensates for this in our opinion.
The basis functions are used in the same manner in the generalized elements as in traditional finite
elements, but to emphasize that they are not necessarily interpolatory, the generalized coordinates
are denoted by q A . The formulation is isoparametric, with the parametric coordinates s. Components
of vectors are denoted with lower-case indices (e.g. the ith component of q A is q Ai ), and are
summed over the range 1–3 unless explicitly stated otherwise.
x(s, t) = N A (s)q A (t), (7)
A=1,N
X(s) = x(s, 0) = N A (s)q A (0), (8)
A=1,N
where N is the number of nodes. The term node is retained for the lack of a better one, but there
is no requirement that the generalized coordinates associated with a node represent a physical
location on the body. In fact, for most of the basis choices of interest here, e.g. NURBS [24], the
generalized coordinates do not even correspond to the locations of material points.
The structure of Equation (7) is identical to the structure of Equation (6), and on substitution
into the weak form it immediately leads to a set of semi-discrete equations that have the same
structure as found in traditional element formulations,
M AB q̈ B + B A r d =
T
hN A d+ bN A d ∀A, (10)
B h
where M and B are the usual definitions of the mass matrix and the discrete gradient operator,
respectively.
2.2. Integration
Numerical quadrature is used to evaluate the integrals in the semi-discrete equations, but with
no restriction to the Gauss quadrature. Special integration rules have been developed for XFEM
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme
ELEMENT FORMULATION FOR ARBITRARY BASIS FUNCTIONS 769
[16–19] and isogeometric NURBS elements [1], but their structure is the same as the Gauss
quadrature; for any function f (x), the integral is given by
f (x) d = w G f (sG )det(JG ), (11)
G
where G indicates the quadrature point, J = *x/*s is the Jacobian, and sG are the quadrature points
in the parametric domain.
The volume integrals in Equation (10), when numerically integrated as in Equation (11), require
the values of wG , N A (sG ) and *N A (sG )/*s. These values are constant during the analysis if the
basis functions are fixed, allowing them to be calculated outside of the analysis code. The analysis
code may then read them with the standard finite element input data and use the appropriate values
in a loop over the integration points. Although the basis functions are usually fixed, exceptions
do exist. For example, the XFEM enrichment functions change as a crack propagates [19]. The
generalized element presented here, while applicable to linear fracture analysis with XFEM, must
therefore be extended to handle the moving crack problem.
Although the concept of an element is not required, it is useful for maintaining computational
efficiency. The assembly operation, A, is usually inefficient since it scatters values to random
locations in memory, and in the case of an implicit solution method, it may use complicated sparse
matrix data structures. By aggregating the terms from a subset of the integration points before the
assembly, its total cost for the calculation is minimized. To promote computational efficiency, a
generalized element, therefore, consists of a collection of integration points with a common set of
nonzero basis functions. Each generalized element may therefore have its own unique integration
weights with their corresponding values of basis functions and derivatives, and the integrals are
evaluated as the sum over the integration points in exactly the same manner as any other element.
While elements with a variable number of nodes have been developed before [25], they have
always had an underlying shape, class of basis functions, and class of integration rules. Note
that no implied geometry is associated with the generalized element other than the existence of a
parametric coordinate system that has the same dimension as the physical coordinate system. The
parametric system is never explicitly defined, and it appears indirectly only through the numerical
values of the derivatives of the basis functions at the integration points and the integration weights
themselves.
Given the absence of information on the underlying geometry, determining an appropriate
characteristic length for a stable time step size in a dynamics problem solved with explicit time
integration is problematical. The maximum system frequency is obtained using the power iteration
method developed by Benson [26] for MMALE methods.
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme
770 D. J. BENSON ET AL.
Figure 2. A NURBS curve in two dimensions. Note that the curve does not
pass through the control points.
Another case, where not all the generalized coordinates correspond to material points is XFEM
[16, 17]. For example, in applications involving fracture, regions of the XFEM mesh are enriched
to have a form
u= N A (s){u A + H (x)b A +u∞
K I (r, )K I }, (12)
A
where H is the jump function, u∞ K I (r, ) are crack tip enrichment functions, and b A and K I are
the generalized coordinates associated with them [19]. Note that only a subset of the nodes are
enriched, and an enriched node may not use all of the available enrichment functions. A node with
the maximum degree of enrichment has three degrees of freedom for u A and three for b A . The
fracture toughness, K I , is treated as a global solution variable.
Note, however, that the structure of Equation (7) implies the basis functions are the same in
each coordinate direction, i.e.
⎧ ⎫ ⎧ ⎫
⎪ u q
⎨ 1⎪ ⎬ ⎪
⎨ A1 ⎪ ⎬
u = u 2 = N A q A2 , (13)
⎪
⎩ ⎪ ⎭ A ⎪
⎩ ⎪
⎭
u3 q A3
which certainly holds for the displacement contribution from the generalized coordinates. The
enrichment for the jump function also follows this format,
⎧ H⎫ ⎧ ⎫
⎪
⎪ u ⎪ b
⎨ 1⎪ ⎬ ⎨ A1 ⎪
⎪ ⎬
u H = u 2H = N A H b A2 , (14)
⎪
⎪ ⎪ A ⎪ ⎪
⎩ H⎪ ⎭ ⎩
b A3
⎭
u3
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme
ELEMENT FORMULATION FOR ARBITRARY BASIS FUNCTIONS 771
√
r 1 3
N1∞ = NA √ − +k cos −cos , (17)
A 2 2 2 2 2
√
r 1 3
N2∞ = N A √ + +k sin −sin , (18)
A 2 2 2 2 2
and the displacement field is enriched with a surplus of degrees of freedom,
⎧ ∞⎫ ⎧ ∞⎫
⎪ u u
⎨ 11 ⎪ ⎬ ⎪
⎨ 21 ⎪ ⎬
∞
∞ ∞
u K I = N1 u 12 + N2∞
u∞22 . (19)
⎪
⎩ ∞⎪ ⎭ ⎪
⎩ ∞⎪ ⎭
u 13 u 23
The desired displacement field is
⎧ ⎫ ⎧ ⎫
⎪ K 0
⎨ I⎪⎬ ⎪
⎨ ⎪ ⎬
∞ ∞ ∞
u K I = N1 0 + N2 KI , (20)
⎩ ⎪
⎪ ⎭ ⎪
⎩ ⎪ ⎭
0 0
and it is obtained by equating the terms in Equations (19) and (20) to generate the constraint
equations
u∞ ∞
11 −u 22 = 0, (21)
u∞
12 = 0, (22)
u∞
13 = 0, (23)
u∞
21 = 0, (24)
u∞
23 = 0. (25)
Unlike most basis functions, those defined in Equation (12) use both the parametric coordinates
s and the physical coordinates x. The generalized formulation developed here requires a single
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme
772 D. J. BENSON ET AL.
coordinate system for specifying the derivatives of the basis functions and the element integration.
Two alternatives are available. First, the parametric coordinate system may be used, and the required
derivatives are evaluated via the chain rule, e.g.
*N A u∞
KI *N A ∞
∞
*u K I *x
= uK I + N A · . (26)
*s *s *x *s
The second alternative is, perhaps, not as intuitive, but is equally valid; the derivatives with respect
to the parametric coordinate system are transformed to the physical coordinates, and the derivatives
are again evaluated using the chain rule,
*N A u∞
KI *N A *s ∞
∞
*u K I
= · uK I + N A , (27)
*X *s *X *X
where X = x(0) is used to emphasize that this transformation is applied only once at t = 0.
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme
ELEMENT FORMULATION FOR ARBITRARY BASIS FUNCTIONS 773
The shell kinematics are based on the degenerated solid element approach developed by Hughes
and Liu [29]. They are derived by starting with a solid element that has linear interpolation through
the thickness coupled with the desired form of interpolation on the laminae. Pairs of control
points on the upper and lower surfaces define a material fiber, y, that remains straight during the
deformation. The motion of the fiber is, therefore, a rigid body motion (although this contradicts
the zero normal stress condition) that may be described in terms of three translational velocities and
either two or three rotational velocities (the rotation about the axis of the fiber does not contribute
to the deformation, but it is simpler computationally to use three angular velocities in the global
coordinate system).
The kinematics are, therefore, reduced to approximating a shell by a surface in space defined
by the translational coordinates of a set of nodes, and the rotation of the fiber vectors attached to
them. The current shell geometry is, therefore, expressed mathematically by
hA
x(s) = N A (s) q A + s3 ŷ A , (28)
A 2
where h is the thickness and ŷ A is the unit fiber vector at node A. The coordinates s are from the
parametric space, and, therefore, their ranges are defined by the appropriate knot vectors, and the
third coordinate, s3 ∈ [−1, +1], is used with the standard linear interpolation functions through
the thickness of the shell.
To simplify the notation, the dependence of the functions on the parametric coordinates is
dropped, however, all are assumed to be evaluated at the integration point under consideration.
Additionally, since the product of N A and s3 appears throughout the terms associated with the
rotational degrees of freedom, the additional functions N̂ A = N A s3 are introduced. For example,
the expression for the current geometry is now written as
hA
x= N AqA + N̂ A ŷ A , (29)
A 2
and the resulting Jacobian, J, is therefore
*x *N A h A * N̂ A
J= = qA + ŷ . (30)
*s A *s 2 *s A
The velocity, ẋ, is defined in terms of the translational velocity, q̇ A , and the angular velocity,
x A , of the nodes, both in the global coordinate system,
hA
ẋ = N A q̇ A + N̂ A x A × ŷ A . (31)
A 2
Note the introduction of the angular velocity, x, to update the orientation of the fiber vectors.
The choice made here is also motivated by the simplicity of joining multiple non-smooth surfaces
(e.g. a honeycomb structure). Using three rotational degrees of freedom introduces a singularity
associated with the rotation about ŷ for smooth surfaces, which we address later. The test space,
or virtual displacement, x, has the same structure as the velocity field,
hA
x = N A q A + N̂ A x A × ŷ A . (32)
A 2
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme
774 D. J. BENSON ET AL.
The basic degenerated solid formulation is modified in three ways, motivated by Belytshcko
et al. [30, 31]. First, ŷ is replaced by n, the unit normal in the shell laminae, throughout. The
motivation for this simplification is to alleviate the artificial thinning that sometimes occurs with
explicit time integration, which is caused by the scaling of the rotational inertias to maintain a
large time step size. Additionally, the definition of a unique fiber direction for structures with
intersecting shell surfaces is often problematical.
Second, in contrast to the standard formulations, which are focused on elements with linear
basis functions, nothing is done to alleviate shear locking in the current formulation because we
are interested in higher-order NURBS basis functions, where shear locking is generally not a
significant problem. For lower degree NURBS, the generalization of B̄ for volumetric locking
developed for isogeometric elements [32] may be modified for shear locking.
Finally, a corotational formulation [31] for the stress is used here instead of the Truesdell rate
originally used by Hughes and Liu [29]. This choice was motivated by our desire to use the
isogeometric shells for elastic-plastic materials, where the corotational formulation has been found
to provide extra robustness.
The local corotational coordinate system for the stress is defined at the integration points using
the invariant scheme of Hughes and Liu [29] with the convention that e3 is the direction normal
to the reference surface. This coordinate system is derived from tangent vectors ti , i = 1, 2,
*N A
ti = qA, (33)
A *si
and the normal vector,
p = t1 ×t2 , (34)
p
n = e3 =
, (35)
p
where · is the usual three-dimensional Euclidean norm.
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme
ELEMENT FORMULATION FOR ARBITRARY BASIS FUNCTIONS 775
4. BOUNDARY CONDITIONS
At this time we have not developed generalized boundary conditions in the same format as the
elements; however, they are certainly possible. Instead, we have chosen to rely on the existing
capabilities within LS-DYNA to approximate the required boundary conditions to an adequate
level of accuracy.
Displacement boundary conditions are imposed directly on the nodes in the standard finite
element formulation. With basis functions that are not interpolatory, the introduction of a constraint
equation, located at the material point where the displacement boundary condition is applied,
x(sC ), is often the most appropriate approach,
C D (t) = u(s D , t)+X(s D )− N A (s D )q A (t) = 0, (38)
A
where u(s D , t) is the specified displacement. This approach must be used with some care to avoid
specifying too many constraints, a situation that may be avoided by using least squares to calculate
the individual histories q A (t). Selecting a set of points, D, the objective function J is minimized
at each time t,
1 2
J (t) = C (t), (39)
2 D∈D D
to obtain q A (t). Since the desired displacements are known, and independent of the solution, the
least-squares solution can be evaluated before the actual analysis and the results specified in the
input file.
Traction boundary conditions require the specification of the surface, h , where the boundary
condition is applied. Since the generalized elements do not contain any explicit definition of their
geometric boundaries, this specification must be performed separately. The geometry of h is
approximated using bilinear quadrilateral interpolation elements so that all the existing boundary
conditions (including contact) in LS-DYNA are immediately accessible. These elements are defined
by interpolation nodes, which are material points on the element surface,
x IB = N A (s B )q A , (40)
A
where the superscript I indicates a variable that it is associated with an interpolation node or
element. The interpolated surface geometry is used for both traction loads and contact. After the
distributed loads are evaluated for the interpolated nodes and elements using the standard routines
within LS-DYNA, the forces applied to the generalized coordinates are evaluated
F A = N A (s B )F IB . (41)
B
The same approach is used for body forces, where trilinear hexahedron interpolation elements
are defined, and the body forces applied to them are distributed according to Equation (41).
The accuracy of this approximation of the distributed loading is clearly a function of the
number of interpolation elements used to approximate the geometry. In the example isogeometric
calculations, the number of elements in each direction is equal to order of the interpolation, p.
A quadratic isogeometric shell element is divided into four interpolation elements with bilinear
basis functions. The example calculations presented here that use these approximate boundary
conditions are, therefore, accurate, but do not attain the maximum possible accuracy.
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme
776 D. J. BENSON ET AL.
The vast majority of finite element visualization software only display elements with linear shape
functions. To be able to view the results of the computations, interpolation elements are defined
that interpolate the output from the generalized elements (Figure 3). The interpolation elements
are hexahedral or quadrilateral. For the case of subdivision surfaces with triangular topology, it
is natural to make use of the interpolation triangle, which may be obtained by degenerating the
quadrilateral. To obtain quality images from simulations using higher-order generalized elements,
each generalized element should be subdivided into several multi-linear interpolation elements.
The state variables (e.g. the stress), generically denoted , are constant within the interpolation
element. They are evaluated as a linear combination of the values at the integration points in the
generalized elements,
¯ I = G G ,
(42)
G
where the bar and superscript I indicate the mean value of in the interpolation element, G is
the weighting coefficient, and the superscript G refers to the integration point in the generalized
element.
An approximate L 2 projection was used to calculate the G for the example calculations presented
later. Starting with the discrete approximation of the L 2 projection,
N A (sG )N B (sG )w G det(JG ) B = N A (sG )w G det(JG )G ∀A, (43)
B,G G
the coefficient matrix on the left-hand side is replaced with its diagonal row-summed approximation,
N A (sG )w G det(JG ) A = N A (sG )w G det(JG )G , (44)
G G
giving an easily evaluated expression for the value A associated with the basis function N A ,
A = W AG G , (45)
G
Figure 3. Interpolation element concept illustrated using a shell coming from rectangular topology.
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme
ELEMENT FORMULATION FOR ARBITRARY BASIS FUNCTIONS 777
N A (sG )w G det(JG )
W AG = . (46)
Ĝ N A (s )w det(J )
Ĝ G Ĝ
The values of at the interpolation nodes are interpolated from the nodes of the generalized
element,
IA = N B (s A )W BG G . (47)
B,G
The value of at the centroid of the interpolation element, which is written to the output database, is
averaged from the values at the N interpolation nodes of the interpolation element. The expression
for G simplifies to
¯ I = 1 N B (s A )W G G .
(48)
B
N A,B,G
1
G = N B (s A )W BG . (49)
N A,B
The interpolation element definition, provided in the Appendix, therefore, consists of three parts
(1) the interpolation node definitions (that are defined independently of the interpolation element),
(2) the interpolation element connectivity specified in terms of the interpolation nodes, and (3) the
values of G .
6. EXAMPLE CALCULATIONS
The calculations presented here are presented to demonstrate the versatility of the generalized
elements. All calculations were performed in double precision on a Dell laptop computer using a
single core unless otherwise noted.
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme
778 D. J. BENSON ET AL.
Figure 4. Contours of plastic strain for, from left to right, 2048 standard 1-point elements in
LS-DYNA, 256 fully integrated quadratic Lagrange polynomial elements, and the 256 fully
integrated quadratic NURBS elements.
modes with reduced integration. The recently proposed integration method [33] for NURBS should
show an even greater improvement.
The peak plastic strain occurs at the center of the face of the bar striking the rigid wall (note
that calculations were performed taking advantage of symmetry). The peak plastic strains are
reported in Table I obtained from the integration points for the standard 1-point elements, and
from the plastic strains projected from integration points in the generalized elements onto the
interpolation elements. All the projection weights in the NURBS elements are positive and sum to
1.0, and, therefore, the projected values are bounded by the maximum and minimum values from
the computational mesh, i.e. the reported maximum plastic strains are guaranteed to be less than,
or equal, to the actual integration point values.
Comparing the peak plastic strains for the NURBS elements, it is almost uniformly true that
the values for reduced integration are lower than for the cases with full integration. This result
is counter-intuitive based on the response of standard finite elements, where reduced integration
reduces both volumetric and shear locking, leading to larger deformations and plastic strains.
NURBS basis functions do not experience locking to the same degree as Lagrange basis functions,
and, therefore, reduced integration increases the deformations very little. Full integration, however,
has integration points that are closer to the element boundary than reduced integration. Therefore,
full integration has an integration point closer to the actual point of maximum plastic strain than
reduced integration, and resolves the peak plastic strain for this particular problem better than
reduced integration.
The total CPU times reported in Table I indicate relative trends, however, the performance was
not optimized. For example, the rigid wall considers all the nodes in the mesh, including the nodes
used in the interpolation elements. There is also a significant overhead associated with processing
the interpolation elements and nodes for output. Despite these limitations, the generalized elements
are competitive with the production 1-point element in LS-DYNA. Using only 256 quadratic
isogeometric elements with reduced integration, the peak plastic strain is 2.42 after 3.9 CPU
seconds, whereas the 2048 1-point elements give a peak plastic strain of 2.16 at a cost of 4.6 CPU
seconds.
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme
ELEMENT FORMULATION FOR ARBITRARY BASIS FUNCTIONS 779
Conventional wisdom says the stable time step size decreases rapidly with an increase of the
degree of the basis function. This is reinforced by the results using the Lagrange polynomial basis
functions. For the same number of nodes, the quadratic elements have a time step size roughly
half the size of the linear elements. In the case of the NURBS elements, however, the time step
size decreases much more slowly as the degree increases.
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme
780 D. J. BENSON ET AL.
Figure 5. The design of an analysis suitable T-spline bumper model: (a) A cubic NURBS models the
general shape of the bumper model; (b) a trimming curve is placed where additional geometric features are
desired; and (c) the NURBS geometry upon application of the trimming curve. The application of trimming
curves destroys the analysis suitable nature of the geometric NURBS basis; (d) the trimmed NURBS
is converted into an untrimmed T-spline. The conversion process generates an unstructured T-mesh that
matches the topology of the trimmed NURBS. The T-spline basis remains analysis suitable; (e) the final
T-mesh for the bumper model; and (f) A rendering of the final T-spline. Notice the global smoothness of
the geometry. The T-spline basis is G 1 continuous in the neighborhood of star points.
The model was generated using the T-spline plug-in for Rhino [36] and the back-end T-Tools
libraries [37]. In Figure 5(a), a simple cubic NURBS is used to model the general shape of the
bumper. It should be noted that NURBS are a very simple type of T-spline without T-junctions or
star points. To add additional topological features to NURBS, it is common to use trimming curves.
Figures 5(b) and (c) show the placement of a trimming curve and the resulting geometry once
the trim is applied. In a design through analysis environment, the application of trimming curves
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme
ELEMENT FORMULATION FOR ARBITRARY BASIS FUNCTIONS 781
destroys the analysis suitable nature of the geometry. The geometric basis no longer describes
the geometry and cannot be used directly in analysis. Using T-splines, however, it is possible to
overcome the NURBS trimming problem by converting a trimmed NURBS into an untrimmed,
watertight, and analysis suitable T-spline. The details of this process are described in [38]. The
conversion process first modifies the topology of the T-mesh to accommodate any trimming curves.
A fitting procedure is then used to match the T-spline surface to the trimming curve. Figure 5(d)
shows the untrimmed T-spline that matches the original trimmed NURBS upon completion of the
conversion process. The T-spline basis in the neighborhood of the star points is G 1 continuous.
Everywhere else the T-spline basis is C 2 continuous as you would expect for a cubic T-spline.
This untrimmed T-spline is now analysis suitable. Additional modeling generates the final bumper
T-mesh and geometry shown in Figures 5(e) and (f).
The final model of the bumper consists of 876 cubic generalized shell elements with 705
control points. Assuming E = 107 , = 0.3, and the thickness is 1.0, the free–free eigenvalues were
calculated. A mode, chosen primarily for its shape, is shown in Figure 6.
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme
782 D. J. BENSON ET AL.
Figure 7. The error in the calculated value of K I as a function of the number of elements and the method
for imposing the boundary conditions.
the least-squares procedure is the most accurate, but in many engineering analyses, the simpler
one may be more than adequate. On the finest mesh with the least squares boundary conditions,
a value of K I = 99.49 was obtained and the x and y strains are shown in Figure 8.
7. CONCLUSIONS
A generalized element formulation for solid and shell elements that separates the definition of the
basis functions and the integration rule from the analysis was introduced. This separation facilitates
(1) the development of a direct design-to-analysis capability, (2) rapid prototyping of elements for
new classes of basis functions, and (3) teaching the finite element method without programming.
While, perhaps, not optimal in either memory usage or speed, this approach provides a means
of accessing the many advanced capabilities of robust, mature production codes for research, and
state-of-the-art analyses.
Example calculations for Lagrange interpolation functions, NURBS, T-Splines, and XFEM
demonstrated the versatility of the formulation. Other types of basis functions can obviously be
used. The elements are defined entirely through the input file and no additional programming is
required once the generalized element formulation is implemented. Any convenient means, e.g.
MATLAB, may be used to calculate the required data.
Excellent accuracy was readily achieved by combining the XFEM approach to linear frac-
ture analysis with the higher-order NURBS basis functions of isogeometric analysis. This was
demonstrated with the generalized elements and did not require any finite element programming.
The feasibility of CAD programs to directly generate models suitable for analysis without an
intermediate mesh generation step was demonstrated using T-Splines with the CAD program Rhino.
Research on CAD basis functions are, therefore, immediately available for use in finite element
analysis.
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme
ELEMENT FORMULATION FOR ARBITRARY BASIS FUNCTIONS 783
Figure 8. The x and y strains calculated using the XFEM with fifth degree NURBS basis functions. The
top and bottom rows show the results calculated with 3×3 and 11×11 element meshes, respectively.
ACKNOWLEDGEMENTS
This research was supported by NSF grant 0700204 (Dr Joycelyn S. Harrison, program officer) and ONR
grants N00014-08-1-0992 and N00014-08-1-1191 (Dr Luise Couchman, contract monitor).
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme
784 D. J. BENSON ET AL.
REFERENCES
1. Hughes TJR, Cottrell J, Bazilevs Y. Isogeometric analysis: CAD, finite elements, NURBS, exact geometry, and
mesh refinement. Computer Methods in Applied Mechanics and Engineering 2005; 194:4135–4195.
2. Cottrell J, Reali A, Bazilevs Y, Hughes TJR. Isogeometric analysis of structural vibrations. Computer Methods
in Applied Mechanics and Engineering 2006; 195:5257–5297.
3. Dörfel M, Jüttler B, Simeon B. Adaptive isogeometric analysis by local h-refinement with T-splines. Computer
Methods in Applied Mechanics and Engineering 2010; 199:264–275.
4. Bazilevs Y, Calo V, Cottrell J, Evans J, Hughes TJR, Lipton S, Scott M, Sederberg T. Isogeometric analysis
using T-splines. Computer Methods in Applied Mechanics and Engineering 2010; 199:229–263.
5. Cirak F, Ortiz M, Schröder P. Subdivision surfaces: a new paradigm for thin shell analysis. International Journal
for Numerical Methods in Engineering 2000; 47:2039–2072.
6. Cirak F, Ortiz M. Fully C 1 -conforming subdivision elements for finite deformation thin shell analysis. International
Journal for Numerical Methods in Engineering 2001; 51:813–833.
7. Cirak F, Scott MJ, Antonsson EK, Ortiz M, Schröder P. Integrated modeling, finite-element analysis, and
engineering design for thin-shell structures using subdivision. Computer-Aided Design 2002; 34:137–148.
8. Bazilevs Y, Calo V, Zhang Y, Hughes TJR. Isogeometric fluid–structure interaction analysis with applications to
arterial blood flow. Computational Mechanics 2006; 38:310–322.
9. Bazilevs Y, Calo V, Cottrel J, Hughes TJR, Reali A, Scovazzi G. Variational multiscale residual-based turbulence
modeling for large eddy simulation of incompressible flows. Computer Methods in Applied Mechanics and
Engineering 2007; 197:173–201.
10. Akkerman I, Bazilevs Y, Calo V, Hughes TJR, Hulshoff S. The role of continuity in residual-based variational
multiscale modeling of turbulence. Computational Mechanics 2008; 41:371–378.
11. Bazilevs Y, Hughes TJR. NURBS-based isogeometric analysis for the computation of flows about rotating
components. Computational Mechanics 2008; 43:143–150.
12. Bazilevs Y, Calo V, Hughes TJR, Zhang Y. Isogeometric fluid-structure interaction: theory, algorithms, and
computations. Computational Mechanics 2008; 43:3–37.
13. Wall WA, Frenzel MA, Cyron C. Isogeometric structural shape optimization. Computer Methods in Applied
Mechanics and Engineering 2008; 197:2976–2988.
14. Hughes TJR, Reali A, Sangalli G. Duality and unified analysis of discrete approximations in structural dynamics
and wave propagation: Comparison of p-method finite elements with k-method nurbs. Computer Methods in
Applied Mechanics and Engineering 2008; 197:4104–4124.
15. Lipton S, Evans J, Bazilevs Y, Elguedj T, Hughes TJR. Robustness of isogeometric structural discretizations
under severe mesh distortion. Computer Methods in Applied Mechanics and Engineering 2009; DOI:
10.1016/j.cma.2009.01.022.
16. Belytschko T, Black T. Elastic crack growth in finite elements with minimal remeshing. International Journal
for Numerical Methods in Engineering 1999; 45(5):603–620.
17. Moes N, Dolbow J, Belytschko T. A finite element method for crack growth without remeshing. International
Journal for Numerical Methods in Engineering 1999; 46(1):131–150.
18. Sukumar N, Moes N, Moran B, Belytschko T. Extended finite element method for three-dimensional crack
modelling. International Journal for Numerical Methods in Engineering 2000; 48(11):1549–1570.
19. Ventural G, Gracie R, Belytschko T. Fast integration and weight function blending in the extended finite element
method. International Journal for Numerical Methods in Engineering 2009; 77:1–29.
20. Vitali E, Benson DJ. An extended finite element formulation for contact in multi-material arbitrary Lagrangian–
Eulerian calculations. International Journal for Numerical Methods in Engineering 2006; 67(10):1420–1444.
21. Vitali E, Benson DJ. Contact with friction in multi-material arbitrary Lagrangian–Eulerian formulations using
X-FEM. International Journal for Numerical Methods in Engineering 2008; 76(6):893–921.
22. Hallquist JO. LS-DYNA theoretical manual. Technical Report, Livermore Software Technology Corporation,
1998.
23. Benson DJ, Bazilevs Y, Hsu MC, Hughes TJR. Isogeometric shell analysis: The Reissner–Mindlin shell. Computer
Methods in Applied Mechanics and Engineering 2010; 199:276–289. Available at: http://www.sciencedirect.com/
science/article/B6V29-4WC1126-1/2/b073c14a2534022b5eda8399974d6164.
24. Piegl L, Tiller W. The NURBS Book (Monographs in Visual Communication) (2nd edn). Springer: New York,
1997.
25. Hughes TJR. The Finite Element Method, Linear Static and Dynamic Finite Element Analysis. Dover: New York,
2000.
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme
ELEMENT FORMULATION FOR ARBITRARY BASIS FUNCTIONS 785
26. Benson DJ. Stable time step estimation for multi-material Eulerian hydrocodes. Computer Methods in Applied
Mechanics and Engineering 1998; 167:191–205.
27. Hallquist JO. LS-DYNA keyword user’s manual. Technical Report, Livermore Software Technology Corporation,
2007.
28. Bischoff M, Wall MA, Bletzinger K, Ramm E. Models and finite elements for thin-walled structures. In
Encyclopedia of Computational Mechanics, Solids, Structures and Coupled Problems, Stein E, de Borst R,
Hughes TJR (eds), vol. 2, Chapter 3. Wiley: New York, 2004.
29. Hughes TJR, Liu W. Non-linear finite element analysis of shells: Part I. Three-dimensional shells. Computer
Methods in Applied Mechanics and Engineering 1981; 26:331–362.
30. Belytschko T, Lin JI, Tsay CS. Explicit algorithms for the non-linear dynamics of shells. Computer Methods in
Applied Mechanics and Engineering 1984; 42:225–251.
31. Belytschko T, Liu WK, Moran B. Non-linear Finite Elements for Continua and Structures. Wiley: West Sussex,
England, 2001.
32. Elguedj T, Bazilevs Y, Calo V, Hughes TJR. B̄ and F̄ projection methods for nearly incompressible linear and
non-linear elasticity and plasticity using higher-order NURBS elements. Computer Methods in Applied Mechanics
and Engineering 2008; 197:2732–2762.
33. Hughes TJR, Reali A, Sangalli G. Efficient quadrature for NURBS-based isogeometric analysis. Computer
Methods in Applied Mechanics and Engineering 2010; 199:301–313. Available at: http://www.sciencedirect.com/
science/article/B6V29-4V75YNJ-1/2a88a102a5291e66436f127c234077e1e.
34. Sederberg T, Zheng J, Bakenov A, Nasri A. T-splines and T-NURCCSs. ACM Transactions on Graphics 2003;
22(3):477–484.
35. Sederberg T, Cardon D, Finnigan G, North N, Zheng J, Lyche T. T-spline simplification and local refinement.
ACM Transactions on Graphics 2004; 23(3):276–283.
36. T-Splines, Inc. http://www.tsplines.com/products/tsplines-for-rhino.html.
37. T-Splines, Inc. http://www.tsplines.com/products/t-tools-libraries.html.
38. Sederberg T, Finnigan G, Li X, Lin H. Watertight trimmed NURBS. ACM Transactions on Graphics 2008; 27(3).
Copyright q 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 83:765–785
DOI: 10.1002/nme