0% found this document useful (0 votes)
96 views

A Unified Library of Nonlinear Solution Schemes: Sofie E. Leon Glaucio H. Paulino

This document provides a summary of a unified library of nonlinear solution schemes. It discusses how several common nonlinear solution methods, including load control, displacement control, work control, arc-length control, generalized displacement control, and orthogonal residual control, can be unified within a single framework through the use of a constraint equation and load parameter. This unified approach provides a standardized way to implement various nonlinear solvers and allows additional solution schemes to be easily incorporated. It also allows the strengths and weaknesses of different methods to be systematically evaluated on numerical examples.

Uploaded by

ahmed_shaban_2
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
96 views

A Unified Library of Nonlinear Solution Schemes: Sofie E. Leon Glaucio H. Paulino

This document provides a summary of a unified library of nonlinear solution schemes. It discusses how several common nonlinear solution methods, including load control, displacement control, work control, arc-length control, generalized displacement control, and orthogonal residual control, can be unified within a single framework through the use of a constraint equation and load parameter. This unified approach provides a standardized way to implement various nonlinear solvers and allows additional solution schemes to be easily incorporated. It also allows the strengths and weaknesses of different methods to be systematically evaluated on numerical examples.

Uploaded by

ahmed_shaban_2
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 37

A Unied Library of Nonlinear Solution Schemes

Soe E. Leon
Graduate Research Fellow
Department of Civil and
Environmental Engineering
University of Illinois at
Urbana-Champaign
Urbana, Illinois 61801
Email: [email protected]
Glaucio H. Paulino

Donald B. Willett Professor of Engineering


Department of Civil and
Environmental Engineering
University of Illinois at
Urbana-Champaign
Urbana, Illinois 61801
Email: [email protected]
Anderson Pereira
Research Scientist
Group of Technology in
Computer Graphics
Tecgraf
Pontical Catholic University
of Rio de Janeiro
Rio de Janeiro, Rio de Janeiro, 22451
Brazil
Email: [email protected]
Ivan F. M. Menezes
Research Scientist
Group of Technology in
Computer Graphics
Tecgraf
Pontical Catholic University
of Rio de Janeiro
Rio de Janeiro, Rio de Janeiro, 22451
Brazil
Email: [email protected]
Eduardo N. Lages
Associate Professor
Center of Technology
Federal University of Alagoas
Maceio, Alagoas, 57072
Brazil
Email: [email protected]
Nonlinear problems are prevalent in structural and con-
tinuum mechanics, and there is high demand for computa-
tional tools to solve these problems. Despite efforts to de-
velop efcient and effective algorithms, one single algorithm
may not be capable of solving any and all nonlinear prob-
lems. A brief review of recent nonlinear solution techniques
is rst presented. Emphasis, however, is placed on the re-
view of load, displacement, arc-length, work, generalized
displacement, and orthogonal residual control algorithms,
which are unied into a single framework. Each of these so-
lution schemes differs in the use of a constraint equation for
the incremental-iterative procedure. The governing nite el-
ement equations and constraint equation for each solution
scheme are combined into a single matrix equation, which
characterizes the unied approach. This conceptual model
leads naturally to an effective object-oriented implementa-
tion. Within the unied framework, the strengths and weak-

Corresponding author
nesses of the various solution schemes are examined through
numerical examples.
1 Introduction
Nonlinear problems are prevalent in structural and con-
tinuum mechanics, however one single nonlinear solution
method may not be capable of solving any general nonlin-
ear problem. Depending on the problem and the severity of
the nonlinearities, modications to solution algorithms are
necessary to recover the entire equilibrium path. Bergan et
al. [1] stated
a computer program for non-linear analysis should
possess several alternative algorithms for the solu-
tion of the non-linear system. These procedures
should also allow for the possibility of an extensive
control over the solution process by parameters that
are input to the program. Such a scheme would lead
to increased exibility, and the experienced user has
the possibility of obtaining improved reliability and
efciency for the solution of a particular problem.
Many authors have developed families of nonlinear solution
schemes, which can be adjusted by the user depending on
the problem. Mondkar and Powell [2] developed a library
of algorithms based on the Newton-Raphson method. Seven
solution schemes were formulated from 11 control parame-
ters (stiffness update type and frequency, convergence toler-
ance, etc.) and tested on several nonlinear structural systems.
Clarke and Hancock [3] used the concept of load increment
from the standard or modied Newton-Raphson method to
unify several nonlinear solution schemes through a single
load factor. The specic incremental-iterative procedure de-
pends on the chosen constraint equation, which is used to
calculate the unifying load factor. The constraint equations
are based on iterations at constant load, displacement, work,
arc-length, or minimum residual. Yang and Sheih [4] and
Yang and Kuo [5] presented a similar library of nonlinear
solvers unied through a single load parameter, and included
the generalized displacement control method. More recently
Rezaiee-Pajand et al. [6] unied ve nonlinear solution
schemes through a single general constraint equation. The
schemes were identied by ve different constraints, includ-
ing minimizing error by means of its length, area, or perime-
ter, and then the strengths and weaknesses of each algorithm
were evaluated.
The library of nonlinear solution schemes explored in
this review is similar to its predecessors in that several so-
lution schemes, dened by a constraint equation, are unied
into a single space by means of a load parameter. The meth-
ods include load control, displacement control, work control,
arc-length control, generalized displacement control, and the
orthogonal residual procedure, which until now has not been
incorporated into a collection of unied schemes. The uni-
ed schemes are formulated and implemented such that (i)
additional nonlinear solution schemes are readily incorpo-
rated and (ii) integration into a nite element analysis code
is straightforward.
1.1 On Nonlinear Systems
Nonlinear behavior can arise from either material or ge-
ometric nonlinearity. In the former, the constitutive relation
describing the material is itself nonlinear and the structural
response associated with physical phenomena such as plas-
ticity or strain-softening must be captured. In the latter, non-
linearity is due to changes in geometry, arising from large
strains and/or rotations, which enter the formulation from
a nonlinear strain-displacement relationship, and may occur
even if the constitutive relation is linear [7]. Furthermore, in
geometric nonlinear problems, the applied loads will either
have an effect on the deformed conguration, or the cong-
uration will have an effect on the load (e.g. follower loads
[8]).
Nonlinear problems arising from either geometric or
material nonlinearity feature critical points along the solu-
tion path. Critical points or stability points, shown in Fig.
Stable Unstable Stable
A
B
C
D
E
Load
nt Displaceme
Point
Limit Load
Point
Limit Load
Points Limit
nt Displaceme
O
Figure 1. Critical points in nonlinear equilibrium paths
1, are points on the solution path where the structure loses
stability (e.g. buckling) or where bifurcation occurs (i.e. so-
lution switches to two or more branches). Load limit points
occur when a local maximum or minimum load is reached
on the load versus displacement curve, as shown at points A
and D in Fig. 1. A horizontal tangent is present at load limit
points. Displacement limit points, shown at points B and C
in Fig. 1, occur at vertical tangents on the solution curve.
Displacement limit points are also commonly referred to as
snap-back points or turning points in the literature. Meth-
ods capable of passing displacement limit points are said to
capture snap-back behavior.
In this context, stability is directly related to load limit
points, as shown in Fig. 1, where the region between the
load limit points is unstable. The unstable region following
a load limit point corresponds to a physical instability in the
structural system, such as buckling. Using the theory of sta-
bility in a conservative system, a critical point occurs when
the stiffness matrix is singular [9]. Some methods for tracing
nonlinear load versus displacement curves are not capable
of capturing behavior beyond a load limit point, and instead
these methods yield snap-through behavior. The unstable re-
gion of the equilibrium path, shown as the dashed line in Fig.
2, is not traced; the curve snaps through and only the portions
with increasing loads are captured.
Tracing an equilibrium path beyond the simple linear
region and into a nonlinear region is an important task in
structural analysis. While in some cases it may seem unnec-
essary to trace a path beyond the rst load limit point, the
full equilibrium path, including critical points and regions of
instability, gives more information about the structural be-
havior than a simpler analysis [10]. Once a structure passes
a load limit point, the nature of the unloading may be of im-
portance to the analyst, rather than just the loading behavior.
Additionally, information about the structural response past
a displacement limit point may be of importance. For in-
stance, if snap-back behavior was not captured in Figure 1,
the structure would appear to have a sharp drop in the load
A
Load
E
nt Displaceme
O
Figure 2. Snap through behavior
at point B and the nature of the unloading would be lost. For
further discussion on nonlinear systems the reader is referred
to the following references [1116].
1.2 Purely Incremental and Incremental-Iterative
Methods
A nonlinear equilibrium path can be traced by means
of either a purely incremental procedure or an incremental-
iterative procedure. In an incremental procedure, shown in
Fig. 3, the load is applied at relatively small load steps and
the structure is assumed to respond linearly within each step.
This method is simple to implement, however as the solution
progresses, it diverges considerably from the actual equilib-
rium path because equilibrium is not guaranteed at every step
[2, 5]. Conversely, in an incremental-iterative procedure, a
series of iterations or corrections are performed at each incre-
mental step until a specied convergence criterion is satised
(see Fig. 4). Hence, the current increment in Fig. 4 advances
the equilibrium curve from point A to point B, and the itera-
tions occur within the increment, as indicated by the dotted
line. If convergence is achieved before a maximum number
of iterations is reached then equilibrium is satised for that
step. Typically, convergence criteria is based on the ratio of
the norm of the unbalanced forces to the norm of the applied
loads at that incremental step. The incremental-iterative ap-
proach is accurate, but it comes with a higher computational
cost. Incremental-iterative procedures are used for highly
nonlinear behavior, and they will be the focus of this review.
The notation used in Fig. 4 denoting increments and it-
erations will be used in the remainder of this work: an incre-
ment is denoted with the superscript i, and iterations within
the i
th
incremental step are denoted with the subscript j.
Due to the nature of the nonlinear problems, the inter-
nal forces, q
i
j
q(u
i
j
), are a function of the displacements,
u
i
j
, and are not necessarily in equilibrium with the externally
applied forces, p
i
j
. Thus, an unbalanced force or a residual
r
i
j
= p
i
j
q(u
i
j
) is generated.
The displacement and external loads are computed by
adding the contributions from the previously converged equi-
Load
nt Displaceme
p
u
Path
l Incrementa
Path
m Equilibriu
Figure 3. Purely incremental procedure
Surface
Constraint
i
u
i
p
Load
nt Displaceme
iterations
After j
Relation
Linearized
!
1 i
u q
!
1 1
,
i i
p u
p
i
j
!
A
B
Figure 4. Incremental-iterative procedure
librium conguration, (i.e. increment i 1) to the incremen-
tal updates at the current, j
th
, iteration of the current, i
th
,
increment. Thus
u
i
j
= u
i1
+Du
i
j
(1)
p
i
j
= p
i1
+Dp
i
j
(2)
Similarly, the incremental updates at step i are computed
by adding the contributions fromthe previous, j 1, iteration
and iterative updates from the current, j
th
, iteration, i.e.
Du
i
j
= Du
i
j1
+du
i
j
(3)
Dp
i
j
= Dp
i
j1
+dp
i
j
(4)
where Du
i
j
and Dp
i
j
are the incremental displacement and
force vectors, respectively, and du
i
j
and dp
i
j
are the iterative
displacement and force vectors, respectively, in iteration j of
step i. The residual vector is given by
r
i
j
= p
i1
+Dp
i
j
q(u
i1
+Du
i
j
) (5)
The governing system of nonlinear equations to be
solved at the j
th
iteration of the i
th
incremental step is given
by
K
i
j1
du
i
j
= p
i
j
q
i
j1
(6)
where the tangent matrix, K
i
j1
, may either be computed in
accordance with a standard update method or with a modi-
ed update method. In the former method, the tangent matrix
is calculated at the beginning of each iteration (Fig. 5(a)),
while in the latter the tangent matrix is only computed at
the beginning of each incremental step and held constant for
each iteration, i.e. K
i
j1
= K
i
0
for j 2 (Fig. 5(b)). The
modied method has a lower computational cost at each it-
eration than the standard version, but convergence is usually
slower.
1.3 Paper Organization
First, a general review of nonlinear solution procedures
is provided in Section 2. The unied nonlinear solution
schemes are reviewed and cast into the (N+1) dimensional
space in Section 3. The object-oriented implementation of
the unied schemes in the (N+1) dimensional space is pre-
sented in Section 4. The unied schemes are evaluated
through a set of numerical experiments, which are shown
and discussed in Section 5. Distribution of the code used to
solve the example problems is described in Section 5.3. We
conclude with a summary and potential research extensions
in Section 6. Finally, Appendix A contains details of the an-
alytical solution of one of examples explored in Section 5.1.
2 Related Work
To provide a comprehensive overview of the current
state of the art in nonlinear solution procedures, methods that
are not incorporated into the unied schemes are briey re-
viewed here. The literature on nonlinear solution schemes
and their applications is extensive, therefore the references
in this section compose a rather incomplete list. For a more
extensive discussion, the reader is directed to references [17
21]. Different families of methods are addressed here in-
cluding: (i) methods based on Adomian decomposition, (ii)
nt Displaceme
(a)
(b)
Load
Update
Modified
A
B
p
u
Update
Standard
Load
p
A
B
u
nt Displaceme
Figure 5. (a) Standard and (b) Modied updates to the tangent ma-
trix
methods based on Homotopy perturbation, (iii) variations of
Newtons method (iv) methods to compute the locations of
limit points, and (v) other libraries and toolkits.
(i) The Adomian decomposition method was originally de-
veloped to solve nonlinear stochastic differential equations
[22]. Adomian and Rach [23] generalized the method to
solve nonlinear systems of equations. The Adomian method
consists of expressing the solution of a nonlinear equation as
an innite series. The nonlinear function used to represent
the solution can be decomposed by the so-called Adomian
polynomials. In a review by Adomian [17], it was stated that
the method provides solutions that are more physically real-
istic than other methods because it solves nonlinear problems
rather than linearizing them. Abbaoui and Cherruault [24]
address difculties associated with the Adomian decomposi-
tion method by computing Adomian polynomials and prov-
ing convergence of the decomposition series. Recent modi-
cations of the Adomian decomposition technique have led
to new methods with accelerated convergence [2529]. Al-
ternative decomposition methods have also been used to de-
velop iterative schemes [30].
(ii) Another class of methods is based on coupling of ho-
motopy and perturbation techniques. The homotopy is con-
structed using an embedding parameter p 2 [0, 1], then the
perturbation technique is applied to arrive at an iterative
scheme. For a more detailed explanation of the method,
the reader is referred to the works by He [3134]. Several
authors have expanded upon this method to create new it-
eration schemes [35], or pass load limit points in nonlinear
geometric analysis [36], for example. The method has also
been used for various applications including nonlinear wave
equations [3739], nonlinear heat transfer [4042], and cal-
culating Adomian polynomials [4345], to name a few.
(iii) Many methods are derived based on variations of New-
tons method. For example, some methods have third-order
convergence, unlike the traditional Newton method which is
quadratically convergent, and they do not require calcula-
tion of second derivatives. However these methods require
evaluation of the function and rst derivatives at multiple
points [21, 46]. Different quadrature formulas have been
used to approximate the indenite integral that arises with
Newtons method to develop new incremental iterative pro-
cedures [4749]. Another third order method was developed
in [50] where Newtons method is used for the inverse func-
tion. While the previous methods do not require computa-
tion of second derivatives, Chebyshev-type methods approx-
imate the second derivatives using evaluations of the function
and rst derivatives [51, 52]. Families of higher order meth-
ods have been used to further improve converge of Newton-
Raphson type methods including a fourth- to eighth-order
methods [5355].
(iv) Some methods are successful at tracing beyond load
and displacement limit points, however many do not directly
compute the location of such points. In the following stud-
ies, a rigorous approach is used to determine the location of
stability points. Wriggers and Simo [56] appended the lin-
earized eigenproblem as a constraint to characterize the pres-
ence of limit points to the nonlinear system of equations. The
solution of the extended system therefore, includes the type
of limit point (i.e. bifurcation or displacement limit point)
in addition to the load factor and displacement eld. Other
methods for detecting limit points examine the determinant
[57] or eigenvalues [58] of the tangent stiffness matrix, or
use a homotopy method [59].
(v) In addition to individual solution schemes, libraries and
tool kits for solving systems modeled by partial differential
equations have also been developed. The Portable, Extensi-
ble Toolkit for Scientic Computation (PETSc) [6062], for
instance, is a suite of routines designed to solve large-scale
applications through utilization of parallel linear and nonlin-
ear solvers, including a parallel Newton-based solver. The
libMesh library [63], which is a platform to perform numer-
ical simulation of partial differential equations using arbi-
trary unstructured discretizations, utilizes the parallel solvers
present in PETSc. Similarly, the Library of Continuation
Algorithms, LOCA [64], was developed at Sandia National
Laboratories in Albuquerque, New Mexico to perform stabil-
ity analysis on large scale problems by tracking multiple so-
lution branches and bifurcation points. The software, LOCA,
supports a variety of algorithms.
3 Unied Nonlinear Solution Schemes
Load control, displacement control, arc-length control,
work control, generalized displacement control, and orthog-
onal residual procedure schemes are presented in the context
of the unied approach. The solution schemes are inherently
different in their formulations and therefore feature unique
constraint equations for the incremental-iterative procedure.
The governing nite element equations and constraint equa-
tion are combined into a single matrix equation, which will
be used to characterize the unied approach.
3.1 N+1 Dimensional Space Formulation
The formulation of the (N+1) dimensional space be-
gins with the general incremental-iterative procedure dis-
cussed in Section 1.2. The iterative load parameter, dl
i
j
, is
introduced into Eqns. 2 and 4 by replacing dp
i
j
with dl
i
j
p,
where p is a reference load vector [4].
p
i
j
= p
i1
+Dp
i
j1
+dl
i
j
p (7)
Equations 5, 6, and 7, are combined to give the following
system of equations
K
i
j1
du
i
j
= r
i
j1
+dl
i
j
p (8)
Equation 8 is a systemof (N+1) unknowns, N displace-
ment components (du
i
j
) and one load parameter (dl
i
j
), but
only N equations. Therefore, an additional constraint equa-
tion must be added to the system, given by [5]
a
i
j
du
i
j
+b
i
j
dl
i
j
= c
i
j
(9)
Equations 8 and 9 yield a system of (N+1) equations
and (N+1) unknowns
_
K
i
j1
p
(a
i
j
)
T
b
i
j
_
du
j
dl
i
j
_
=

r
i
j1
c
i
j
_
(10)
The augmented system matrix is no longer symmetric
and has a signicantly increased bandwidth due to the added
load parameter. The solution of this system with a traditional
method would be computationally undesirable with respect
to both storage and efciency. However, Batoz and Dhatt
presented a technique to overcome this problem [65], which
consists of decomposing the iterative displacement vector
into two parts
du
i
j
= dl
i
j
du
p
i
j
+du
r
i
j
(11)
Then Eqn. 8 becomes
K
i
j1
du
p
i
j
= p
K
i
j1
du
r
i
j
= r
i
j1
(12)
It is clear that Eqns. 12 and 8 are mathematically equiva-
lent by means of Eqn. 11. Moreover, du
p
i
j
and du
r
i
j
, are
computed using the original system matrix, K
i
j1
, and the
banded and symmetric properties of the original system re-
main intact [66]. Finally, the load parameter is needed to
compute the total displacement for the j
th
iteration of the i
th
incremental step. Solving Eqn. 9 for the load parameter and
combining with Eqn. 11 yields
dl
i
j
=
c
i
j
a
i
j
du
r
i
j
a
i
j
du
p
i
j
+b
i
j
(13)
The constraint equation will be directly associated with a par-
ticular nonlinear solution scheme. Or, in other words, the for-
mulation of each nonlinear solution scheme into the (N +1)
space will give rise to the constraint parameters, a
i
j
, b
i
j
, and
c
i
j
.
3.2 Nonlinear Solution Schemes
The unied methods include load control, displacement
control, work control, arc-length control, generalized dis-
placement control, and the orthogonal residual procedure.
Each of the methods is reviewed and cast into the (N+1)
dimensional space in the following subsections.
3.2.1 Load Control Method (LCM)
Traditionally, load control methods (LCM) or Newton-
Raphson type methods have been the most popular for solv-
ing nonlinear system of equations [2, 67]. Furthermore,
many advances in nonlinear solvers consist of variations of
the basic Newton-Raphson method [68, 69].
External loads are computed at the rst iteration of each
incremental step and held constant throughout the remaining
iterations in the step, as illustrated in Fig. 6. Hence, the load
factor is
dl
i
j
=
_
prescribed value
0
for j = 1
for j 2
(14)
A
B
Surface
Constraint

i
u

u
Figure 6. Load control method
The constraint parameters are obtained by equating Eqn. 14
and Eqn. 13, such that
a
i
j
= 0 (15)
b
i
j
= 1 (16)
c
i
j
=
_
Dl
0
for j = 1
for j 2
(17)
where Dl is a prescribed initial load factor. Because this
method imposes the load factor, the system has only N un-
knowns and the decomposition of Eqn. 8 is not needed. In-
stead, the system can be solved from Eqn. 8 directly, i.e.
K
i
j1
du
i
1
= Dlp for j = 1
K
i
j1
du
i
j
= r
i
j1
for j 2
(18)
This method is widely used and extremely robust, as in-
dicated by Caballero et al. [70]who use it in modeling frac-
ture of quasi-brittle material. it has inherent weaknesses.
Since the externally applied loads are kept constant, this
method has difculties near load limit points. Yang and
Sheih [4] further showed that the constraint parameters im-
posed by this method will yield unbounded displacements
near load limit points when the tangent matrix is nearly sin-
gular.
3.2.2 Displacement Control Method (DCM)
Analogous to the LCM with a xed load parameter, the
displacement control method (DCM) uses a xed displace-
ment component as the control parameter to trace the equi-
librium path. In multi-degree of freedom systems, one dis-
placement component is selected as the control component,
denoted by du
i
j
CTRL
, such that
du
i
j
ctrl
=
_
prescribed value
0
for j = 1
for j 2
(19)
Equation 11 is solved for the control parameter with respect
to the control component, giving
dl
i
j
=
du
i
j
ctrl
du
r
i
j
ctrl
du
p
i
j
ctrl
(20)
On the rst iteration the residual will be zero, so du
r
i
j
must
also be zero, as evident from Eqn. 12. The expression for
dl
i
j
reduces to the following
dl
i
j
=
_

_
du
i
j
ctrl
du
p
i
j
ctrl
for j = 1

du
r
i
j
ctrl
du
p
i
j
ctrl
for j 2
(21)
The constraint parameters are obtained by comparing Eqn.
21 and Eqn. 13
a
i
j
=
[0, 0, ...1, ..., 0]
. .
control displacement
(22)
b
i
j
= 0 (23)
c
i
j
=
_
Du
0
for j = 1
for j 2
(24)
Finally, the load factor is given by
dl
i
j
=
_

_
Du
du
p
i
j
ctrl
for j = 1

du
r
i
j
ctrl
du
p
i
j
ctrl
for j 2
(25)
where Du is the prescribed initial displacement. A schematic
of the DCM for a one dimensional problem is shown in Fig.
7. The prescribed displacement dictates the constraint sur-
face on the rst iteration in accordance with Eqn. 25, then
the direction of the load parameter changes for subsequent
iterations. Notice that the ratio of the iterative load to the it-
erative displacement (i.e. Du for j =1 and du
r
i
j
ctrl
for j 2)
remains xed throughout the iterative process, see Eqn. 25.

Surface
Constraint
i

A
B
u
u

1
i
i
2 r
u

2
i
Figure 7. Displacement control method
The displacement control method can capture load limit
points, however, it fails near displacement limit points. Yang
and Sheih [4] showed that the control displacement, du
p
i
j
ctrl
,
approaches zero at displacement limit points, and the load
parameter approaches innity, hence numerical instability
occurs at displacement limit points.
Variable Displacement Control Method (Variable DCM)
In the standard DCM, the control parameter is selected
intuitively or empirically, and remains xed during the whole
path-tracing process. To circumvent this drawback, Fujii et
al. [71] devised a technique to systematically select the best
control parameter. A decreasing component of the displace-
ment vector may suggest that a displacement limit point is
approaching in that component. However, the largest com-
ponent of the displacement vector is the least likely compo-
nent to experience a displacement limit point. The best can-
didate for the control component is therefore the one with
the maximum absolute value of displacement. The sign of
this component should also be retained to ensure the correct
direction of equilibrium tracing. With this minor modi-
cation, the variable DCM can potentially capture displace-
ment limit points. The constraint parameters and load factor
for the variable DCM are the same as those of the standard
DCM, however the control displacement is not necessarily
xed throughout the incremental-iterative process. For ex-
ample, the non-zero component of a
i
j
in Eqn. 22 may be
different than the non-zero component of a
i+1
j
. Thus,
a
i
j
=
[0, 0, ...1, ..., 0]
. .
variable control displacement
Simons and Bergan [72] also developed an extension of
i
2
u
i
3
u
i
1
u u
i
1

i
2

i
3

Surface
Constraint
B
i
s
1

A
1 = j
2 = j
3 = j
Figure 8. Arc-length control method
the traditional displacement control method that potentially
captures snap-back. Unloading is steered via a reference dis-
placement which is based on a linear combination of the dis-
placement vectors of possible failure modes.
3.2.3 Arc-Length Control Method (ALCM)
The most typical example of a nonlinear solution
scheme which considers simultaneous iteration on both the
load and displacement variables is the arc-length method
(ALCM). The premise of the method is to constrain the so-
lution path to an arc-length, Ds
i
j
. The arc-length is calculated
via a norm of the increment (Du
i
j
, Dl
i
j
). Several versions of
the arc-length method, including cylindrical, spherical and
elliptical can be represented by the general constraint equa-
tion
Du
i
j
Du
i
j
+h(Dl
i
j
)
2
= (Ds
i
j
)
2
(26)
where h is a non-negative real parameter, which is unique
for each version of the arc-length method. Figure 8 illus-
trates the incremental-iterative procedure of the arc-length
method for a one-dimensional problem. An initial arc-length
is determined in accordance with Eqn. 26, then subsequent
iterations lie on the constraint surface created by the arc. It-
erations eventually converge at the intersection of the arc and
the equilibrium path.
Spherical Arc-Length Control Method The spherical
arc-length method, [10, 73], sets the scaling parameter to
one. The constraint equation becomes
Du
i
j
Du
i
j
+(Dl
i
j
)
2
= (Ds
i
j
)
2
(27)
The constraint equation now represents a sphere in three di-
mensional space, as shown in Fig. 9(a). Through several
benchmark problems, Bellini and Chulya [74] demonstrated
that in areas of very high slope this method may have dif-
culties. The initial arc-length may be adjusted such that it
becomes very small, however this increases the number of in-
cremental steps to trace the entire equilibrium path, thereby
increasing computational time.
Cylindrical Arc-Length Control Method As indicated
by Criseld [10], the cylindrical arc-length method consists
of setting h to zero. Bellini and Chulya [74] illustrated the
effectiveness of this version in capturing sharp turns at load
limit points. The constraint equation represents a cylinder in
three dimensional space,
Du
i
j
Du
i
j
= (Ds
i
j
)
2
(28)
as illustrated by Figure 9(b).
Elliptical Arc-Length Control Method The most general
form is the elliptical arc-length method, where h > 0 and
h 6= 1. Figure 9(c) shows that the constraint equation rep-
resents an ellipsoid in three dimensional space. Park [75]
has proposed a method where the scaling parameter, h, is
the current stiffness parameter, introduced by Bergan et al.
[1]. Bellini and Chulya [74] documented the success of this
particular version of the elliptical arc-length method.
Linearized Arc-Length Control Method The linearized
arc-length method was studied by Wempner [76] and Riks
[67], and investigated further by Riks [9] and Criseld [10].
The main feature of this version is that the iterations are pro-
cessed on a hyperplane, as illustrated in Fig. 10(a). These
methods are also referred to as orthogonal arc-length meth-
ods because, in general, a norm constraint is imposed at the
rst iterative step, then an orthogonality condition is met
in subsequent iterations of that increment. The orthogo-
nality condition determines the type of linearized arc-length
method. For example, in the Fixed Normal Plane version,
the iterative vectors (du
i
j
, dl
i
j
) are orthogonal to the initial
incremental vector (Du
i
1
, Dl
i
1
). In the Updated Normal Plane
version, the iterative vectors (du
i
j
, dl
i
j
) are orthogonal to the
previous incremental vector (Du
i
j1
, Dl
i
j1
). The linearized
versions are shown in Fig. 10(b).
The various versions of the ALCM are closely related,
and Forde and Stiemer [77] unied the formulations of the
normal and updated plane, and spherical versions through
orthogonality relationships.
When the general nonlinear constraint equation of the
arc-length method is adopted, a quadratic equation in terms
of Dl
i
j
is obtained (i.e. Eqn. 26). It is necessary to adopt a
(a) (b)
(c)

A
B
1
u
2
u

2
u
1
u
A
B

2
u
1
u
A
B
s
s
s
Figure 9. (a) Spherical, (b) Cylindrical and (c) Elliptical version of
the arc-length control method.
set of rules to treat either real or complex roots obtained from
the quadratic equation. For real roots, in general, the selected
root is the one that corresponds to the smallest change in the
direction of the iterative displacement vector compared to the
previous displacement vector [74, 78]. Lam and Morley [79]
presented a methodology to avoid complex roots that can
arise in the above mentioned quadratic equation by introduc-
ing a line search technique to nd the real roots. Ritto-Corra
and Camotim [80] developed techniques to avoid complex
roots of the quadratic equation using corrections to the in-
cremental arc-length size.
The constraint in Eqn. 26 can be written with respect to
the iterations rather than the increments.
du
i
1
du
i
j
+hdl
i
1
dl
i
j
= (Ds
i
j
)
2
(29)
Then the following constraint parameters are obtained
a
i
j
= du
i
1
= dl
i
1
du
p
i
1
(30)
b
i
j
= hdl
i
1
(31)
c
i
j
=
_
(DS)
2
0
for j = 1
for j 2
(32)
where DS is the prescribed arc-length to be assigned at the
(a)
A
B

1
u
2
u
(b)
Surface
Constraint
Iterations
Linearized
Iterations
Nonlinear
Plane
Normal Updated
Plane
Normal Fixed
s
A
B
1
B
2
B
Figure 10. (a) Schematic of the linearized arc-length control
method, (b) Updated and xed normal plane versions
rst iteration. The load factor is then given by
dl
i
j
=
_

DS
p
du
p
i
1
du
p
i
1
+h
for j = 1

du
i
1
du
r
i
j
du
i
1
du
p
i
j
+hdl
i
1
for j 2
(33)
The sign of the load factor on the rst iteration is not speci-
ed explicitly, however it should depend on whether the sys-
tems is being loaded or unloaded. The load factor should be
positive in the case of loading and negative for unloading.
The ability of the ALCM to change the sign of the load
factor enables it to capture complex nonlinearities at load and
displacement limit points, however, some weaknesses of the
method have been identied in the literature. For instance,
Carrera [81] documented the failure of several versions of
the arc-length method related to factors including the con-
straint equation, linearization, and computer precision and
presented improved strategies. Ritto-Corra and Camotim
[80] and Feng et al. [82] investigated scenarios where the
ALCM converges incorrectly and presented a technique to
determine the forward direction of the equilibrium path. Sev-
eral authors have identied a potential shortcoming of this
method associated with the units of terms in the load param-
eter. For example, dl
i
1
is a scalar, while the displacements
du contain both translations and rotations, which are of dif-
ferent orders of magnitude [83]. In areas near displacement
limit points with very high gradient, it is possible that dl
i
1
is so large that the sign of dl
i
j
depends only on the angle
between du
i
1
and du
r
i
j
. It follows that the sign of dl
i
j
may
change incorrectly, causing numerical divergence near dis-
placement limit points [4]. It should be noted that the load
factor should only change sign at areas of load limit points,
not at displacement limit points. Al-Rasby [84] developed
a method using diagonal scaling matrices to remove incon-
sistencies associated with mixed units (i.e. displacements,
rotations, forces and moments). The ALCM has been used
in a variety of applications including those associated with
fracture [8588], delamination [89, 90], etc., and to improve
nonlinear capabilities of numerical analysis techniques such
as the Boundary Element Method (BEM) [9195].
3.2.4 Work Control Method (WCM)
Versions of the work control method (WCM) were stud-
ied by Simons and Powell [68], Bathe and Dvorkin [96], and
Yang and McGuire [83]. One of the main motivations for
this method was to overcome the issue of inconsistent phys-
ical units, as discussed for the ALCM. This method uses a
constant work increment, dW
i
j
, through the iterations of an
incremental step
dW
i
j
=
_
prescribed value
0
for j = 1
for j 2
(34)
The constraint equation is given by
dW
i
j
= dl
i
j
p du
i
j
(35)
The constraint parameters can be determined directly
from Eqn. 35, i.e.
a
i
j
= dl
i
j
p (36)
b
i
j
= 0 (37)
c
i
j
=
_
DW
0
for j = 1
for j 2
(38)
where DW is the prescribed work increment. Equation 11 is
substituted into du
i
j
in Eqn. 35, and du
r
i
j
is taken as zero on
the rst iteration, which yields
dl
i
j
=
_

DW
pdu
p
i
1

for j = 1

pdu
r
i
1
pdu
p
i
1
for j 2
(39)
Unlike the arc-length method, the sign of the load param-
eter is easily determined. The term inside the square root,
called the current stiffness parameter [83], indicates whether
the system is being loaded or unloaded. The sign of this
term should be applied to the load parameter: if the term is
positive, the system is being loaded and the load parameter
should increase; and if it is negative, the load is decreasing
and the load parameter should be negative.
Some weaknesses of the work control method have been
examined by Yang and Sheih [4]. A potentially problematic
situation occurs when there are a small number of degrees
of freedom and the displacement associated with the major
forcing direction tends to snap back (i.e. at a displacement
limit point). The quantity p du
p
i
1
will tend to zero, forcing
the load parameter to innity. Thus, this method only has
limited success near displacement limit points. Additionally,
the presence of the reference load vector in the expression
for dl
i
j
may have adverse effects because it is somewhat ar-
bitrary and does not necessarily represent the structural sys-
tem.
Several authors have presented modications for work
control type methods. Lin et al. [97] developed a method to
address the inconsistent units in the arc-length method and
weakness at snap-back of the work-control method using the
work weighted state vector to control the incremental length
throughout the solution tracing process. Chen and Blandford
[98] presented a quadratically convergent algorithm that uses
the incremental work to determine the size of the incremental
step. A stabilized form of the work control method was pre-
sented by Kouhia [99] who reformulated the load parameter
to be well dened even in areas of snap-back.
3.2.5 Generalized Displacement Control Method
(GDCM)
The generalized displacement control method (GDCM)
was investigated by Yang and Sheih [4] as a result of the lim-
itations discussed for other methods. Because the numerical
stability of a nonlinear solution scheme depends on the selec-
tion of the constraint parameters, the following values were
adopted:
a
i
j
= dl
i
1
du
p
i1
1
(40)
b
i
j
= 0 (41)
c
i
j
=
_
generalized displacement
0
for j = 1
for j 2
(42)
The constraint parameters are inserted into Eqn. 13 such that
dl
i
j
=
c
i
j
dl
i
1

du
p
i1
1
du
r
i
j

dl
i
1

du
p
i1
1
du
p
i
j
(43)
which, simplies to the following when j =1 because du
r
i
1
=
0 and c
i
1
= c
dl
i
j
=
_

_
c
dl
i
1
du
p
i1
1
du
p
i
1
for j = 1

du
p
i1
1
du
r
i
j
du
p
i1
1
du
p
i
j
for j 2
(44)
Moreover, c is solved for by letting du
p
1
1
= du
p
0
1
, which re-
sults in
c = (dl
1
1
)
2
_
du
p
1
1
du
p
1
1
_
(45)
where dl
1
1
= dl is the prescribed initial control factor. The
expression for dl
i
1
becomes
dl
i
1
= dl
_

du
p
1
1
du
p
1
1
du
p
i1
1
du
p
i
1

_1
2
(46)
The GDCM adjusts the sign of the load parameter based on
the stiffness of the system. The generalized stiffness param-
eter (GSP), dened below, will be positive for stiffening sys-
tems and negative for softening systems. The behavior of the
GSP, including sign changes of the load parameter, is illus-
trated in Fig. 11. By denition
GSP =
du
p
1
1
du
p
1
1
du
p
i1
1
du
p
i
1
(47)
Thus the load parameter at the rst iteration of each incre-
mental step is simply
dl
i
1
= dl|GSP|
1
2
(48)
Use of this physical quantity to represent the stiffness
of the system makes this method computationally effective.
The stiffness of the structure is measured with respect to the
rst incremental step, so stiffening and softening behavior
are readily identied. Furthermore, the GSP changes sign
only immediately after load limit points, meaning the direc-
tion of the load will only change at load limit points, not at
Load
nt Displaceme
+
+
+
+

i i
1 1
p
1
p
: of Sign
u u !
"
Figure 11. Generalized stiffness parameter used in the generalized
displacement control method [4]
displacement limit points. It can also be shown that the GSP
remains bounded while tracing the equilibrium path.
The GDCM is successful at capturing complex nonlin-
ear behavior at both load and displacement limit points, and
has been used to study large deection of trusses [100, 101],
and ultimate load carrying capacity of structures considering
both member and structure instability [102]. The method has
also been used to capture geometric and material nonlinear-
ity associated with concrete-lled steel composite columns
[103]. Additionally, the GDCM has been used by researchers
modeling carbon nanotubes using the truss rod model be-
cause of its accuracy and numerical stability at load and dis-
placement limit points [104, 105].
Connections have also been made between the GDCM
and various versions of the ALCM. Cardoso and Fon-
seca [49] identied this method as an orthogonal arc-length
method. The constraint equation posed by the GDCM can
be written as an orthogonal arc length constraint where ad-
justments in the radius of the arc are dependent on the value
of the GSP. Additionally, a minor modication to the expres-
sion for a
i
j
in Eqn. 40 results in a version of the ALCM.
Assuming a
i
j
= dl
i
1
du
p
i
1
, and b
i
j
and c
i
j
are the same as in
Eqn. 40, then the load factor becomes
dl
i
j
=
_

_
c
dl
i
1
du
p
i
1
du
p
i
1
for j = 1

du
p
i
1
du
r
i
j
du
p
i
1
du
p
i
j
for j 2
(49)
On the rst iteration ( j = 1) of the rst incremental step
(i = 1)
c =

dl

2
du
p
1
1
du
p
1
1
(50)
Now the expression for dl
i
1
becomes
dl
i
1
= dl
_

du
p
1
1
du
p
1
1
du
p
i
1
du
p
i
1

_1
2
(51)
which means that the new GSP is
GSP =
du
p
1
1
du
p
1
1
du
p
i
1
du
p
i
1
(52)
Equation 51 can be rearranged as
_
dl
i
1
_
2
du
p
i
1
du
p
i
1
=

dl

2
du
p
1
1
du
p
1
1
(53)
dl
i
1
du
p
i
1
dl
i
1
du
p
i
1
= dldu
p
1
1
dldu
p
1
1
(54)
du
i
1
du
i
1
= du
1
1
du
1
1
(55)
and since the incremental and iterative displacement at
the rst iteration of every incremental step are the same
_
du
i
1
= Du
i
1
_
, then the constraint can be rewritten as
Du
i
1
Du
i
1
= Du
1
1
Du
1
1
=

Ds
1
1

2
(56)
Notice that Eqn. 56 is identical to that of the cylin-
drical ALCM presented in Eqn. 28 for the rst iteration
( j = 1). Then, on subsequent iterations ( j 2) we impose
du
i
1
du
i
j
=0. Thus, the minor modication to the parameters
of the GDCM results in the linearized cylindrical ALCM.
3.2.6 Orthogonal Residual Procedure (ORP)
The orthogonal residual procedure (ORP), investigated
by Krenk [106], adjusts the load increment at each iterative
step such that the current displacement increment is orthog-
onal to the current residual. The direction of the current
displacement increment, Du
i
j
, is taken as the best estimate
of the direction of the actual displacement increment. The
magnitude, however, will increase or decrease based on the
projection of the residual force on the current displacement
increment. The magnitude of the current displacement incre-
ment should not change; therefore the orthogonality between
the residual and the current displacement increment should
be enforced, i.e.
u
i
j
Dr
i
j
= 0 (57)
as illustrated by Figure 12 (a).
To justify why the residual should not change the magni-
tude of the current displacement, consider the case where the
residual and current displacement increment are not orthog-
onal, as shown in Figure 12(b). First, note the order in which
(a) (b)
i
j 1
u
i
j
u
i
j
r
i
j
u
i
1
u
x
i
j 1
u
i
j
r
i
j
u
i
j
u
i
1
u
Figure 12. (a) Orthogonality constraint for the orthogonal residual
procedure, (b) Error induced without the orthogonality constraint
computations occur in the j
th
iteration. The incremental dis-
placement is calculated using the tangent matrix and residual
vector from the previous iteration
du
i
j
= (K
i
j1
)
1
r
i
j1
(58)
then the increment displacement is updated
Du
i
j
= Du
i
j1
+du
i
j
(59)
and nally the residual is calculated. The direction of the
current displacement increment should not change because
it was calculated in the previous iteration and is taken as
the best estimate of the actual displacement direction. If the
residual is not orthogonal to the current displacement incre-
ment, then the iterative displacement increment, du
i
j
, should
have accounted for the induced displacement by the residual
when it was calculated in the previous iteration. Changing
the iterative displacement will also change the current dis-
placement increment through Eqn. 59. If the magnitude of
the current displacement increment changes due to the resid-
ual, then the calculation of the current displacement incre-
ment in the previous iterative step was not optimal.
In the original ORP, a load factor, x
i
j
, is used to incre-
ment the external load
p
i
j
= p
i1
+x
i
j
Dp (60)
and the residual is given as follows
r
i
j
= p
i1
+x
i
j
Dpq(u
i1
+Du
i
j
) (61)
Load
nt Displaceme
i
p
i
i
p
1

i
i
j
p !
1 i
p p
1 i

p
i
j
!
p
i
2
! p
i
1
!
p
i
2
!
Figure 13. Comparison of original ORP load factor and unied ap-
proach load factor
The optimal load increment factor is obtained by inserting
Eqn. 61 into the constraint in Eqn. 57.
x
i
j
=
_
p
i1
q(u
i1
+Du
i
j
)
_
Du
i
j
Dp Du
i
j
(62)
The load increment factors, x
i
j
, used in ORP are calcu-
lated at each iteration and are not dependent on any previous
load increment factor. However, in the (N+1) dimensional
space each load increment factor is dependent on the previ-
ous, i.e.
Dl
i
j
= Dl
i
j1
+dl
i
j
(63)
Figure 13 shows the dependence of Dl
i
j
on previous itera-
tions, while x
i
j
is independent at each iteration.
To unify the ORP into the (N+1) dimension space, the
load factor, dl
i
j
, must be included in the constraint equation.
The equivalence between the load factors is evident fromFig.
13
p
i1
+x
i
j
Dp = l
i1
p+Dl
i
j1
p+dl
i
j
p (64)
Equation 64 is inserted into Eqn. 61 to obtain the residual,
r
i
j
= (l
i1
+Dl
i
j1
+dl
i
j
)pq(u
i1
+Du
i
j
) (65)
The load factor is found by solving Eqn. 65
dl
i
j
=
r
i
j
+
_
q(u
i1
+Du
i
j
)
_
p

l
i1
+Dl
i1
j

(66)
Then the orthogonality constraint is used to remove the resid-
ual term, and the resulting load factor is
dl
i
j
=
_
q

u
i1
+Du
i
j
_
Du
i
j

p Du
i
j

l
i1
+Dl
i1
j

(67)
Equation 67 is implemented in the (N+1) dimensional
space. At the rst iteration of an incremental step (i.e. j =1),
and initial load factor, dl, prescribed by the user, is assigned
to dl
i
j
.
To improve the robustness of the ORP algorithm, certain
conditions are checked/imposed throughout the incremental-
iterative procedure. First, the direction of the displacement
and load increments are reversed at load limit points. If the
direction of the displacement increment is reversed relative
to the previously converged displacement increment, then a
load limit point has been passed and the sign of the load and
displacement increments are changed. Secondly, maximum
displacement and load factor increments are imposed to en-
sure they do not become unbounded near limit points. The
maximum increments are computed as follows
If
_
_
Du
i
1
_
_
>U
max
=)Du
i
1
=
U
max
_
_
Du
i
1
_
_
Du
i
1
(68)
If
_
_
du
i
j
_
_
>U
max
=)du
i
j
=
U
max
_
_
_du
i
j
_
_
_
du
i
j
(69)
where U
max
is computed using a prescribed initial scale fac-
tor, b, such that
U
max
= b
_
_
Du
i
1
_
_
(70)
Finally, convergence problems may be addressed
through the following modications, however they are not
implemented here. If convergence is not met within the max-
imum iterations prescribed by the user, then the iterative pro-
cedure can be restarted with half the initial displacement,
load increment, and maximum displacement, such that
Dp
1
2
Dp (71)
Du
i
1

1
2
Du
i
1
(72)
U
max

1
2
U
max
(73)
Information from the previous load increment may also
be used to overcome convergence problems in the current
increment. The load increment can be scaled by a ratio of
the desired number of iterations, denoted Ite
D
, and the actual
number of iterations used to reach equilibrium in the last in-
cremental step, denoted Ite
A
[74, 78]
Dp
i
=

Ite
D
Ite
A

a
Dp
i1
(74)
The exponent a is typically chosen to be in the range [0.5,
2.0]. Of course, this procedure is dependent on the behav-
ior of the previous step, thus it may be ineffective for prob-
lems with very sudden changes. The original ORP has the
potential to capture complex nonlinearities at load and dis-
placement limit points, and it has recently been used in con-
junction with the extended nite element method (XFEM)
to solve nonlinear equations associated with cohesive crack
growth [107, 108].
Despite the reported success of the ORP, further inves-
tigation by Krenk and Hededal [109] and later by Kouhia
[99] indicated that the original formulation has weaknesses
around displacement limit points. Krenk and Hededal [109]
modied the procedure by imposing a second orthogonality
constraint that adjusts the displacement iteration in addition
to the rst constraint that adjusts the load increment. The
original orthogonality constraint, r
i
j
Du
i
j
= 0, and a mod-
ied Newton-Raphson approach with quasi-Newton modi-
cations of the stiffness matrix are combined to obtain the
second orthogonality condition between the current displace-
ment iteration and internal force increment Dq
i
j
du
i
j
= 0.
This version of the method was successfully used by re-
searchers investigating shell elements in a geometrically
nonlinear analysis [110].
Kouhia [99] presented a stabilized version of the original
ORP by relaxing the orthogonality constraint near displace-
ment limit points. Similar to the approach to unify the ORP
into the (N+1) space, the load increment factors, x
i
j
, were
modied such that they would be additive within an incre-
mental step. Near displacement limit points the load factor
is
dl
i
j
=
Du
i
j
r
i
j1
sign

u
i
j1
p
_
_
_u
i
j1
_
_
_kpk

cos(Du
i
j
, p)

+t
(75)
where the following denition is used for the inner product
cos(a, b) =
a b
kakkbk
(76)
and t is a dimensionless non-negative stabilization parameter
that can be related to the current stiffness parameter proposed
by Bergan et al. [1]. Hence, t should be large at displace-
ment limit points and small at load limit points. Kouhia [99]
demonstrated the improvement of the stabilized version over
the original ORP through numerical examples.
3.3 Incremental-Iterative Procedure in N+1 Space
The incremental-iterative procedure is illustrated in Fig.
14. The ow chart represents the operations performed on
the j
th
iteration of the i
th
incremental step. The diamond-
shaped boxes are conditional statements, and the computa-
tion of the load factor, indicated by the shaded elliptical box,
is unique for each algorithm, as discussed in the previous
sections.
4 Computational Implementation of the Unied
Schemes
Object oriented design principles and programming can
be utilized in the implementation of a unied solution
scheme to provide a library that is exible, extendible and
easy to understand. Most existing nonlinear solution al-
gorithms are associated with large nite element software
packages [62, 111]. Modifying or extending these pack-
ages for solving different nonlinear systems of equations is
not straightforward due the complexity of their object ori-
ented structure. Furthermore, the cost of the steep learning
curve for new developers who wish to utilize these pack-
ages tends to become discouragingly high with time. We
aimed to streamline that complexity presenting a simple and
robust object-oriented C++ library, called NLS++ (Nonlin-
ear Solver). The library implements the nonlinear solution
schemes discussed in the previous section. Through the uni-
ed approach, the solvers share a common interface and only
vary in the computation of the load parameter, which de-
pends on the constraint equation of each solver. This library
is used to thoroughly test the solution schemes and charac-
terize their performance in capturing various nonlinearities.
4.1 Class hierarchy
The NLS++ code is organized into three distinct compo-
nents: Model, Control, and LinearSolver. A separate appli-
cation class creates instances of these components to execute
the nonlinear analysis. Figure 15 shows the current class or-
ganization adopted by the NLS++ library.
4.1.1 Model class
The purpose of Model class is to represent the problem
to be solved. The primary function of the model class is
to compute information associated with the system of equa-
tions, including the tangent matrix, and internal and external
load vectors.
The base class/derived class paradigm is used to inter-
face with the authors applications. One application is in-
cluded in the code distribution (see Section 5.3), and it in-
cludes model classes for bar and beam elements and for a
few nonlinear functions. This application was used to gener-
ate the results presented in Section 5.
4.1.2 LinearSystem class
The LinearSystem class is responsible for solving a lin-
ear system of equations, i.e. Ax = b. Hence, the Lin-
earSystem needs to be extensible in order to accommo-
date different storage schemes (e.g. band, prole, sparse,
etc.) and different numerical strategies (e.g. direct or it-
erative) for solving the system of equations. Several algo-
rithms and corresponding software codes implementing lin-
ear solvers have appeared in recent years, for example, PAR-
DISO [112, 113] and UMFPACK [114]. The user can eas-
ily extend LinearSystem by selecting the most appropriate
solver for his/her problem. Moreover, performance can be
accelerated by using parallel processing, employing MPI-
based implementations, for example PETSc [6062]. Fi-
nally, the total runtime can be reduced for a sequence of
linear systems that change slowly by using iterative solvers
based on recycling subspaces of search spaces corresponding
p
i

i
p
i Step
) (
1
0

i i
u K K
1 j
) (
i i i
j
u q p r
1 + j j
TOL
1
<
p
r
i
i
j

Yes
No
i
j
i
j
i
j 1
1
1
) (

r K u
II

0
i
j II
u
u
Ij
i
(K
j1
i
)
1
p
i
j
Compute
) (
i
j
i
j
i
j
i i
i
j
i i
II I
u u u u

+ +
+
) ( Compute
i
u q
i
j
Compute
1 + i i
1 == j
Yes
No
Figure 14. Incremental-iterative procedure of the unied scheme
to previous solutions [115, 116].
4.1.3 Control class
The Control class is the engine of the NLS++ code, in
the sense that it is responsible for tracing the equilibriumpath
by means of the incremental-iterative procedure. Classes can
be derived from the Control class to obtain the various non-
linear solution schemes discussed in Section 3.2. The derived
class has one particular function that is not implemented in
the parent class, called Lambda, which computes the load
factor for each nonlinear scheme. Pseudo-Code 1 shows the
main steps of the unied approach adopted here. For the sake
of completeness, and also to illustrate how the incremen-
tal load factor (dl
i
j
) is obtained (see Step 5 of Pseudo-Code
1), the main steps of the Load Control scheme are shown in
Pseudo-Code 2.
4.2 NLS++ usage
The class hierarchy of NLS++ was designed in such
way that the code would be executed by a simple application
class, requiring minimal work from the end user. That ap-
plication class of the NLS++ client requires two input les:
a model le and an algorithm le. A nite element model
le, for example, contains the element type, nite element
mesh (i.e. nodes, elements, connectivity), boundary condi-
tions, applied loads and displacements, and material proper-
ties. The algorithm le contains the type of nonlinear solu-
tion scheme, initial control factor, additional algorithm in-
puts if necessary, maximum number of steps and iterations,
convergence tolerance, and type of linear solver. Table 1
shows initial control factor required for each nonlinear so-
lution scheme, and additional inputs required for a few of
the nonlinear solution schemes are given in Table 2.
After input les are read in the application class, new
Control
Model
LinearSolver
LoadControl
WorkControl
GeneralizedDisplacementControl
OrthogonalResidualControl
LinearizedArcLength
SphericalArcLength
CylindricalArcLength
EllipticalArcLength
DisplacementControl
ArcLengthControl
UnifiedSchemes
Figure 15. NLS++ Class Organization
Table 1. Nonlinear solution scheme inputs
Algorithm Initial control factor
LCM Load increment, Dl
DCM Displacement increment, Du
ALCM Arc-length increment, DS
WCM Work increment, DW
GDCM Load parameter, dl
ORP Iterative load increment, dl
Algorithm 1 Unied approach implemented in the Control
class
1: for each iteration j of step i do
2: Get global tangent stiffness matrix

K
i
j

from Model
class
3: Compute du
p
i
j
according to
du
p
i
j

K
i
j1

1
p
4: Compute du
r
i
j
according to
du
r
i
j

K
i
j1

1
r
i
j1
5: Compute dl
i
j
according to the selected solution
scheme
6: Update total load factor according to
l
i
l
i
+dl
i
j
7: Update external load vector according to
p
i
p
i
+dl
i
j
p
8: Update total displacement vector according to
u
i
u
i
+dl
i
j
du
p
i
j
+du
r
i
j
9: Get global internal force vector
_
q
_
u
i
__
from Model
class
10: Compute unbalanced load vector according to
r
i
j
p
i
q
_
u
i
_
11: if Convergence achieved then
12: Next step i i +1
13: else
14: Next iteration j j +1
15: end if
16: end for
Algorithm 2 Load factor implemented in the Load Control
class
1: if ( j == First Iteration) then
2: dl
i
j
Prescribed load increment
3: else
4: dl
i
j
0
5: end if
instances of the above mentioned three classes (i.e. Model,
LinearSystem, and Control) are created, the incremental-
iterative procedure is called, and the analysis is executed.
Pseudo-Code 3 lists the steps of the application class.
5 Numerical Results
The performance of the unied solution schemes in cap-
turing equilibrium paths of highly nonlinear problems is in-
vestigated. The example problems, input parameters and
resulting nonlinear equilibrium curves obtained with each
scheme are given in the next subsection. A range of input
parameters for each scheme (i.e. control factor, number of
steps, scale factor) may result in converging solutions for a
particular problem. However, in general, the input param-
eters reported in Section 5.1 are those that adequately cap-
tured the entire equilibrium curves as they are shown with
the fewest number of steps. A qualitative evaluation of the
Table 2. Additional inputs for selected nonlinear solution schemes
Algorithm Additional
parameter 1
Additional
parameter 2
DCM Control degree of
freedom
Constant or
variable
displacement
ALCM Constant or
variable arc-length
n/a
ORP Initial incremental
scale factor, b
n/a
Algorithm 3 Application class implemented in the client of
NLS++
1: Read model and algorithm input les
2: Create instance of Model class using data from model
input le
3: Initialize instance of Model class
4: Create instance of LinearSystem class using data from
algorithm input le
5: Create instance of Control class using data from algo-
rithm input le
6: Call solver function of Control class
solvers is given in Section 5.2, which includes a discussion
of the sensitivity of the methods to the input parameters.
5.1 Applications and Examples
The ability of the solution schemes to capture nonlinear
behavior is tested with several examples that feature a host of
nonlinearities, including load and displacement limit points
and large uctuations in stiffness. The examples include two
functions: one uni-dimensional and one two-dimensional,
and three structural systems: the von Mises truss, twelve bar
truss, and Lee Frame.
Notice that the structural systems examined in this work
are comprised of discrete elements (e.g. bars and beams);
for an example using continuum elements the reader is re-
ferred to Lages et al. [66] where an earlier version of the
NLS++ library was used to solve a compression test prob-
lem involving strain localization into a shear band. For addi-
tional examples of complex nonlinear systems, see the texts
by Reddy [7] and Belytschko et al. [12], where in addition to
structural systems, contact, uid-ow, and coupled problems
are considered. Structural and complex systems (involving
smart structures) are analyzed and compared to experimental
results in the text by Pai [117]. Doyle [118] places partic-
ular emphasis on stability of thin-walled structures, such as
aircraft, ships, and containment vessels. Furthermore, nu-
merical nonlinear analysis of composite materials, including
laminated plates and shells, is examined in the text by Pala-
zotto and Dennis [119].
Unless otherwise stated, all computation results were
obtained with a maximum of 40 iterations per step, a con-
vergence tolerance (see Figure 14) of 10
4
, and a standard,
rather than modied, update to the stiffness matrix. Addi-
tionally the linearized version of the ALCM was employed
in all examples.
5.1.1 Uni-Dimensional Function
The rst example to test the nonlinear solution schemes
is a single-degree-of-freedom problem. The function was
used by Chen and Blandford [98] to test their work incre-
ment control method. While the function is very simple to
incorporate into NLS++, it features some complex nonlin-
earities including two load limit points and an innite slope,
thus making it a good candidate to evaluate the nonlinear so-
lution schemes. The uni-dimensional function is given by
f (u) =3sign(u)|u|
1
3
+4u+1 (77)
where the sign function is dened as
sign(x) =
_

_
1 for x < 0
0 for x = 0
1 for x > 0
(78)
The internal load is simply given by Eqn. 77. Derivation of
Eqn. 77 with respect to the degree of freedom, u, gives the
tangent stiffness.
d f
du
=
1
|u|
2
3
+4 (79)
Each solution scheme was applied to the uni-
dimensional function; the results are shown in Fig. 16. As
expected, the LCM does not capture the full behavior at the
load limit points. When the load factor reaches the rst lo-
cal maximum of 2, the method continues to increase load,
therefore snapping through the softening behavior and only
capturing stiffening behavior.
The remainder of the nonlinear solution schemes fully
capture the behavior, which is expected because all of the
methods are capable of capturing load limit points. It should
be noted that methods that have difculty near displacement
limit points (i.e. displacement control method and work con-
trol method) were able to capture the full behavior of this
example, because even though there is a vertical tangent at
u = 0, there is no snap-back.
The parameters adopted in each algorithm and resulting
behavior are given in Table 3. It should be noted that a rela-
tively small control factor and large number of steps were re-
quired for the ALCM. There is very small change in the dis-
placement corresponding to a very large change in the load
near the vertical tangent. Other methods that increment the
load and displacement independently (i.e. WCM, GDCM,
ORP) can recover the curve between the maximum and min-
imum load with very few steps. However, the step size in
0 0.5 1 1.5 2 2.5 3
0
0.5
1
1.5
2
2.5
3
3.5
4
Displacement
L
o
a
d

F
a
c
t
o
r


LCM
Other methods
Figure 16. Uni-dimensional function results
the constant update arc-length control method is dened by
an arc of the same radius at every step, so the method can-
not make large jumps in either load or displacement in one
step. The tolerance was also adjusted to 10
1
to allow for
the largest possible step size while still recovering the cor-
rect solution path.
Table 3. Summary of the uni-dimensional function example
Method
Max.
steps
Control
factor
Scale
factor
Behavior
LCM
50 0.08 n/a Snaps
through
DCM
100 0.02 n/a Fully
converged
ALCM*
325 0.02 n/a Fully
converged
WCM
95 0.001 n/a Fully
converged
GDCM
60 0.1 n/a Fully
converged
ORP
55 1.0 0.1 Fully
converged
Convergence tolerance = 0.1
5.1.2 Two-Dimensional Function
The next example is a function of two variables, whose
nonlinearity includes load and displacement limit points in
both degrees of freedom. The problem is given by a vector
of external and internal forces [120], shown below
p =

40
15

(80)
q(u) =

10u
1
+0.4u
3
2
5u
2
2
0.4u
3
1
3u
2
1
+10u
2

(81)
The derivative of the internal force vector in Eqn. 81 with
respect to the degrees of freedom, u
1
and u
2
, gives the com-
ponents of the tangent stiffness matrix
K
i j
=
q
i
u
j
(82)
K(u) =
_
10 1.2u
2
2
10u
2
1.2u
2
1
6u
1
10
_
(83)
The equilibrium curves traced by each of the nonlinear
solution schemes are shown in Fig. 17. The labels indicate
the point where the method failed to accurately capture the
equilibrium path. As expected the LCM fails at the rst load
limit point, the DCM with either degree of freedom as the
control fails at the rst displacement limit point in the corre-
sponding degree of freedom, and the variable DCM, ALCM,
and GDCM capture the full equilibrium path. The WCM and
ORP have difculties in the rst degree of freedom when the
behavior of the system changes rapidly via a load limit point
followed immediately by a displacement limit point; accord-
ingly, both methods fail in this area.
In this example, more explanation will be given to the
behavior of the LCM and various versions of the DCM. First,
the failure point of the LCM is shown at the rst load limit
point in Fig. 17 because the equilibrium path is not ac-
curately captured beyond this point. The method actually
snapped through at the rst limit points on each curve and di-
verged at the next load limit point encountered, as shown in
Fig. 18. The snap through behavior is expected because the
load continues to increase after the initial load limit points,
hence the solution scheme was able to converge to the next
points. Next, a displacement limit point occurs in the second
degree of freedom, however since the load is still increasing,
the load control method captured this behavior. Divergence
occurred at the next load limit point in the second degree of
freedom. Snap through behavior could not have occurred be-
cause the load only decreases after this point.
Each degree of freedom was selected as the control
when the DCM was employed, and the labels in Fig. 17
indicate the resulting failure points. When the rst degree
of freedom, u
1
, is the control, the equilibrium path is traced
until the displacement limit point in the rst degree of free-
dom is reached. Notice that the displacement limit point in
10 5 0 5 10
6
4
2
0
2
4
Displacement
L
o
a
d

F
a
c
t
o
r


var. DCM,
ALCM,
GDCM
LCM
DCM, u
1
DCM, u
2
WCM,
ORP
DOF u
1
DOF u
2
Figure 17. Solution to the two-dimensional function example; labels
indicate where the solution schemes failed. LCM fails at the rst load
limit point, the DCM fails at the displacement limit point in the degree
of freedom corresponding to the control, the WCM and ORP fail near
the rst displacement limit point, and the variable DCM, ALCM, and
GDCM capture the full equilibrium path.
0 2 4 6 8 10
0
0.5
1
1.5
2
2.5
Displacement
L
o
a
d

F
a
c
t
o
r


DOF u
1
DOF u
2
Figure 18. Solution to the two-dimensional function example using
the LCM. The method snaps through the rst load limit point and fails
at the second load limit points.
the second degree of freedom is captured, which is expected
because the displacement is only incremented for the rst de-
gree of freedom. When the second degree of freedom, u
2
, is
the control however, the solution scheme diverges much ear-
lier at rst the displacement limit point in the second degree
of freedom.
The variable DCM captured the entire equilibrium path,
shown in Fig. 17, because the control degree of freedom
changes automatically when a displacement limit point is ap-
proaching in that degree of freedom. The control displace-
ments and snap-back locations are listed in Table 4 and cor-
respond to the labels in Fig. 19. From steps 1-73 the control
displacement is u
1
, and a displacement limit points is en-
countered at step 58 in degree of freedom u
2
(Label 1 in Fig.
10 5 0 5 10
6
5
4
3
2
1
0
1
2
3
Displacement
L
o
a
d

F
a
c
t
o
r


2
1
3
4
DOF u
1
DOF u
2
Figure 19. Solution to the two-dimensional function example using
the variable DCM. The labels indicate the locations where the control
degree of freedom changes automatically.
Table 4. Summary of the variable DCM for the two-dimensional
function
Step Control
Displacement
Snap-Back
1-73 u
1
Step 58 in u
2
(Label 1
in Figure 19)
74-216 u
2
Step 158 in u
1
(Label 2
in Figure 4)
217-445 u
1
Step 266 in u
2
(Label 3
in Figure 4)
Step 398 in u
2
(Label 4
in Figure 4)
19). At step 74 the control displacement changes to u
2
, and
snap-back is captured in degree of freedom u
1
at step 158
(Label 2 in Fig. 19). The nal change is control degree of
freedom occurs in step 217, after which point two snap-back
points are passed in degree of freedom u
2
(Labels 3 and 4 in
Fig. 19). These automatic changes in the control degree of
freedom allow the method to recover the entire solution path.
Unless otherwise noted, the variable DCM will be used in the
remainder of the numerical examples.
Table 5 shows the parameters used and behavior cap-
tured for this two degree of freedom example. Notice in the
table that the number of steps used for the arc-length con-
trol method and the generalized displacement control method
are similar, but the control factor for the arc-length control
method is ve times greater. Recall from Table 1 though
that the control factors represent different quantities for each
scheme and cannot be directly compared. In the generalized
displacement control method the control factor is only used
once at the rst iteration of the rst step, and the load factor
is adjusted by the algorithm for all subsequent steps and iter-
ations. The control factor in the arc-length control method,
Table 5. Summary of the two-dimensional function example
Method
Max.
steps
Control
factor
Scale
factor
Behavior
LCM
100 0.04 n/a Failed at
load limit
point
DCM
s,1
200 0.05 n/a Failed at
displace-
ment limit
point
DCM
s,2
200 0.02 n/a Failed at
displace-
ment limit
point
DCM
v,1
445 0.1 n/a Fully
converged
DCM
v,2
190 0.1 n/a Fully
converged
ALCM
700 0.05 n/a Fully
converged
WCM
300 0.01 n/a Failed at
displace-
ment limit
point
GDCM
650 0.01 n/a Fully
converged
ORP
100 0.1 1.0 Failed at
displace-
ment limit
point
s,v
Standard, Variable
1,2
Fixed control coordinate: u
1
, u
2
however, is used once at every step.
5.1.3 von Mises Truss
The von Mises Truss is a two-degree of freedom sys-
tem consisting of two prismatic bar (truss) elements loaded
indirectly through a spring of stiffness C, as shown in Fig.
20. It has been studied by several authors, including Bergan
[121], Bazant and Cedolin [122], and Yang and Sheih [4],
among others. Large displacements and rotations (geometric
nonlinearity) are accounted for through the Total Lagrangian
(TL) formulation, in which static and kinematic variables re-
fer to the original undeformed conguration, with rotated en-
gineering strain measure [14] given by e = (L
deformed
L)/L.
Two constitutive relations are considered in the problem. The
rst is the linear Hookes law, thus material nonlinearity is
not present; and in the second, material nonlinearity is con-
sider by adopting an elastic/perfect plasticity model (see Ap-
L A E , , L A E , ,
P
C
H
1
u
2
u
Figure 20. von Mises truss schematic
P
1
u
CR
C C
CR
C C
CR
C C
Figure 21. Equilibrium paths for the von Mises truss with varying
spring stiffness, C
pendix). Although very simple, this example can be used to
demonstrate the ability of the nonlinear solution algorithms
to capture both load and displacement limit points, as well
as sudden changes of direction in the equilibrium paths. In
both cases the following values are use (consistent units are
assumed): H = 5.0, L = 10.0, external load ={1.0, 0.0}
T
.
The reader is directed to [123] for more information on the
derivation of the nite element equations for this and the re-
maining examples.
von Mises Truss: Elastic Case
The elastic material properties of the von Mises truss are
EA = 1.0, where consistent units are assumed. The behav-
ior of this structure depends strongly on the stiffness of the
spring, C, (see Fig. 21), as snap-back behavior will only oc-
cur if it is below the critical value, C
cr
= 0.030940 in this
case (see Appendix for derivation). The critical spring stiff-
ness can be obtained through a straight forward calculation
using the stationary potential energy of the system. C was
chosen to be 0.02 to obtain snap-back behavior, and 0.04 for
no snap-back in the following numerical examples.
Figures 22 and 23 show the nonlinear behavior captured
by each of the solution schemes for the system without and
with snap-back, respectively. In both cases, the LCM fails
at the load limit point, while the variable DCM, ALCM,
GDCM, and ORP capture the full path. The WCM traces the
entire equilibrium path, but fails when at the displacement
0 2 4 6 8 10
0.06
0.04
0.02
0
0.02
0.04
0.06
0.08
Displacement
L
o
a
d

F
a
c
t
o
r
DCM, WCM,
ALCM, GDCM,
ORP
LCM
DOF u
1
DOF u
2
1
u
2
u
P
Figure 22. Solution to the von Mises truss without snap-back; la-
bels indicate where the solution schemes failed. LCM failed at the
rst load limit point, WCM failed at the rst displacement limit point,
and the variable DCM, ALCM, GDCM, and ORP captured the full
equilibrium path.
0 2 4 6 8 10
0.06
0.04
0.02
0
0.02
0.04
0.06
0.08
Displacement
L
o
a
d

F
a
c
t
o
r
DCM, ALCM,
GDCM, ORP
LCM
WCM
DOF u
1
DOF u
2
1
u
2
u
P
Figure 23. Solution to the von Mises truss with snap-back; labels in-
dicate where the solution schemes failed. LCM failed at the rst load
limit point, WCM failed at the rst displacement limit point, and the
variable DCM, ALCM, GDCM, and ORP captured the full equilibrium
path.
limit point when snap-back is present. This behavior is ex-
pected from the WCM because the snap-back occurs in the
major forcing direction. The external load vector contains
only one load, and since snap-back occurs in the loading di-
rection, the displacement increment in that direction is zero.
The denominator of the load parameter in Eqn. 39 becomes
unbounded and the method diverges.
Analogous to the snap-through behavior with respect to
increasing load seen with the LCM in uni-dimensional and
two-dimensional examples, the standard DCM exhibits snap-
through behavior with respect to increasing displacement.
0 2 4 6 8 10
0.06
0.04
0.02
0
0.02
0.04
0.06
Displacement
L
o
a
d

F
a
c
t
o
r


DOF u
1
DOF u
2
1
u
2
u
P
Figure 24. Solution to the von Mises truss example with snap-back
using the DCM with u
1
as the control displacement. The method
snaps through at the displacement limit point and does not capture
the full behavior.
When snap-back is present, the standard DCM can only cap-
ture the full equilibrium path when degree of freedom u
2
is
the control because there is no snap-back in this degree of
freedom. When u
1
is chosen as the control displacement,
the method snaps through at the displacement limit point and
does capture the snap-back behavior, as illustrated in Fig. 24.
Although the ORP captures the full equilibrium paths
for both the snap-back and no snap-back scenarios, the pa-
rameters are quite different between the two cases. The
method proves to be sensitive to input parameters and to
the system conguration, because a smaller control factor,
smaller scale factor, and large number of steps are required
in the system with snap-back behavior than the system with-
out. Table 6 provides a summary of all parameters and the
resulting behavior of each algorithm.
von Mises Truss: Elasto-Plastic Case Material nonlinear-
ity is considered in the von Mises truss by adopting an elasto-
plastic constitutive model [124], with elastic modulus, E, and
initial ow stress, s
Y
. We consider the case of perfect plas-
ticity, in which the ow stress is varied to explore different
structural responses.
The solution has four stages, which are derived analyti-
cally in the Appendix and are shown in Fig. 25 for the case of
C = 0.02 and s
Y
= 0.05. The rst stage is equal to the elas-
tic solution; it starts at the undeformed conguration (Fig.
25(c)) and stops when the ow stress is reached in compres-
sion (Fig. 25(d)). The load vs. displacement and stress vs.
strain trajectories for stage one are shown as the solid lines
from labels 0 to 1 in Figs. 25(a) and (b), respectively.
The second stage is plastic and it continues from the last
point in stage one until u
2
= H (Fig 25(e)). The load vs.
displacement and stress vs. strain trajectories for stage two
are shown as the dashed lines from labels 1 to 2 in Figs.
25(a) and (b), respectively. The third stage is elastic and it
continues from the last point in stage two until the ow stress
Table 6. Summary of the von Mises truss example
Method
C Max.
steps
Control
factor
Scale
factor
Behavior
LCM
0.02 100 0.001 n/a Fails at
load limit
point
DCM
s,1
0.02 100 0.1 n/a Snaps
through
displace-
ment limit
point
DCM
v,1
0.02 100 0.3 n/a Fully
converged
ALCM
0.02 100 0.17 n/a Fully
converged
WCM
0.02 100 0.002 n/a Fails at dis-
placement
limit point
WCM
0.04 50 0.001 n/a Fully
converged
GDCM
0.02 100 0.0025 n/a Fully
converged
ORP
0.02 190 0.0025 0.5 Fully
converged
ORP
0.04 65 0.005 1.0 Fully
converged
s,v
Standard, Variable
1,2
Fixed control coordinate: u
1
, u
2
is reached again, this time in tension (Fig. 25(g)). The load
vs. displacement and stress vs. strain trajectories for stage
three are shown as the solid lines from labels 2 to 4 in
Figs. 25(a) and (b), respectively. Notice that the deformed
conguration shown in Fig. 25(f) occurs during stage three.
The fourth stage is plastic and it continues from the last point
in stage three. The deformed conguration shown in Fig.
25(h) corresponds to the load and displacements at label 5
in Fig. 25(a). In this nal stage the equilibrium trajectories
(u
1
vs. P and u
2
vs. P) are limited by the ow stress, hence
there is a horizontal asymptote at P = 2As
Y
(see Fig. 26). In
order to ensure that the rst plasticity stage occurs, the ini-
tial ow stress must be less than the stress that that occurs at
the beginning of stage three (i.e. when u
2
= H), otherwise
the behavior will be entirely elastic until the ow stress is
reached in tension. Additionally, depending on the value of
the ow stress, the rst plastic stage will either occur before
or after the rst load limit point of the elastic stage.
For the numerical study, the material properties are var-
ied to illustrate different behavior of the von Mises truss with
the elasto-plastic constitutive relation. The spring stiffness is
either 0.04 or 0.02 to achieve no snap-back and snap-back
Table 7. Summary of the von Mises Truss: Elasto-Plastic case with
s
Y
= 0.05 and C = 0.02
Method
Max.
steps
Control
factor
Scale
factor
Behavior
LCM
100 0.001 n/a Fails at
load limit
point
DCM
v,1
150 0.3 n/a Fully
converged
ALCM
350 0.2 n/a Fully
converged
WCM
80 0.001 n/a Fully
converged
GDCM
180 0.005 n/a Fully
converged
ORP
775 0.0025 0.5 Fully
converged
v
Variable
1
Fixed control coordinate: u
1
in the elastic solution, respectively. The ow stress is either
0.05 or 0.1 so that the rst plastic stage is reached before or
after the load limit point of the elastic solution, respectively.
The analytical solution and the solution obtained with the
GDCM for C = 0.04 and s
Y
= 0.05 are shown in Fig. 26(a),
C = 0.04 and s
Y
= 0.1 in Fig. 26(b), C = 0.02 and s
Y
= 0.05
in Fig. 26(c), and C = 0.02 and s
Y
= 0.1 in Fig. 26(d).
It should be noted that every third converged point obtained
with the GDCM is plotted in Fig. 26. This gure demon-
strates good agreement between the analytical solution and
the solutions obtained with the unied schemes, where the
GDCM is used as a representative scheme. The other meth-
ods were also tested for all cases, and good agreement with
the analytical solution was achieved. Results for all methods
are shown for the case where C = 0.02 and s
Y
= 0.05 in Fig.
27. All methods except the LCM captured the entire equilib-
rium path; as expected the LCM failed at the rst load limit
point. A summary of the input parameters used to obtain the
results in Fig. 27 is shown in Table 7.
5.1.4 Twelve-Bar Truss
This example consists of a 12-bar truss structure as il-
lustrated in Figure 28(a). It has been studied by Yang and
Leu [125], Yang et al. [126], Krenk and Hededal [109],
who described the deformation behavior of the structure in
detail, among others. This example features highly nonlin-
ear behavior: the load changes direction eight times and the
structure experiences several very large changes in stiffness
through the load history.
The material properties of the twelve bar truss are as-
signed as EA = 1.0, and the external load vector is given by
the reference load vector, {0.0, 0.75, 0.25}
T
. Like the von
0 5 10 15
0.02
0
0.02
0.04
0.06
Displacement
L
o
a
d

F
a
c
t
o
r
0
1 1
2 3
4
4
5
5
0 5 10 15 20
10
5
0
5
10
Deformed shape at
label 0 in Figs. (ab)
x
y
0 5 10 15 20
10
5
0
5
10
Deformed shape at
label 1 in Figs. (ab)
x
y
0 5 10 15 20
10
5
0
5
10
Deformed shape at
label 2 in Figs. (ab)
x
y
0 5 10 15 20
10
5
0
5
10
Deformed shape at
label 3 in Figs. (ab)
x
y
0 5 10 15 20
10
5
0
5
10
Deformed shape at
label 4 in Figs. (ab)
x
y
0 5 10 15 20
10
5
0
5
10
Deformed shape at
label 5 in Figs. (ab)
x
y
(c)
(a)
(d)
(b)
(f) (e)
(h) (g)

E
1
E
1
1

Y

Y

0
1 2
3
4 5
DOF u
2
DOF u
1
Figure 25. Deformed shape of the von Mises truss with material and geometric nonlinearity
0 10 20 30 40
0.02
0
0.02
0.04
0.06
0.08
0.1
= 2A
Y
=0.1
Displacement
(a)
L
o
a
d

F
a
c
t
o
r


analytical u
1
analytical u
2
GDCM u
1
GDCM u
2
0 10 20 30 40
0.05
0
0.05
0.1
0.15
0.2
= 2A
Y
=0.2
Displacement
(b)
L
o
a
d

F
a
c
t
o
r
0 10 20 30 40
0.02
0
0.02
0.04
0.06
0.08
0.1
= 2A
Y
=0.1
Displacement
(c)
L
o
a
d

F
a
c
t
o
r
0 10 20 30 40
0.05
0
0.05
0.1
0.15
0.2
= 2A
Y
=0.2
Displacement
(d)
L
o
a
d

F
a
c
t
o
r
C = 0.04

Y
=0.05
C = 0.04

Y
=0.1
C = 0.02

Y
=0.05
C = 0.02

Y
=0.1
Figure 26. Analytical solution and solution obtained with the GDCM for the Elasto-Plastic Case of the von Mises Truss: (a) C = 0.04 and
s
Y
= 0.05; (b) C = 0.04 and s
Y
= 0.1; (c) C = 0.02 and s
Y
= 0.05; (d) C = 0.02 and s
Y
= 0.1
0 10 20 30 40 50 60
0.02
0
0.02
0.04
0.06
0.08
0.1
Displacement
L
o
a
d

F
a
c
t
o
r


DCM, ALCM,
WCM, GDCM,
ORP
LCM
DOF u
1
DOF u
2
1
u
2
u
P
Figure 27. Solution to the elasto-plastic case of the von Mises
Truss; labels indicate with the solution schemes failed. s
Y
= 0.05,
C = 0.02,
Mises Truss example, the nonlinear prismatic bar elements,
the TL formulation, and the rotated engineering strain are
used to include effects of geometric nonlinearity. The con-
stitutive relationship is linear, thus material nonlinearity is
not considered here. For the present work, double symmetry
has been considered and, therefore, the deformations of the
structure can be described by three displacement components
(u
1
, u
2
, and u
3
) as shown in Figure 28(b) and (c).
The computational results are shown in Fig. 29. The
LCM failed at the rst load limit point, the WCM failed
near snap-back points in the loading directions, and the
ALCM, GDCM and ORP captured the full behavior. From
the displacement-displacement curves shown in Fig. 30, it
is clear that no linear combination of the displacement com-
ponents increases monotonically, therefore a traditional dis-
placement control method could not capture the full behavior
[109]. The variable DCM, however can and does capture the
full equilibrium path, as indicated in Fig. 29. A summary
of the parameter and resulting behavior for each method is
shown in Table 8.
2
u
3
u
P
P 5 . 1
P 5 . 1
x
y
z
(a)
(b)
3
u
1
u
EA
EA
2 / EA
2 / EA
3
1
4
2
P 75 . 0 P 25 . 0
2
u
697 . 1
414 . 1
0 . 1
(c)
0 . 1
P 25 . 0
1
u
x
z
y
z
Figure 28. Twelve-bar truss schematic (a) 3D view, (b) x-z view, (c)
y-z view
5.1.5 Lee Frame
The Lee frame is a well known example for evaluat-
ing nonlinear solvers, for which an analytical solution ex-
ists [127]. Schweizerhof and Wriggers [128] compared up-
dated and spherical plane path following schemes using the
Lee frame discretized with beam elements. Parente and Vaz
[129] used this example discretized with quadratic isopara-
metric 8-node elements for shape design sensitivity analysis
for nonlinear structures.
Deformation of the structure is characterized by large
rigid body displacements and rotations resulting in insta-
bility. The behavior is highly nonlinear with two load
limit points and snap-back behavior (i.e. displacement limit
point). The Lee Frame, shown in Fig. 31, was discretized
with 10 beam elements, each with the following proper-
ties (consistent units are assumed): EA = 4320, GJ = 2160,
EI =1440. The deformed shape at different points during the
incremental-iterative is illustrated in Fig. 32. The TL formu-
lation is used to describe the nonlinear beam elements, which
are capable of resisting longitudinal and transverse loads ap-
plies between supports as well as large rotations. Only ge-
0.5 0 0.5 1 1.5 2 2.5
0.1
0.05
0
0.05
0.1
Displacement in DOF u
3
L
o
a
d
DCM,
ALCM,
GDCM,
ORP
LCM
WCM
(c)
0 0.5 1 1.5 2 2.5
0.1
0.05
0
0.05
0.1
0.15
Displacement in DOF u
2
L
o
a
d
DCM,
ALCM,
GDCM,
ORP
LCM
WCM
(b)
0.2 0 0.2 0.4 0.6 0.8
0.1
0.05
0
0.05
0.1
0.15
Displacement in DOF u
1
L
o
a
d
DCM,
ALCM,
GDCM,
ORP
LCM
WCM
(a)
L
o
a
d

F
a
c
t
o
r
L
o
a
d

F
a
c
t
o
r
L
o
a
d

F
a
c
t
o
r
Figure 29. Twelve bar truss results: Markers indicate where the so-
lution schemes failed. LCM failed at the rst load limit point, WCM
failed at the rst displacement limit point, and the variable DCM,
ALCM, GDCM, and ORP captured the full equilibrium path. (a) DOF
u
1
, (b) DOF u
2
, (c) DOF u
3
ometric nonlinearity is considered, as a linear constitutive
relationship is assumed.
The equilibrium paths for the Lee frame example are
shown in Fig. 33, and the results are also summarized in
Table 9. The nonlinear solution schemes generally behave
as expected and as they did in the previous examples. The
LCM only captured behavior up to the rst load limit point.
0.5 0 0.5 1 1.5 2 2.5
0
0.5
1
1.5
2
Displacement u
3
D
i
s
p
l
a
c
e
m
e
n
t

u
2
(c)
0.5 0 0.5 1 1.5 2 2.5
0
0.2
0.4
0.6
0.8
Displacement u
3
D
i
s
p
l
a
c
e
m
e
n
t

u
1
(b)
0 0.2 0.4 0.6 0.8
0
0.5
1
1.5
2
Displacement u
1
D
i
s
p
l
a
c
e
m
e
n
t

u
2
(a)
Figure 30. Displacement-displacement curves for the twelve bar
truss (a) u
2
vs u
1
, (b) u
1
vs u
3
, (c) u
2
vs u
3
The WCM failed at the snap-back point in degree of freedom
u
2
, which is also the loading direction. The variable DCM,
ALCM, GDCM, and ORP captured the full behavior. A sum-
mary of the input parameters used in this example is given in
Table 9.
5.2 Evaluation of Solution Schemes
The robustness and sensitivity to input parameters of the
methods is investigated in the section. The parameters for
all of the schemes were varied then applied to the problems
examined in the previous subsection. The resulting behavior
is summarized and the schemes are qualitatively evaluated
here.
Table 8. Summary of the twelve bar truss example
Method
Max.
steps
Control
factor
Scale
factor
Behavior
LCM
100 0.001 n/a Failed at
load limit
point
DCM
v,1
465 0.01 n/a Fully
converged
ALCM
165 0.05 n/a Fully
converged
WCM
100 0.0002 n/a Failed at
displace-
ment limit
point
GDCM
115 0.025 n/a Fully
converged
ORP
650 0.0025 2 Fully
converged
v
Variable ,
1
Fixed control coordinate: u
1
G I
A E
,
,
1
u
2
u
P
120
120
x
y
Figure 31. Lee frame schematic
First, it is well known that the LCM cannot capture the
equilibrium path beyond load limit points. The method is in-
herently sensitive to the control parameter, which is the load
increment. When the load parameter exceeds the rst lo-
cal external load maximum the method will either diverge or
snap through the unstable behavior.
The variable DCM successfully captured the equilib-
rium solution with a control factor of 0.001, 0.01 or 0.1 for
all examples in the previous section. However, this method
0 50 100 150
20
0
20
40
60
80
100
120
140
160
1
x
y
Deformed shape
corresponding to
Label 1 in Fig. (a)
0 50 100 150
20
0
20
40
60
80
100
120
140
160
3
x
y
Deformed shape
corresponding to
Label 3 in Fig. (a)
0 50 100 150
20
0
20
40
60
80
100
120
140
160
2
x
y
Deformed shape
corresponding to
Label 2 in Fig. (a)
0 50 100 150
20
0
20
40
60
80
100
120
140
160
4
x
y
Deformed shape
corresponding to
Label 4 in Fig. (a)
0 50 100 150
20
0
20
40
60
80
100
120
140
160
5
x
y
Deformed shape
corresponding to
Label 5 in Fig. (a)
0 20 40 60 80 100
1.5
1
0.5
0
0.5
1
1.5
2
Displacement
L
o
a
d

F
a
c
t
o
r
1 1
2
2
3 3
4
4
5
5


DOF u
1
DOF u
2
(a) (b)
(c) (d)
(e) (f)
Figure 32. Deformed shape of the Lee Frame corresponding to (b) label 1 (c) label 2 (d) label 3 (e) label 4 (f) label 5 in (a) Load factor vs.
displacement curve for DOFs u
1
and u
2
(see Fig. 31).
will not be successful for problems with a single degree
of freedom experiencing snap-back, and will have difculty
for problems where snap-back occurs in multiple degrees of
freedom simultaneously.
The ALCM generally captures the entire equilibrium
curve for the problems studied here when the control fac-
tor was selected between 0.001 and 1.0, and the value of the
control factor may even increase for problems with relatively
high maximum displacements. For example, the maximum
displacement in the 12-bar truss problem is about 2.2 and
the ALCM captured the entire solution path with a control
factor between 0.001 and 0.1. However, in the Lee Frame
problem the maximum displacement is around 95, and the
control factor for the ALCM could be as high as 5.
The WCM is able to capture the entire solution path for
problems that do not feature snap-back behavior, however a
0 20 40 60 80 100
2
1
0
1
2
Displacement
L
o
a
d

F
a
c
t
o
r
DCM, ALCM
GDCM, ORP
LCM
WCM
DOF u
1
DOF u
2
1
u
2
u
P
Figure 33. Lee frame results: Markers indicate where the solution
schemes failed. LCM failed at the rst load limit point, WCM failed
at the rst displacement limit point, and the variable DCM, ALCM,
GDCM, and ORP captured the full equilibrium path.
Table 9. Summary of Lee frame example
Method
Max.
steps
Control
factor
Scale
factor
Behavior
LCM
100 0.05 n/a Failed at
load limit
point
DCM
v,1
100 0.1 n/a Fully
converged
ALCM
80 5 n/a Fully
converged
WCM
300 0.004 n/a Failed at
rst dis-
placement
limit point
GDCM
80 0.3 n/a Fully
converged
ORP
51,000 0.005 0.1 Fully
converges
v
Variable ,
1
Fixed control coordinate: u
1
fairly small control factor is required. The method consis-
tently diverges at displacement limit points, despite modi-
cations to the input parameter.
The GDCM generally captures the entire equilibrium
curve for the problems studied here when the control factor
was selected between 0.001 and 0.01. It should be noted that
the GDCM takes a fewer number of steps for a given control
factor compared to other schemes. For example, the GDCM
required 234 steps to capture the equilibrium curve of the
von Mises truss example with a control factor of 0.001. The
variable DCM and the ALCM required 30,000 and 35,000
0 20 40 60 80 100 120
2
1
0
1
2
3
Displacement
L
o
a
d

F
a
c
t
o
r
= 0.1,
= 0.005
= 0.1,
= 0.1
= 0.01,
= 0.1
= 0.2,
= 0.01
DOF u
1
DOF u
2
1
u
2
u
P
Figure 34. Lee frame results using the ORP with different values for
the control factor, dl, and scale factor, b, which are indicated by the
marker labels.
steps, respectively, for the same value of the control factor.
When the control factor for the von Mises truss problem was
chosen as 0.1 the variable DCM and the ALCM required 285
and 350 steps, respectively, but the GDCM could not accu-
rately capture the solution path because too few steps were
taken. Therefore, a smaller control is generally preferable
for this method, but this does not imply that a large number
of steps is required.
The ORP is the most sensitive of the unied schemes
to the input parameters for the problems investigated in this
work. Scale factors values ranging between 0.01 and 1.0 and
control factors ranging between 0.001 and 1.0 were tested
for all problems in the previous section. Generally a smaller
control factor and scale factor yields converged results, how-
ever the number of steps required increases proportionally as
the factors decrease. Additionally this trend was not uniform
across all examples run in the previous section. To illustrate
the sensitivity of the ORP to the input parameters, the Lee
Frame example is revisited. Figure 34 shows the different
results obtained for the ORP depending on the selection of
input parameters, given in Table 10. The nal converged
solution was obtained with a relatively small control factor
and larger scale factor, which is not a trend that is observed
for different problems. Additionally, 51,000 steps were re-
quired to capture the equilibrium path, which is 600 times
more steps than was required with the ALCM, for example.
5.3 Distribution of NLS++ Source Code
The entire NLS++ library and a tutorial are available
for download at www.ghpaulino.com/NLS_tutorial.html. A
screen shot of the website is shown in Fig. 35.
For Microsoft Visual Studio users, the code and Visual
Studio project (*.prj) and solution (*.sln) les are available
for download. In addition, the stand-along source and library
les are also available. The tutorial includes a detailed ex-
Figure 35. Screen shot of www.ghpaulino.com/NLS_tutorial.html
planation of the code organization, which is meant to be sup-
plementary to the information provide in Section 4. Next,
step-by-step instructions for compiling and running the code
using Visual Studio are provided. The input les used to gen-
erate the results in the previous section are distributed, along
with a guide for the user to create his/her own set of input
les. Finally, simple MATLAB codes, which plots the load
vs. displacement curves, are available.
6 Conclusions
In this paper, we review the formulation and applica-
tion of nonlinear solution schemes with an emphasis on
those schemes unied into the object-oriented library called
Table 10. Behavior of the ORP applied to the Lee frame example
Control
factor
Scale
factor
Behavior
0.1 0.1 Failed at rst load limit
point (750 steps)
0.1 0.01 Failed at rst
displacement limit
point (13,676 steps)
0.01 0.2 Failed at second
displacement limit
point (9,235 steps)
0.005 0.1 Fully converges
(51,000 steps)
NLS++. A variety of schemes are cast into the (N+1) di-
mensional space then tested and evaluated with functions and
structural systems exhibiting strong nonlinearities. The en-
tire NLS++ library and a tutorial are available for download
at www.ghpaulino.com/NLS_tutorial.html. Abrief reviewof
other nonlinear solution techniques is also presented, how-
ever the references in this area are not exhaustive.
The full potential of NLS++ to capture highly nonlinear
behavior can be achieved by integrating it into a general -
nite element analysis package. The software, TopFEM, is an
object oriented nite element analysis code that utilizes TopS
[130], a topological data structure for representing nite el-
ement meshes. At present it can represent large scale prob-
lems and can be used for complex analysis including topol-
ogy optimization and dynamic fracture simulation. Integra-
tion of NLS++ into TopFEM would therefore greatly im-
prove the capabilities of both object-oriented analysis codes.
Another area of further investigation lies in imple-
menting an efcient linear solver, which is utilized in the
incremental-iterative procedure. Iterative solvers, which use
successive approximations beginning from an initial esti-
mate, may be the most efcient and robust in the context
of the NLS++. The conjugate gradient method for example,
is very efcient for large problems, however, it is only appli-
cable to symmetric, positive-denite systems [131]. Other
optimization based solvers applicable to non-symmetric ma-
trices, such as the bi-conjugate gradient method or the gen-
eralized minimum residual method [132], may be explored
for NLS++ in order to represent a larger class of problems
[116, 133].
Acknowledgments
Soe E. Leon gratefully acknowledges the support from
the National Science Foundation Graduate Research Fel-
lowship Program (GRFP). Anderson Pereira and Ivan F.
M. Menezes acknowledge the nancial support by Tecgraf
(Group of Technology in Computer Graphics), PUC-Rio,
Rio de Janeiro, Brazil.
References
[1] Bergan, P. G., Horrigmoe, G., Krakeland, B., and Sor-
eide, T. H., 1978. Solution techniques for non-linear
nite element problems. International Journal for
Numerical Methods in Engineering, 12(11), pp. 1677
1696.
[2] Mondkar, D. P., and Powell, G. H., 1978. Evaluation
of solution schemes for nonlinear structures. Com-
puters & Structures, 9(3), pp. 223236.
[3] Clarke, M. J., and Hancock, G. J., 1990. A study
of incremental-iterative strategies for non-linear anal-
yses. International Journal for Numerical Methods
in Engineering, 29(7), pp. 13651391.
[4] Yang, Y.-B., and Shieh, M.-S., 1990. Solution
Method for Nonlinear Problems with Multiple Criti-
cal Points. AIAA Journal, 28(12), pp. 21102116.
[5] Yang, Y.-B., and Kuo, S.-R., 1994. Theory and Anal-
ysis of Nonlinear Framed Structures. Prentice Hall
PTR.
[6] Rezaiee-Pajand, M., Tatar, M., and Moghaddasie,
B., 2009. Some geometrical bases for incremental-
iterative methods. International Journal of Engineer-
ing, Transactions B: Applications, 22(3), pp. 245
256.
[7] Reddy, J. N., 2004. An Introduction to Nonlinear Fi-
nite Element Analysis. Oxford University Press, New
York.
[8] Zakharov, Y. V., Okhotkin, K. G., and Skoroboga-
tov, A. D., 2004. Bending of Bars under a Follower
Load. Journal of Applied Mechanics and Technical
Physics, 45(5), pp. 756763.
[9] Riks, E., 1979. An incremental approach to the
solution of snapping and buckling problems. In-
ternational Journal of Solids and Structures, 15(7),
pp. 529551.
[10] Criseld, M. A., 1981. A fast incremental/iterative
solution procedure that handles snap-through. Com-
puters and Structures, 13(1-3), pp. 5562.
[11] Bathe, K. J., 1996. Finite Element Procedures. Pren-
tice Hall, Upper Saddle River, New Jersey.
[12] Belytschko, T., Liu, W., and Moran, B., 2000. Nonlin-
ear Finite Elements for Continua and Structures. John
Wiley & Sons, Inc., West Sussex, England.
[13] Bonet, J., 1997. Nonlinear Continuum Mechanics for
Finite Element Analysis. Cambridge University Press,
New York, USA.
[14] Criseld, M. A., 1991. Non-linear Finite Element
Analysis of Solids and Structures. Volume 1: Essen-
tials. John Wiley & Sons, Inc., West Sussex, England.
[15] Criseld, M. A., 1997. Non-linear Finite Element
Analysis of Solids and Structures. Volume 2: Ad-
vanced Topics. Wiley, John &Sons, Inc., West Sussex,
England.
[16] Mang, H. A., Honder, G., and Jia, X., 2011. On
the interdependency of primary and initial secondary
equilibrium paths in sensitivity analysis of elastic
structures. Computer Methods in Applied Mechan-
ics and Engineering, 200(13-16), pp. 15581567.
[17] Adomian, G., 1988. A Review of the Decomposition
in Applied Mathematics. Journal of Mathematical
Analysis and Applications, 135(2), pp. 501544.
[18] He, J.-H., 2000. A Review on Some New Recently
Developed Nonlinear Analytical Techniques. Inter-
national Journal of Nonlinear Sciences and Numeri-
cal Simulation, 1(1), pp. 5170.
[19] He, J.-H., 2006. Some asymptotic method for
strongly nonlinear equations. International Journal
of Modern Physics B, 20(10), pp. 11411199.
[20] He, J.-H., 2006. Addendum New interpretation of
homotopy perturbation method. International Jour-
nal of Modern Physics B, 20(18), pp. 25612568.
[21] Babajee, D., and Dauhoo, M., 2006. An analysis of
the properties of the variants of Newtons method with
third order convergence. Applied Mathematics and
Computation, 183(1), pp. 659684.
[22] Adomian, G., 1983. Stochastic Systems. Academic
Press, New York.
[23] Adomian, G., 1985. On the solution of algebraic
equations by the decomposition method. Journal
of Mathematical Analysis and Applications, 105(1),
pp. 141166.
[24] Abbaoui, K., 1994. Convergence of Adomians
method applied to nonlinear equations. Mathemat-
ical and Computer Modelling, 20(9), pp. 6973.
[25] Babolian, E., 2002. Solution of nonlinear equations
by modied adomian decomposition method. Ap-
plied Mathematics and Computation, 132(1), pp. 167
172.
[26] Abbasbandy, S., 2003. Improving Newton-Raphson
method for nonlinear equations by modied Adomian
decomposition method. Applied Mathematics and
Computation, 145(2-3), pp. 887893.
[27] Chun, C., 2006. A new iterative method for solving
nonlinear equations. Applied Mathematics and Com-
putation, 178, pp. 415422.
[28] Darvishi, M., and Barati, A., 2007. Super cu-
bic iterative methods to solve systems of nonlinear
equations. Applied Mathematics and Computation,
188(2), pp. 16781685.
[29] Darvishi, M., and Barati, A., 2007. A third-order
Newton-type method to solve systems of nonlinear
equations. Applied Mathematics and Computation,
187(2), pp. 630635.
[30] Noor, M. A., and Noor, K. I., 2006. Three-step itera-
tive methods for nonlinear equations. Applied Math-
ematics and Computation, 183(1), pp. 322327.
[31] He, J.-H., 1999. Homotopy perturbation technique.
Computer Methods in Applied Mechanics and Engi-
neering, 178(3-4), pp. 257262.
[32] He, J.-H., 2000. A coupling method of a homotopy
technique and a perturbation technique for non-linear
problems. International Journal of Non-Linear Me-
chanics, 35(1), pp. 3743.
[33] He, J.-H., 2003. Homotopy perturbation method: a
new nonlinear analytical technique. Applied Mathe-
matics and Computation, 135(1), pp. 7379.
[34] He, J.-H., 2008. An elementary introduction to re-
cently developed asymptotic methods and nanome-
chanics in textile engineering. International Journal
of Modern Physics B, 22(21), pp. 34873578.
[35] Golbabai, A., and Javidi, M., 2007. A new family
of iterative methods for solving system of nonlinear
algebric equations. Applied Mathematics and Com-
putation, 190(2), pp. 17171722.
[36] Jorabchi, K., and Suresh, K., 2011. A robust contin-
uation method to pass limit-point instability. Finite
Elements in Analysis and Design, 47(11), pp. 1253
1261.
[37] Liao, S.-J., and Cheung, K., 2003. Homotopy anal-
ysis of nonlinear progressive waves in deep water.
Journal of Engineering Mathematics, 45(2), pp. 105
116.
[38] He, J.-H., 2005. Application of homotopy pertur-
bation method to nonlinear wave equations. Chaos,
Solitons & Fractals, 26(3), pp. 695700.
[39] Sadighi, A., and Ganji, D., 2007. Solution of the gen-
eralized nonlinear boussinesq equation using homo-
topy perturbation and variational iteration methods.
International Journal of Nonlinear Sciences and Nu-
merical Simulation, 8(3), pp. 435443.
[40] Abbasbandy, S., 2006. The application of homotopy
analysis method to nonlinear equations arising in heat
transfer. Physics Letters A, 360(1), pp. 109113.
[41] Ganji, D., and Sadighi, A., 2007. Application of
homotopy-perturbation and variational iteration meth-
ods to nonlinear heat transfer and porous media equa-
tions. Journal of Computational and Applied Math-
ematics, 207(1), pp. 2434.
[42] Domairry, G., and Nadim, N., 2008. Assessment of
homotopy analysis method and homotopy perturba-
tion method in non-linear heat transfer equation. In-
ternational Communications in Heat and Mass Trans-
fer, 35(1), pp. 93102.
[43] Ghorbani, A., and Saberi-Nadja, J., 2007. Hes ho-
motopy perturbation method for calculating adomian
polynomials. International Journal of Nonlinear Sci-
ences and Numerical Simulation, 8(2), pp. 229232.
[44] Ozis, T., and Yildirim, A., 2008. Comparison be-
tween Adomians method and Hes homotopy pertur-
bation method. Computers & Mathematics with Ap-
plications, 56(5), pp. 12161224.
[45] Ghorbani, A., 2009. Beyond Adomian polynomials:
He polynomials. Chaos, Solitons & Fractals, 39(3),
pp. 14861492.
[46] Kou, J., Li, Y., and Wang, X., 2006. A mod-
ication of Newton method with third-order con-
vergence. Applied Mathematics and Computation,
181(2), pp. 11061111.
[47] Weerakoon, S., and Fernando, T., 2000. A variant of
Newtons method with accelerated third-order conver-
gence. Applied Mathematics Letters, 13(8), pp. 87
93.
[48] Frontini, M., and Sormani, E., 2003. Some variant
of Newtons method with third-order convergence.
Applied Mathematics and Computation, 140(2-3),
pp. 419426.
[49] Cardoso, E. L., and Fonseca, J. S. O., 2007. The
GDC method as an orthogonal arc-length method.
Communications in Numerical Methods in Engineer-
ing, 23(4), pp. 263272.
[50] Homeier, H. H. H., 2005. On Newton-type methods
with cubic convergence. Journal of Computational
and Applied Mathematics, 176(2), pp. 425432.
[51] Jisheng, K., Yitian, L., and Xiuhua, W., 2006. A uni-
parametric Chebyshev-type method free from second
derivatives. Applied Mathematics and Computation,
179(1), pp. 296300.
[52] Babajee, D. K. R., Dauhoo, M. Z., Darvishi, M. T.,
Karami, A., and Barati, A., 2010. Analysis of two
Chebyshev-like third order methods free from sec-
ond derivatives for solving systems of nonlinear equa-
tions. Journal of Computational and Applied Math-
ematics, 233(8), pp. 20022012.
[53] King, R., 1973. A family of fourth order methods
for nonlinear equations. SIAM Journal on Numerical
Analysis, 10, pp. 873879.
[54] Sharma, J., and Guha, R., 2007. Afamily of modied
Ostrowski methods with accelerated sixth order con-
vergence. Applied Mathematics and Computation,
190(1), pp. 111115.
[55] Bi, W., Wu, Q., and Ren, H., 2009. A new family
of eighth-order iterative methods for solving nonlinear
equations. Applied Mathematics and Computation,
214(1), pp. 236245.
[56] Wriggers, P., and Simo, J. C., 1990. A general pro-
cedure for the direct computation of turning and bifur-
cation points. International Journal for Numerical
Methods in Engineering, 30(1), pp. 155176.
[57] Planinc, I., and Saje, M., 1999. A quadratically
convergent algorithm for the computation of stability
points: The application of the determinant of the tan-
gent stiffness matrix. Computer Methods in Applied
Mechanics and Engineering, 169(1-2), pp. 89105.
[58] Fujii, F., and Okazawa, S., 1997. Pinpointing bifur-
cation points and branch-switching. Journal of Engi-
neering Mechanics, 123(3), pp. 179189.
[59] Fujii, F., and Ramm, E., 1997. Computational bi-
furcation theory: path-tracing, pinpointing and path-
switching. Engineering Structures, 19(5), pp. 385
392.
[60] Balay, S., Gropp, W. D., McInnes, L. C., and Smith,
B. F., 1997. Efcient management of parallelism in
object oriented numerical software libraries. In Mod-
ern Software Tools in Scientic Computing, E. Arge,
A. M. Bruaset, and H. P. Langtangen, eds., Birkhuser
Press, pp. 163202.
[61] Balay, S., Brown, J., , Buschelman, K., Eijkhout, V.,
Gropp, W. D., Kaushik, D., Knepley, M. G., McInnes,
L. C., Smith, B. F., and Zhang, H., 2011. PETSc users
manual. Tech. Rep. ANL-95/11 - Revision 3.2, Ar-
gonne National Laboratory.
[62] Balay, S., Brown, J., Buschelman, K., Gropp, W. D.,
Kaushik, D., Knepley, M. G., McInnes, L. C., Smith,
B. F., and Zhang, H., 2011. PETSc Web page.
[63] Kirk, B. S., Peterson, J. W., Stogner, R. H., and Carey,
G. F., 2006. libmesh: a c++ library for parallel adap-
tive mesh renement/ coarsening simulations. Engi-
neering with Computers, 22(3-4), pp. 237254.
[64] Salinger, A. G., Bou-Rabee, N. M., Pawlowski, R. P.,
Wilkes, E. D., Burroughs, E. A., Lehoucq, R. B., and
Romero, L. A., 2002. LOCA 1.0 Library of continua-
tion algorithms: Theory and implementation manual.
Tech. rep., Technical Report SAND2002-0396, San-
dia National Laboratories, Albuquerque, NM.
[65] Batoz, J. J., and Dhatt, G., 1979. Incremental Dis-
placement Algorithms for nonlinear problems. Inter-
national Journal for Numerical Methods in Engineer-
ing, 14(8), pp. 12621267.
[66] Lages, E. N., Paulino, G. H., Menezes, I. F. M., and
Silva, R. R., 1999. Nonlinear Finite Element Analy-
sis using an Object-Oriented Philosophy - Application
to Beam Elements and to the Cosserat Continuum.
Engineering with Computers, 15(1), pp. 7389.
[67] Riks, E., 1972. The application of Newtons method
to the problem of elastic stability. Transactions of the
ASME: Journal of Applied Mechanics, 39, pp. 1060
1066.
[68] Powell, G., and Simons, J., 1981. Improved iteration
strategy for nonlinear structures. International Jour-
nal for Numerical Methods in Engineering, 17(10),
pp. 14551467.
[69] Padovan, J., and Tovichakchaikul, S., 1982. Self-
adaptive predictor-corrector algorithms for static non-
linear structural analysis. Computers & Structures,
15(4), p. 12.
[70] Caballero, A., Willam, K., and Carol, I., 2008. Con-
sistent tangent formulation for 3d interface modeling
of cracking/fracture in quasi-brittle materials. Com-
puter Methods in Applied Mechanics and Engineer-
ing, 197(33-40), pp. 28042822.
[71] Fujii, F., Choong, K., and Gong, S., 1992. Variable
displacement control to overcome turning points of
nonlinear elastic frames. Computers & Structures,
44(1-2), pp. 133136.
[72] Simons, J., and Bergan, P. G., 1984. Hyperplane dis-
placement control methods in nonlinear analysis. In
Innovative Methods for Nonlinear Problems, W. K.
Liu, T. Belytschko, and K. C. Park, eds., Pineridge
Press, pp. 345364.
[73] Ramm, E., 1981. Strategies for tracing nonlinear
responses near limit points. In Nonlinear Finite
Element Analysis in Structural Mechanics. Spring-
Verlag, New York, p. 68.
[74] Bellini, P., and Chuyla, A., 1987. An improved auto-
matic incremental algorithm for the efcient solution
of nonlinear nite element equations. Computers &
Structures, 26(1-2), pp. 99110.
[75] Park, K. C., 1982. A family of solution algo-
rithms for nonlinear structural analysis based on relax-
ation equations. International Journal for Numerical
Methods in Engineering, 18(9), pp. 13371347.
[76] Wempner, G. A., 1971. Discrete Approximation Re-
lated to Nonlinear Theories of Solids. International
Journal of Solids and Structures, 1, pp. 15811599.
[77] Forde, W. R., and Stiemer, S. F., 1987. Improved
arc length orthogonality methods for nonlinear nite
element analysis. Computers & Structures, 27(5),
pp. 625630.
[78] Criseld, M. A., 1983. Arc-length method inclu-
ing line searches and accelerations. International
journal for numerical methods in engineering, 19(9),
pp. 12691289.
[79] Lam, W. F., and Morley, C. T., 1992. Arc-length
method for passing limit points in structural calcu-
lation. Journal of Structural Engineering, 118(1),
pp. 169185.
[80] Ritto-Correa, M., and Camotim, D., 2008. On
the arc-length and other quadratic control methods:
Established, less known and new implementation
procedures. Computers & Structures, 86(11-12),
pp. 13531368.
[81] Carrera, E., 1994. A study on arc-length-type meth-
ods and their operation failures illustrated by a simple
model. Computers & Structures, 50(2), pp. 217229.
[82] Feng, Y. T., Peric, D., and Owen, D. R. J., 1996. A
new criterion for determination of initial loading pa-
rameter in arc-length methods. Computers & Struc-
tures, 58(3), pp. 479485.
[83] Yang, Y.-B., and McGuire, W., 1985. A work control
method for geometrically nonlinear analysis. In Pro-
ceedings of the 1985 International Conference on Nu-
merical Methods in Engineering: Theory and Appli-
cations, J. Middleton and G. N. Pande, eds., pp. 913
921.
[84] Al-Rasby, S. N., 1991. Solution techniques in non-
linear structural analysis. Computers & Structures,
40(4), pp. 985993.
[85] Carol, I., Lpez, C. M., and Roa, O., 2001. Mi-
cromechanical analysis of quasi-brittle materials us-
ing fracture-based interface elements. Interna-
tional Journal for Numerical Methods in Engineering,
52(12), pp. 193215.
[86] Gao, Y. F., and Bower, A. F., 2004. A simple tech-
nique for avoiding convergence problems in nite ele-
ment simulations of crack nucleation and growth on
cohesive interfaces. Modelling and Simulation in
Materials Science and Engineering, 12(3), pp. 453
463.
[87] Ngo, D., Park, K., Paulino, G. H., and Huang, Y.,
2010. On the constitutive relation of materials with
microstructure using a potential-based cohesive model
for interface interaction. Engineering Fracture Me-
chanics, 77(7), pp. 11531174.
[88] Yang, Z., and Jianfei, C., 2004. Fully automatic
modelling of cohesive discrete crack propagation in
concrete beams using local arc-length methods. In-
ternational Journal of Solids and Structures, 41(3-4),
pp. 801826.
[89] Gu, H., and Chattopadhyay, A., 1996. Delamina-
tion buckling and postbuckling of composite cylindri-
cal shells. AIAA Journal, 34(6), pp. 12791286.
[90] Alfano, G., and Criseld, M. A., 2001. Finite ele-
ment interface models for the delamination analysis of
laminated composites: mechanical and computational
issues. International Journal for Numerical Methods
in Engineering, 50(7), pp. 17011736.
[91] Mallardo, V., and Allesandri, C., 2004. Arc-length
procedures with BEM in physically nonlinear prob-
lems. Engineering Analysis with Boundary Ele-
ments, 28(6), pp. 547559.
[92] Mukherjee, S., and Chandra, A., 1984. Boundary
element formulations for large strain-large deforma-
tion problems of plasticity and viscoplasticity. In
Developments in Boundary Element Methods-3, P. K.
Banerjee and S. Mukherjee, eds. Elsevier, Barking,
Essex, UK, ch. 2, pp. 2758.
[93] Chandra, A., and Mukherjee, S., 1983. Applications
of the boundary element method to large strain large
deformation problems of viscoplasticity. Journal of
Strain Analysis for Engineering Design, 18(4).
[94] Chandra, A., and Mukherjee, S., 1984. Boundary el-
ement formulations for large strain-large deformation
problems of viscoplasticity. International Journal of
Solids and Structures, 20(1), pp. 4153.
[95] Paulino, G. H., and Liu, Y., 2001. Implicit consis-
tent and continuum tangent operators in elastoplastic
boundary element formulations. Computer Methods
in Applied Mechanics and Engineering, 190(15-17),
pp. 21572179.
[96] Bathe, K. J., and Dvorkin, E. N., 1983. On the auto-
matic solution of nonlinear nite element equations.
Computers & Structures, 17(5-6), pp. 871879.
[97] Lin, T. W., Yang, Y.-B., and Shiau, H. T., 1993. A
work weighted state vector control method for geo-
metrically nonlinear analysis. Computers & Struc-
tures, 46(4), pp. 689694.
[98] Chen, H., and Blandford, G. E., 1993. Work-
increment-control method for non-linear analysis.
International Journal for Numerical Methods in En-
gineering, 36(6), pp. 909930.
[99] Kouhia, R., 2008. Stabilized forms of orthogonal
residual and constant incremental work control path
following methods. Computer Methods in Applied
Mechanics and Engineering, 197, pp. 13891396.
[100] Yang, Y.-B., Lin, T., Leu, L., and Huang, C., 2008.
Inelastic postbuckling response of steel trusses un-
der thermal loadings. Journal of Constructional Steel
Research, 64(12), pp. 13941407.
[101] Thai, H.-T., and Kim, S.-E., 2009. Large deection
inelastic analysis of space trusses using generalized
displacement control method. Journal of Construc-
tional Steel Research, 65(10-11), pp. 19871994.
[102] Liew, J. Y. R., Punniyakotty, N. M., and Shanmugam,
N. E., 1997. Advanced analysis and design of spatial
structures. Journal of Constructional Steel Research,
42(1), pp. 2148.
[103] Lakshmi, B., and Shanmugam, N. E., 2002. Non-
linear Analysis of In-Filled Steel-Concrete Composite
Columns. Journal of Structural Engineering, 128(7),
p. 922.
[104] Li, C., and Chou, T.-W., 2003. Multiscale Model-
ing of Carbon Nanotube Reinforced Polymer Com-
posites. Journal of Nanoscience and Nanotechnol-
ogy, 3(5), pp. 423430.
[105] Li, C., and Chou, T.-W., 2003. Elastic moduli of
multi-walled carbon nanotubes and the effect of van
der Waals forces. Composites Science and Technol-
ogy, 63(11), pp. 15171524.
[106] Krenk, S., 1995. An orthogonal residual procedure
for non-linear nite element equations. International
Journal for Numerical Methods in Engineering, 38(5),
pp. 823840.
[107] Asferg, J. L., Poulsen, P. N., and Nielsen, L. O., 2007.
A consistent partly cracked XFEM element for cohe-
sive crack growth. International Journal for Numer-
ical Methods in Engineering, 72(4), pp. 464485.
[108] Mougaard, J. F., Poulsen, P. N., and Nielsen, L. O.,
2007. An enhanced cohesive crack element for
XFEM using a double enriched displacement eld.
In 6th International Conference on Fracture Mechan-
ics of Concrete and Concrete Structures, pp. 139146.
[109] Krenk, S., and Hededal, O., 1995. A dual orthog-
onality procedure for non-linear equations. Com-
puter Methods in Applied Mechanics and Engineer-
ing, 7825(1), pp. 95107.
[110] Poulsen, P. N., and Damkilde, L., 1996. A Flat Tri-
angular Shell Element With Loof Nodes. Interna-
tional Journal for Numerical Methods in Engineering,
39(22), pp. 38673887.
[111] Renard, Y., and Pommier, J., 2011. Getfem++ web
page.
[112] Schenk, O., and Gartner, K., 2004. Solving Unsym-
metric Sparse Systems of Linear Equations with PAR-
DISO. Journal of Future Generation Computer Sys-
tems, 20(3), pp. 475487.
[113] Schenk, O., and Gartner, K., 2006. On fast factor-
ization pivoting methods for symmetric indenite sys-
tems. Electronic Transactions on Numerical Analy-
sis, 23, pp. 158179.
[114] Davis, T., 2004. A column pre-ordering strategy
for the unsymmetric-pattern multifrontal method.
ACM Transactions on Mathematical Software, 30(2),
pp. 165195.
[115] Mello, L. A. M., de Sturler, E., Paulino, G. H., and
Silva, E., 2010. Recycling Krylov subspaces for ef-
cient large-scale electrical impedance tomography.
Computer Methods in Applied Mechanics and Engi-
neering, 199(49-52), pp. 31013110.
[116] Parks, M., De Sturler, E., Mackey, G., Johnson, D.,
and Maiti, S., 2006. Recycling krylov subspaces for
sequences of linear systems. SIAM Journal on Sci-
entic Computing, 28(5), pp. 16511674.
[117] Pai, F., 2007. Highly Flexible Structures: Modeling,
Computation, and Experimentation. American Insti-
tute of Aeronautics and Astronautics.
[118] Doyle, J. F., 2010. Nonlinear Analysis of Thin-
Walled Structures: Statics, Dynamics, and Stability.
Springer-Verlag New York, Inc.
[119] Palazaotto, A. N., and Dennis, S. T., 1992. Nonlin-
ear Analysis of Shell Structures. American Institute
of Aeronautics and Astronautics.
[120] Stanciulescu, I. Assistant Professor of Civil En-
gineering, Rice University, personal communication,
March 2, 2009.
[121] Bergan, P. G., 1980. Solution algorithms for non-
linear structural problems. Computers & Structures,
12(4), pp. 497509.
[122] Bazant, Z. P., and Cedolin, L., 1991. Stability of Struc-
tures - Elastic, Inelastic, Fracture and Damage Theo-
ries. Oxford University Press, New York.
[123] Leon, S., 2010. A unied library of nonlinear so-
lutions schemes: An excursion into nonlinear com-
putational mechanics. Masters thesis, University of
Illinois at Urbana-Champaign.
[124] Simo, J., and Hughes, T. J. R., 1998. Computational
Inelasticity, Vol. 7. Springer-Verlag.
[125] Yang, Y.-B., and Leu, L. J., 1991. Constitutive laws
and force recovery procedures in nonlinear analysis
of trusses. Computer Methods in Applied Mechanics
and Engineering, 92(1), pp. 121131.
[126] Yang, Y.-B., Leu, L. J., and Yang, J., 2007. Key Con-
siderations in Tracing the Postbuckling Response of
Structures with Multi Winding Loops. Mechanics of
Advanced Materials and Structures, 14(3), pp. 175
189.
[127] Lee, S. L., Manuel, F. S., and Rossow, E. C.,
1968. Large deection and stability of elastic
frames. ASCE Journal of Engineering Mechanics,
94, pp. 521533.
[128] Schweizerhof, K. H., and Wriggers, P., 1986. Consis-
tent linearization for path following methods in non-
linear FE analysis.. Computer Methods in Applied
Mechanics and Engineering, 59(3), pp. 261279.
[129] Parente, E., and Vaz, L. E., 2001. Improvement
of semi-analytical design sensitivities of non-linear
structures using equilibrium relations. International
Journal for Numerical Methods in Engineering, 50(9),
pp. 21272142.
[130] Celes, W., Paulino, G. H., and Espinha, R., 2005.
A compact adjacency-based topological data struc-
ture for nite element mesh representation. Interna-
tional Journal for Numerical Methods in Engineering,
64(11), pp. 15291556.
[131] Heath, M. T., 2002. Scientic Computing: An Intro-
ductory Survey. The McGraw-Hill Companies, New
York.
[132] Wang, S., De Sturler, E.e Sturler, E., and Paulino,
G. H., 2007. Large-scale topology optimization us-
ing preconditioned krylov subspace methods with re-
cycling. International Journal for Numerical Meth-
ods in Engineering, 69(12), pp. 24412468.
[133] van der Vorst, H. A., 2003. Iterative Krylov Meth-
ods for Large Linear Systems. Cambridge University
Press.
A Appendix
In this appendix, we present key equations in the deriva-
tion of the analytical solution for the von Mises truss ex-
plored in Section 5.1.3.
A.1 Equilibrium Equations of the von Mises Truss
We use the principle of virtual work to obtain the ana-
lytical solution of the von Mises truss.
dW
int
= dW
ext
(84)
2ALsde +C(u
1
u
2
)(du
1
du
2
) = Pdu
1
(85)
The strain measure chosen for these examples is the rotated
engineering strain
e =
L
deformed
L
L
(86)
where
L
deformed
=
_
L
2
2Hu
2
+u
2
2
(87)
and
de =
u
2
H
L
_
L
2
2Hu
2
+u
2
2
du
2
(88)
Then the equilibrium equations are
2As
u
2
H
_
L
2
2Hu
2
+u
2
2
C(u
1
u
2
) = 0 (89)
and
C(u
1
u
2
) = P (90)
To trace the equilibrium paths, P vs. u
1
and P vs. u
2
, these
curves can be parametrized by u
2
. The equilibrium equations
are combined, which yields
P = 2As
u
2
H
_
L
2
2Hu
2
+u
2
2
(91)
and
u
1
=
P
C
+u
2
(92)
A.2 Elastic Case of the von Mises Truss
For the elastic case of the von Mises truss, the equilib-
rium equation (Eqn. 91) is obtained using the relation
s = Ee (93)
A.2.1 Critical Spring Stiffness of the von Mises Truss
The stiffness of the spring in the von Mises truss dictates
the overall behavior of the system. Stiffness below a criti-
cal value results in snap back behavior in the u
1
component,
while values above do not. The critical case is realized when
the tangent line to the P vs. u
1
is vertical (i.e. u
1
/P = 0),
and when u
1
= u
2
= H, and P = 0. Then the expression for
the critical value of the spring stiffness is
C
cr
= 2
EA
L

L
p
L
2
H
2
1

(94)
and values from Section 5.1.3 give the critical spring stiff-
ness, C
cr
= 0.03094.
A.3 Elastic-Plastic Case of the von Mises Truss
The analytical solution of the von Mises truss is based on
the equilibrium equations derived in Section A.1. The stages
of the solution and limiting/critical values of the ow stress
material property are derived and discussed in the following
subsections.
A.3.1 Stages of the Elasto-Plastic Solution
The solution to the elasto-plastic von Mises truss is com-
prised of two elastic stages and two plastic stages. A sub-
script in parentheses references the stage.
Stage 1: Elastic Compressive Stage
The rst stage is equal to the elastic solution, therefore
the s = Ee. Stage 1 starts at the undeformed conguration
(i.e. u
1
=u
2
=0) and stops when the ow stress is reached in
compression (i.e. when s =s
Y
). The limit on u
2
for stage
1 must be less than H, and is
u
(1)
2 max
= H
_
_
1

L
H

2
s
Y
E

2
s
Y
E

_
_
(95)
Stage 2: Plastic Compressive Stage
The second stage is plastic and the bars are in compres-
sion, therefore s = s
Y
. Stage 2 continues from the last
point in stage 1 until the structure is at, i.e.
u
(2)
2 max
= H (96)
Stage 3: Elastic unloading stage
The third stage is again elastic, and the stress is s =
E (e e
min
) s
Y
, where e
min
is strain at the end of stage 2,
i.e. when u
2
= H
e
min
=

H
L

2
1 (97)
Stage 3 continues from the last point in stage 2 until the ow
stress is reached again, this time in tension. The limit on u
2
for stage 3 is found by equating s = E (e e
min
) s
Y
with
s = s
Y
, which results in
u
(3)
2 max
= H +2

_
L
2
s
Y
_
s
Y
E
+
_
1
_
H
L
_
2
_
E
(98)
Stage 4: Plastic Tensile Stage
The fourth stage is plastic, but now the bars are in ten-
sion, so s = s
Y
. In this nal stage there is a horizontal
asymptote at P
max
= 2As
Y
.
A.3.2 Limits on the Flow Stress
The ow stresses of the elasto-plastic von Mises truss in
Section 5.1.3 are selected such that the material will reach
the the ow stress while the bars are in compression (i.e.
before the structure reaches the plane conguration). Hence,
the ow stress must be less than the maximum stress of the
elastic stage, which occurs when u
2
= H.
s
Y,max
= E
_
_
1

H
L

2
_
_
(99)
For the values given in Section 5.1.3, s
Y,max
= 0.1340. Ad-
ditionally, depending on the value of the ow stress, the rst
plastic stage will start before or after the load limit point of
the elastic solution, respectively. Therefore, the critical ow
stress is equal to the stress at the load limit point
s
cr
= E
_
1
_
L
2
H
2
_
L

1/3
L
_
(100)
For the values given in Section 5.1.3, s
cr
= 0.0914.

You might also like