Nov 25, 2014 - community's website www.autodiff.org provides a comprehensive overview ..... possible solution for C++ codes could be approximate derivative ...
November 25, 2014
11:48
Optimization Methods and Software
green˙OMS3
Optimization Methods and Software Vol. 00, No. 00, Month 200x, 1–13
RESEARCH ARTICLE On Higher-Order Differentiation in Non-linear Mechanics I. CHARPENTIER† (Received 00 Month 200x; in final form 00 Month 200x) Modelling often involves non-linear parametric problems and bifurcation analysis. This interdisciplinary paper reviews higher order numerical methods for the solution of non-linear problems, and proposes a synthesis of two different conceptual frameworks, namely automatic differentiation and the asymptotic numerical method. Various mechanical problems and references illustrate the presentation. Accepted version. Published in Optimization Methods and Software Volume 27, Issue 2, 2012 Special Issue: Special issue dedicated to Andreas Griewank on the occasion of his 60th birthday. Keywords: Non-linear problems, Bifurcation analysis, Taylor series, Asymptotic methods, Automatic differentiation, Diamant 2000 Mathematics Subject Classifications: 41A58, 65P30, 68N19, 74-02
1.
Introduction
Within simulation codes, derivatives may be either (i) approximated by a finite difference scheme, or computed through (ii) the implementation of differentiated continuous equations, (iii) the implementation of differentiated discrete equations, or (iv) the differentiation of the code implementing the discrete equations, willingly performed using an Automatic Differentiation (AD) tool. A review paper [43] devoted to sensitivity computation discusses them in the context of linear mechanical modelling. As far as higher-order differentiation is considered, AD is obviously the more practicable approach, providing generality, efficiency and ease of use. The AD community’s website www.autodiff.org provides a comprehensive overview of the available techniques, tools and usage. Nowadays, AD tools offering higher-order differentiation, for instance [11, 20, 29, 56], mainly rely on operator overloading as the vehicle of attaching higher-order derivative computations to the arithmetic operators and intrinsic functions provided by the programming language. Though AD’s basic principles [31] have been known for several decades [24, 65], the Structural Mechanics community is generally unaware of its benefits. This low dissemination rate is largely a consequence of the high usage of black box industrial codes that offer neither sensitivity computations, nor gradient-based numerical optimization. This interdisciplinary paper reviews higher-order numerical methods for the solution of non-linear problems, with a special attention to parametric ones, and proposes a synthesis of two different conceptual frameworks, namely AD and the Asymptotic Numerical Method (ANM) [23]. Modelling in engineering, physics, biology, economics and so forth, often results in non-linear, parametric problems. These may contain algebraic equations (1a),
† Laboratoire de Physique et M´ ecanique des Mat´ eriaux, UMR CNRS 7554, Ile du Saulcy, 57045 Metz Cedex 1, France ISSN: 1055-6788 print/ISSN 1029-4937 online c 200x Taylor & Francis
DOI: 10.1080/03081080xxxxxxxxx http://www.informaworld.com
November 25, 2014
11:48
Optimization Methods and Software
green˙OMS3
2
ODEs (1b), or DAEs
or
f (u, λ) = 0,
(1a)
f (u, λ) = u. ˙
(1b)
The real-valued parameter λ is to be varied. Vector u ∈ Cn and vector-valued function f : Cn × R → Cn depend on the variations of λ. Solutions of an underdetermined system of equations satisfying (1a) or (1b) thus define a branch of solutions. Discrete PDE problems provided with adequate boundary conditions agree with formulations (1a) and (1b). Bifurcation and stability analysis of such non-linear problems are one of the major pillars in computational sciences. Several numerical algorithms may be used: natural parameter continuation, simplicial (piecewise linear) continuation [2] and pseudo-arc length continuation [40] for example. The third one is of particular interest. First, it introduces a path parameter a measuring the pseudo-arc length along the branch of solutions (u(a), λ(a)) issued from the point (u(0), λ(0)), ∂λ ∂u (0) + (λ(a) − λ(0)) (0) , a = u (a) − u(0), ∂a ∂a
(2)
! ∂u ∂λ that is, the projection of the increment on the tangent (0), (0) . Second, ∂a ∂a it may act as a predictor-corrector method. The reader is referred to [3, 42, 58] for a thorough discussion on continuation methods. Under analyticity assumptions, numerical methods based on Taylor series allow for the solutions of non-linear ODEs [11, 16], DAEs [37, 54, 55], PDEs [33, 53] and parametric problems [7, 23, 60]. Among them, the path following method entitled ANM [23, 60], and an optimal shape design technique [33] take advantage of truncated Taylor series for the solution of PDE problems. In both cases, computations are governed by following the same simple but efficient idea. Solutions written as truncated Taylor series are introduced in the discrete PDE problem. The resulting sequence of linear problems, with the same matrix but different higher-order righthand-side terms, is solved using a direct solver. Details are provided in Section 3. Truncated Taylor series computed at a given point then provide higher-order approximate solutions in its vicinity. These are respectively used to follow the path in the continuation method, or to compute approximate gradients in the optimal shape design method. AD has the potential to act as a lingua franca allowing insights to be transported to other application fields. The ANM is a good candidate for AD and may serve as an example. The Diamant tool [19], as an acronym for DIff´erentiation Automatique de la M´ethode Asymptotique Num´erique Typ´ee, aims at promoting AD capabilities – sensitivity computation, higher-order differentiation, generality, efficiency, ease of use and so forth – in the Mechanical community. To that end, this study synthesizes results on the ANM and its combination with AD to assess that (1) problems tackled by the ANM may be solved in an easier manner thanks to Diamant. The numerical continuation thus benefits from the correctness and efficiency of an AD operator overloading library. Specific problems illustrate the presentation. (2) AD may open new opportunities in terms of mechanical modelling allowing for an easy implementation of any smooth non-linear behaviour laws [12], sensitivity analysis [17, 47], gradient-based optimization [28], and so forth.
11:48
Optimization Methods and Software
green˙OMS3 3
Algebraic (PDE)
Equation kind
Time dependent
November 25, 2014
Problem
Generic formulation
Boundary value
R(u, λ) = 0
Eigenvalue
P(λ)u = 0 Q(u, λ)u = 0
ODE / DAE
PDE
R(u,
∂u , λ) = 0 ∂t
R(u,
∂u )=0 ∂t
Some references Bratu [5, 23, 27, 58], [19]⋄ Geometrically NL elasticity [18] NL behaviour laws [23], [45]⋄ NL forced vibrations [6] Contact⋆,† [15]⋄ NL eigenproblems[32] NL free vibration‡ [26], [12]⋄ Pendulum[54, 57], [37]∗ Plasticity⋆ [23] Friction⋆ [9]⋄ Instationary PDE problems‡ [38]
Table 1. A set of generic non-linear problems. Specific modelling issues: ⋆ regularization needed, † implicit function, ‡homotopy, ∗ Taylor model, ⋄ implementation with Diamant. The acronym NL stands for “Non-linear”.
The layout of the paper is as follows. Section 2 briefly reviews non-linear problems that were solved using truncated Taylor expansions. Section 3 argues for the automation of Taylor-based continuation methods for the solution of parametric non-linear PDEs. Sensitivity analysis of ANM solutions is proposed in Section 4. Section 5 briefly discusses implementation and complexity aspects. Finally, Section 6 provides a summary and an outlook.
2.
Setting of the problems
Discrete non-linear mechanical problems are usually written under the residual form Find
(u, λ)
such that R(u,
∂u , λ) = 0. ∂t
(3)
In this equation, the residual vector R ∈ Cn depends on the unknown state vector u ∈ Cn and the unknown load parameter λ ∈ R. Solutions (u, λ) of the underdetermined system (3) of n equations and n+1 unknowns form a branch of solutions (u(a), λ(a)) depending on the path parameter a that satisfies (2) for instance. Table 1 distinguishes four classes of problems. These are algebraic systems of equations (boundary value and eigenvalue PDE problems) and time dependent systems (ODE/DAE or PDE). Each of them is illustrated with a generic formulation, some applications and a few references. Table 1 reports a few modelling issues. For instance, problems requiring a regularization are tagged with a ⋆.
3.
Taylor-based continuation methods
Two higher-order methods, the Optimal Shape Design (OSD) method [33] and the path-following method ANM [23, 60], were independently proposed for the solution of PDE problems. On the one hand, the OSD uses a differentiation with respect to various shape parameters. On the other hand, the ANM is concerned with parametric equations and the differentiation is performed with respect to a unique path parameter (2). Except for the path equation, the theoretical ideas governing both numerical processes are very similar. These are detailed in paragraph 3.1.
November 25, 2014
11:48
Optimization Methods and Software
green˙OMS3
4
Implementations were different: OSD is AD-based whereas the ANM was mainly hand coded. Arguments developed in this Section provide an AD response to this methodological and computational drawback. 3.1.
From the ANM (90’s) to the Diamant approach (2008)
Let us consider the discrete generic non-linear problem R(u(a), λ(a)) = 0,
(4)
where R(u, λ) and u are vectors of Cn and λ ∈ R is a scalar parameter. Path variable a satisfies the arc-length formula (2). Functions are assumed to be analytical. The ANM [23, 60] approximates solutions (u(a), λ(a)) by Taylor series, truncated at order K, computed from the initial guess (u(0), λ(0)) as u(a) =
K X k=0
ak uk (0),
and
λ(a) =
K X
ak λk (0).
(5)
k=0
u(k) 1 ∂k u 1 ∂k λ λ(k) Variables uk (0) = (0) = (0) = (0) and λk (0) = (0) are the k k! k! ∂a k! k! ∂ak Taylor coefficients at order k of u and λ evaluated at point a = 0. Hereafter we omit the dependence in a. Within the ANM, series (5) are introduced in the actual non-linear problem. This yields a problem-dependent sequence of K linear systems involving the same tangent linear matrix, and higher-order differentiation recurrence formula to be written by hand [23]. An illustration is proposed in Example 3.1. Automatic Differentiation (AD) is a better technical solution for such computations. Let ψ, φ and f = ψ ◦ φ be analytical functions. A short and effective way to present the Diamant interpretation of the ANM relies on the equation fk = {f1|φ1 =1 }φk + {fk|φk =0 },
(6)
that may be proved from Fa´ a di Bruno’s formula [12, 18]. On the one hand {f1|φ1 =1 } is the first order derivative of f with respect to φ evaluated with φ1 = 1. On the other hand, the term {fk|φk =0 } is the Taylor coefficient at order k evaluated with φk = 0 to cancel the tangent linear contribution {f1|φ1 =1 }. Both terms may be computed via AD using an operator overloading library. Within Diamant, truncated series (5) are introduced into the generic equation (4), whatever the residual equations are. This is the fundamental difference between Diamant and the ANM. The splitting (6) is then applied to (4) to deduce the linear systems ∀ k = 1, .., K, {R1|u1 =Id,λ1 =0 }uk + {R1|u1 =0,λ1 =1 }λk = −{Rk|uk =0,λk =0 },
(7)
where {R1|u1 =Id,λ1 =0 } is the Jacobian with respect to u. This Jacobian could be constructed [17] taking advantage of the finite element assembly mechanism. Similarly, the tangent linear term {R1|u1 =0,λ1 =1 } is obtained by initializing u1 to 0 and λ1 to 1. In {Rk|uk =0,λk =0 }, the use of null Taylor coefficients for uk and λk enables one to cancel tangent linear contributions already taken into account in the other two terms. Each of these derivatives may be efficiently computed using a particular AD-based operator overloading library [16, 45]. Solution of (7) and
11:48
Optimization Methods and Software
green˙OMS3 5
(λ ,u) branch ends 15
10 u(0.5)
November 25, 2014
5
0 0
1
2
3
4
Lambda
Figure 1. Bifurcation diagram (λ, u(x)) for x = 0.5.
the computation of the right-hand-side term are performed in an iterative manner from order 1 to order K. This demonstrates that the Diamant version of the ANM may be considered to be a high level mathematical solver that allows for the solution of smooth nonlinear problems through an automated sequence of high level operations (linear solver and higher-order differentiations). Example 3.1 The ANM [23, 60], as well as its automated version, is a competitive path following method that may replace the Newton-Raphson scheme in the solution of non-linear PDE problems and more generally in the solution of any equilibrium system of equations. Main advantages and the drawback of ANM higherorder differentiations may be discussed on the very well known Bratu benchmark problem [5, 19, 23, 27, 58]. Equations are R(u, λ) =
∂2u (x) + λ exp(u(x)) = 0 ∂x2
in (0, 1),
u(0) = u(1) = 0.
(8)
Within Diamant, the residual equation (8) is implemented and overloaded for automated higher-order computations. Taylor expansions (u, λ) are computed from (7) to be used in the construction of approximated branches. Along a branch, the step size is a posteriori deduced from the numerical radius of convergence a∗ computed as in [23] ||u(1) || 1 K−1 a∗ = ε (K) , ||u ||
(9)
where ε is a small parameter. The Pad´e approximant method [8, 22] may allow for larger a∗ . Figure 1 presents the bifurcation diagram plotted for x = 0.5. Computations were done using a finite difference scheme with a step size h = 0.1, an order K = 20 and parameter ε = 10−10 . The first branching runs from (u(0), λ(0)) = (0, 0) to (u(a∗ ), λ(a∗ )) = (3.08, 1.87), passing through the turning point approximately located at (3.50, 1.20). Further branch, issued from the last computed branch end, is computed reinitializing the parameter a to 0. Here, as in many actual mechanical problems [23], the ANM is used without a correction step. Higher-order corrections suggested in [46] are turned into a Diamant form in Example 3.5. Finally, one
November 25, 2014
11:48
Optimization Methods and Software
green˙OMS3
6
notices that the analytic construction of the branches allows for the detection of bifurcations and instability points. When useful, a small perturbation allows a jump from one branch to another. Details are reported in [23] and the references therein. Example 3.2 Numerous non-linear mechanical PDE equations may be written in the quadratic form L0 + L(u) + Q(u, u) = 0,
(10)
where L0 , L and Q are respectively constant, linear and quadratic functions provided by the user. Before 2008, the ANM differentiation stages were often managed that way [23]. A Matlab package, namely MANLAB [4], exploits the decomposition (10) to provide an interactive continuation tool for bifurcation analysis. As written by its authors, the decomposition is usually the most difficult task for a beginner. AD is a more generic approach that, in addition, applies to mechanical laws, viscoelastic ones for instance [12], that do not agree with (10). Example 3.3 Contact mechanics is fundamental in many fields of engineering, including sheet metal forming manufacturing processes such as rolling or stamping. For the sake of simplicity, the metal sheet is viewed as a deformable elastic body, whereas tools (rolls or stamps) are rigid bodies which surface is defined in an implicit manner (cylinder, sphere, or any analytical surface). The interested reader is referred to [34] for a comprehensive description of algorithmic details. In non-linear contact, the reaction force r = r(u, S) depends on the rigid body surface S and the displacement field u. Frictionless contact conditions may be formulated as: (r.~n)δ(u, S) = 0,
r.~n ≥ 0,
δ(u, S) ≥ 0,
(11)
where ~n is the unit normal vector on the positive side of S and δ(u, S) is the distance between a point of the deformable body and S. A regularization is needed [1]. Assuming analyticity (regularization and surface formula), the implicit function theorem guarantees the existence of an explicit function f such that r = f (u, S). The chain rule thus provides higher-order derivatives of r [44] to be used in the residual equation. As recognized in [15], contact conditions, implicitly defined rigid body geometries and related higher-order differentiations, are handled much more easily with AD and Diamant. 3.2.
Homotopy with Diamant
Since pioneering works [21, 41, 63, 66], there exists an extensive literature on the relationship between homotopy and continuation [64]. Let the non-linear problem f (x) = g(x) + h(x) = 0,
(12)
be difficult to solve. Let us assume that the non-trivial problem g(x) = 0 has known solutions. The basic idea behind homotopy is to view (12) as a parametric equation F (x, a) = g(x) + ah(x)
for a ∈ [0, 1],
(13)
what allows for the deformation of the problem F (x, 0) = g(x) with known solutions into the complex problem F (x, 1) = f (x) = 0. From a numerical point of view,
November 25, 2014
11:48
Optimization Methods and Software
green˙OMS3 7
homotopy is driven through a continuation to determine a monotonic increasing sequence {a(j) }j=1,..,J ranging from a(1) = 0 to a(J) = 1 (J to be determined). Implementations of homotopy [61, 62] do not involve AD, except for some Jacobian computations [39, 59]. In practice, this theoretical method is of special interest for finding an initial guess satisfying (12) to the main continuation process [58]. Homotopy thus constitutes an important application for continuation. Homotopy may be applied to the non-linear parametric problem (4) splitting R(u, λ) into functions S(u, λ) and T (u, λ), R(u, λ, a) = S(u, λ) + aT (u, λ) = 0,
for
a ∈ [0, 1],
(14)
with known solutions (u, λ) assumed for the problem S(u, λ) = 0. In non-linear mechanics, homotopy is often managed in combination with series. Methods are based on higher-order recurrence formula introduced in the continuous equations [36, 48, 49] (limited to the first three orders in practice), in the discrete equations to be implemented as in the ANM [23, 26], or in the AD overloading library Diamant to be linked with the mechanical code [12]. In the last case, the use of the splitting (6) on (14) yields the following K generic linear systems ∀ k = 1, .., K, ({S1|u1 =Id,λ1 =0 } + a(j) {T1|u1 =Id,λ1 =0 })(uk + λk ) = = −{Sk|uk =0,λk =0 } − a(j) {Tk|uk =0,λk =0 } − Tk−1 .
(15)
The left-hand side matrix ({S1|u1 =Id,λ1 =0 } + a(j) {T1|u1 =Id,λ1 =0 }) is the Jacobian related to the j th branch. Variables {Sk|uk =0,λk =0 } and {Tk|uk =0,λk =0 } are the Taylor coefficients of S and T at order k evaluated initialising uk and λk to 0. The shift in the indices observed on T is a consequence of the homotopy. The underdetermined system of equations (15) is either closed with some additional equation (path equation or orthogonality condition [26] for instance) or simplified assuming that λ is temporarily fixed (see Example 3.5). A Homotopy Driver (HD) has been coded in [12]. Example 3.4 Sandwich structures including viscoelastic and/or piezoelectric layers are commonly used in industrial applications for noise and vibration control. Actual viscoelastic constitutive laws are frequency and temperature dependent. The linear free vibration modelling thus results in a complex non-linear eigenvalue problem [Ev (ω)K − ω 2 M ]u = [(E0 + E(ω))K − ω 2 M ]u = 0,
such that E0 ∈ R,
(16)
where the complex non-linear function Ev (ω) = E0 + E(ω) describes the frequency dependency of the Young’s modulus of the structure. The stiffness matrix Ev (ω)K and the vibration mode u are complex and frequency dependent, while the mass matrix M is real-valued. Several methods, including the asymptotic solution method [50] and an ANMbased algorithm [26], have been developed. An overview presenting advantages and drawbacks of these methods is available in [14]. The ANM technique presented in [26] combines a homotopy technique [25, 52] with hand coded series. Models, such as the well known generalized Maxwell model
Ev (ω) = k0 + iη0 ω +
M X
iω m=1 km
iω , + η1m
(km , ηm ) being modelling parameters, (17)
November 25, 2014
11:48
Optimization Methods and Software
green˙OMS3
8
generally do not satisfy the quadratic decomposition (10). This technical difficulty has been overcome by means of AD [12]. In practice, the homotopy is driven from the real eigenvalue problem [E0 K − ω 2 M ]u = 0 to the complex eigenvalue problem (16). Computational details as well as numerical results are reported in [12]. Example 3.5 Homotopy, either classical [58] or of higher-order [23], allows for the determination of an initial guess satisfying (4), parameter λ being temporarily fixed. Such process is no more than a particular correction step. Even the higherorder ANM may be usually used without corrections, some residuals are measured to control the errors and, if needed, a higher-order correction based on a higherorder homotopy may be set [23, 46].
4.
Sensitivity computations
Modelling depends on parameters. Sensitivity to a given perturbation can be answered at different levels of certainty. On the one hand, measurements stemming from successive experimental or numerical trials return qualitative information. On the other hand, computation of first or second order derivatives provides quantitative results. Within the last approach, great advances have been achieved with AD. Although such AD approach is used with success in several scientific domains, it is rarely applied in Structural Mechanics [43]. In this paper, parameters may have either a mechanical meaning (material or geometric), or a technical purpose (regularization). The output variables requiring sensitivity information are (u, λ). 4.1.
Sensitivity of Taylor-based solutions
Solutions (u(a, p), λ(a, p)) of R(u(a, p), λ(a, p)) = 0,
(18)
are assumed to be differentiable with respect to the modelling parameter p. Hereafter we omit the dependence in a and p of function R, u and λ. Consequently, formula (7) still describes linear systems related to the non-linear problem (18). The ANM, as the other high level mathematical operations (linear solvers, FFT, FWT, ...), requires a specific AD to be differentiated in an efficient manner. Let ud , λd and Rd be the first order derivatives of u, λ and R with respect to p. Their Taylor coefficients are denoted by udk , λdk and Rd respectively. The tangent linear differentiation of (7) with respect to p yields {Rd1|u1 =Id,λ1 =0 }uk + {R1|u1 =Id,λ1 =0 }udk + +{Rd1|u1 =0,λ1 =1 }λk + {R1|u1 =0,λ1 =1 }λdk = −{Rdk|uk =0,λk =0 }.
(19)
Assuming uk and λk already computed from (7), sensitivities udk and λdk may be calculated as solutions of {R1|u1 =Id,λ1 =0 }udk + {R1|u1 =0,λ1 =1 }λdk = = −{Rdk|uk =0,λk =0 } − {Rd1|u1 =Id,λ1 =0 }uk − {Rd1|u1 =0,λ1 =1 }λk .
(20)
Linear systems (19) and (7) involve the same Jacobian matrix. Consequently, sensitivity computations may be performed at almost no extra cost since the Jacobian’s factorization is already done.
11:48
Optimization Methods and Software
green˙OMS3 9
p=0, (λ ,u) vectors ( λ d,ud) p=.01, (λ ,u) p=0, ( λ d,u)
15
10 u(0.5)
November 25, 2014
5
0 0
1
2
3
4
Lambda
Figure 2. Vectors (λd , ud (x)) plotted at some points (λ, u(x)) of the bifurcation diagram (λ, u(x)) for x = 0.5 (solid line). Perturbated bifurcation diagram (λ, u(x)) for x = 0.5 (dashed line) is obtained with p = 0.01. Derivative (λd , u(x)) is denoted by the dotted line.
Mixed derivatives (in a and p) occurring in (20) may be (i) fully hand coded, which represents a tedious task, (ii) obtained in a semi-automatic manner using an AD tool on a hand coded ANM [28], or (iii) fully automated combining AD tools [17]. The third option is indisputably the most satisfactory in terms of generality and practicability. From a computational point of view, a source transformation AD tool may be applied to the code implementing R to provide the tangent linear code related to Rd . This linear code may be overloaded linking it to the AD library Diamant for series computations. Such combination has been successfully tested with Tapenade [35] on Fortran codes [17], and Adimat [13] on Matlab codes [47]. A possible solution for C++ codes could be approximate derivative tensors computed using the Higher-Order derivative Tensor algorithm, namely HOT [30]. C++ and Fortran implementations of HOT are provided within Rapsodia [20]. In a nutshell, sensitivity analysis provides accurate additional information on ANM solutions at almost no extra cost. Sensitivity Drivers (SD) have been coded in Fortran [17] and Matlab [47]. Many aspects remain to be explored on sensitivity of ANM solutions to modelling parameters (mechanical, geometrical, regularization, shape, ...) and possible usages and applications. Example 4.1 The Bratu problem is used as an illustration [17]. The SD manages calls to Rd for the computations of Taylor coefficients, as well as derivatives, ad , of the path variable. The latter is deduced from the differentiation of (9) with respect to p, and allows for the construction of the sensitivities along the branch K X d (a, ad ) = u ak udk + kak−1 ad uk , k=0
K X d (a, ad ) = ak λdk + kak−1 ad λk , λ
(21)
k=0
The correctness of the whole process has been verified through a Taylor test comparing sensitivity results obtained with the SD to first order finite difference approximations computed using the continuation driver. A perturbation of p = 0.01 is added to the diagonal elements b of the stiffness
November 25, 2014
11:48
Optimization Methods and Software
green˙OMS3
10
matrix, b=−
2 (1 + p), h2
(22)
to calculate results presented in Figure 2. The response curve (u, λ) is plotted in solid line as in Fig. 1. Sensitivities (ud , λd ) are plotted as vectors at some points of the curve (u, λ). As expected, these vectors reach the diagram obtained with the continuation driver and a perturbation p = 0.01 (dashed line). These vectors also give an insight into the ANM method. In the first part of the curve, the perturbation of p contributes to move the turning point to the right side of the picture. In the latest part, vectors are essentially tangent to the response curve: the perturbation has no effect there. The curve (u, λd ) (dotted line) shows that the sensitivity of λ appears to be smooth, although such constraint has not been applied during the linearization process. In practice, left- and right- derivatives slightly differ at branch ends. Up to our best knowledge, such sensitivity plots are innovative, at least in Structural Mechanics. Complementary studies are now required to figure out their potentials in bifurcation analysis and inverse modelling. Right now, numerical experiments are realized on a clamped 3-layer sandwich beam [47]. Sensitivities are computed with respect to a few stiffness matrix elements, showing that vector orientations depend on the perturbed elements. Such observations offer real opportunities in terms of inverse modelling. Gradients could be used in non-destructive control applications, numerical optimization to position piezo-electric patches or law identification [28] for instance. Example 4.2 Homotopy is again a special case. As noticed in [28] for the optimization process and [38] for time-iterations, the iterative method may be run from the same problem S(u, λ) = 0.
5.
Implementation synopsis
The Diamant library relies on operator overloading for higher-order AD and three drivers for ANM computations. The basic continuation driver [19, 45] solves generic linear systems (7) through iteration on the orders, and then iterations on the branches. It alternates automated higher-order calculations and linear system solutions. The HD driver [12] is an adaptation of the continuation driver to non-linear problems involving homotopy, generic linear systems to be solved being (15). Combined with AD for higher-order derivative computations, both offer a precious supplement of generality to the ANM. The sensitivity driver [17, 47] is new into the ANM solver suite providing accurate qualitative and quantitative information about ANM computed solutions at a very low extra cost. As noticed earlier and implemented in ATOMFT [16] for ODE solution, operation count of Taylor-based series is of O(K 2 ) when storing intermediate Taylor coefficients. The gain in operations, and thus in computational time, is paid in memory. In PDE problems, memory consumption may be a limiting factor when solving large mechanical problems as it depends on the number of degrees of freedom, the finite element type and the truncation order. Appropriate storage solutions will be implemented using either a partial storage and re-computations, or, more probably, working in a distributed parallel computing environment.
November 25, 2014
11:48
Optimization Methods and Software
green˙OMS3
REFERENCES
6.
11
Summary and Outlook
Under analyticity assumptions, Taylor-based methods allow for the solution of nonlinear ODE, DAE, or PDE problems presenting, or not, a parametric dependence. These methods are in use in the Structural Mechanics community for the solution of bifurcation problems. There, customs are to introduce recurrence formulas in either the continuous equations, or the discrete equation as in the ANM. Following the “review of options for structural design sensitivity: linear system” [43], this synthesis paper reviews higher order options for the solution of non-linear problems, with a particular attention to AD which notably provides generality, efficiency and ease of implementation. Diamant, the AD implementation of the ANM, is contributing to the promotion of AD in the Mechanical community. First, a part of the AD skills was transferred to the ANM thanks to operator overloading, offering automated higher-order computations to the users. Then, this AD-based formalism has naturally opened new mechanical modelling opportunities, notably in terms of sensitivity computations and inverse modelling. As an example, our future works will be concerned with Taylor models [10, 51] in combination with the ANM.
Acknowledgements
The author gratefully acknowledges A. Griewank for his advice and warm encouragement on several aspects of AD.
References [1] W. Aggoune, H. Zarhouni, and M. Potier-Ferry, A high-order prediction-correction algorithms for unilateral contact problems, J. Comp. Appl. Math. 168 (2004), pp. 1–9. [2] E.L. Allgower and K. Georg, Simplicial and continuation methods for approximations, fixed points and solutions to systems of equations, SIAM Rev. 22 (1980), pp. 28–85. [3] E.L. Allgower and K. Georg, Numerical Continuation Methods: an Introduction, Springer-Verlag, New-York, 1990. [4] R. Arquier, B. Cochelin, and C. Vergez, Manlab : logiciel de continuation interactif, user manual, 2005. Available at http://manlab.lma.cnrs-mrs.fr/. [5] B.M. Averick, R.G. Carter, J.J. Mor´ e, and G.L. Xue, The minpack-2 test problem collection, Preprint MCS-P153-0694, Argonne National Laboratory, 1992. [6] L. Azrar, E.H. Boutyour, and M. Potier-Ferry, Non-linear forced vibrations of plates by an asymptotic numerical method, J. Sound Vibrat. 252 (2002), pp. 657–674. [7] L. Azrar, B. Cochelin, N. Damil, and M. Potier-Ferry, An asymptotic-numerical method to compute the postbuckling behavior of elastic plates and shells, Int. J. Numer. Meth. Eng. 36 (1993), pp. 1251– 1277. [8] G.A. Baker and P. Graves-Morris. Pad´ e Approximants, Volume 59 of Encyclopedia of Mathematics and its Applications, Cambridge University Press, Cambridge, 1996. [9] F. Bechet, A. Lejeune, and M. Potier-Ferry, Taylor series to solve friction problems, C.R. Mecanique, 338 (2010), pp. 327–332. [10] M. Berz and K. Makino, Verified integration of ODEs and flows using differential algebraic methods on high-order Taylor models, Reliab. Comput. 4 (1998), pp. 361–369. [11] M. Berz, K. Makino, K. Shamseddine, G.H. Hoffst¨ ater, and W. Wan, COSY INFINITY and its applications in nonlinear dynamics, in Computational Differentiation: Techniques, Applications and Tools, M. Berz, C. Bischof, G. Corliss, and A. Griewank, eds., SIAM, Philadelphia, PA, 1996, pp. 363–365. [12] M. Bilasse, I. Charpentier, E.M. Daya, and Y. Koutsawa, A generic approach for the solution of nonlinear residual equations. Part II: Homotopy and complex nonlinear eigenvalue method, Comput. Method. Appl. M. 198 (2009), pp. 3999–4004. [13] C.H. Bischof, H.M. B¨ ucker, B. Lang, A. Rasch, and A. Vehreschild, Combining source transformation and operator overloading techniques to compute derivatives for MATLAB programs, in Proceedings of the Second IEEE International Workshop on Source Code Analysis and Manipulation, Los Alamitos, CA, 2002, pp. 65–72. [14] H. Boudaoud, S. Belouettar, E.M. Daya, and M. Potier-Ferry, A numerical method for nonlinear complex modes with application to active-passive damped sandwich structures, Eng. Struct. 31 (2009), pp. 284–291.
November 25, 2014
11:48 12
Optimization Methods and Software
green˙OMS3
REFERENCES
[15] H. Boudaoud, A. Lejeune, M. Potier-Ferry, H. Zahrouni, and I. Charpentier, Diff´ erentiation automatique et MAN : Application au contact unilat´ eral, in Actes du 9i` eme colloque national en Calcul des structures, Vol. 2, Giens, 2009, pp. 281–286. [16] Y.F. Chang, and G.F. Corliss, Solving ordinary differential equations using taylor series, ACM Trans. Math. Software 8 (1982), pp. 114–144. [17] I. Charpentier, Sensitivity of solutions computed through the asymptotic numerical method, C. R. Mecanique 336 (2008), pp. 788–793. [18] I. Charpentier, A. Lejeune, and M. Potier-Ferry, The Diamant approach for an efficient Automatic Differentiation of the Asymptotic Numerical Method, in Advance in Automatic Differentiation, Numero 64 of Lecture Notes in Computational Science and Engineering, C.H. Bischof, H.M. B¨ ucker, P. Hovland, U. Naumann, and J. Utke (Eds.), Springer, 2008, pp. 139–149. [19] I. Charpentier, and M. Potier-Ferry, Diff´ erentiation automatique de la m´ ethode asymptotique num´ erique typ´ ee: l’approche Diamant, C. R. Mecanique 336 (2008), pp. 336–340. [20] I. Charpentier, and J. Utke, Fast higher-order derivative tensors with Rapsodia, Optim. Method. Softw. 24 (2009), pp. 1–14. [21] S.N. Chow, J. Malletparret, and J. A. Yorke, Finding zeros of maps - Homotopy methods that are constructive with probability one, Math. Comput. 32 (1978), pp. 887–899. [22] B. Cochelin, N. Damil, and M. Potier-Ferry, Asymptotic-numerical methods and Pad´ e approximants for non-linear elastic structures, Int. J. Numer. Meth. Eng. 37 (1994), pp. 1187–1213. [23] B. Cochelin, N. Damil, and M. Potier-Ferry, M´ ethode Asymptotique Num´ erique, Hermes Science Publications, 2007. [24] A. Griewank, and G. Corliss (eds), Automatic Differentiation: Theory, Implementation, and Application, Proceedings of the SIAM Workshop on the Automatic Differentiation of Algorithms, SIAM, Philadelphia, PA, 1991. [25] N. Damil, M. Potier-Ferry, A. Najah, R. Chari, and H. Lahmam, An iterative method based upon Pad´ e approximants, Commun. Numer. Meth. En. 15 (1999), pp. 701–708. [26] E.M. Daya and M. Potier-Ferry, A numerical method for nonlinear eigenvalue problems application to vibrations of viscoelastic structures, Comput. Struct. 79 (2001), pp. 533–541. [27] E. Doedel, H. Keller, and J.P. Kernevez, Numerical analysis and control of bifurcation problems (i) bifurcation in finite dimensions, Int. J. Bifurcat. Chaos, 1 (1991), pp. 493–520. [28] I. El Khaldi, I. Charpentier, and E.M. Daya, A gradient method for viscoelastic behaviour identification of damped sandwich structures, submitted. [29] A. Griewank, D. Juedes, and J. Utke, ADOL–C, a package for the automatic differentiation of algorithms written in C/C++, ACM T. Math. Software 22 (1996), pp. 131–167. [30] A. Griewank, J. Utke, and A. Walther, Evaluating higher derivative tensors by forward propagation of univariate Taylor series, Math. Comput. 69 (2000), pp. 1117–1130. [31] A. Griewank, and A. Walther, Evaluating Derivatives: Principles and Techniques of Algorithmic Differentiation, 2nd ed., in Other Titles in Applied Mathematics, SIAM, Philadelphia, PA, 2008. [32] Ph. Guillaume, Nonlinear eigenproblems, SIAM J. Matrix Anal. A, 20 (1999), pp. 575–595. [33] Ph. Guillaume, and M. Masmoudi, Computation of high order derivatives in optimal shape design, Numer. Math. 67 (1994), pp. 231–250. [34] M. Harnau, A. Konyukhov, and K. Schweizerhof, Algorithmic aspects in large deformation contact analysis using solid-shell elements, Comput. Struct. 83 (2005), pp. 1804–1823. [35] L. Hasco¨ et, and V. Pascual, TAPENADE 2.1 user’s guide, Rapport technique 300, INRIA, Sophia Antipolis, 2004. [36] J.H. He, A coupling method of homotopy technique and perturbation technique for nonlinear problems, Int. J. Nonlinear Mech. 35 (2000), pp. 37–43. [37] J. Hoefkens, M. Berz, and K. Makino, Efficient high-order methods for ODEs and DAEs, in Automatic Differentiation 2000: From Simulation to Optimization, G. Corliss, C. Faure, A. Griewank, L. Hasco¨ et, and U. Naumann (eds.), Springer, New York, NY, 2002, pp. 343–348. [38] M. Jamal, B. Braikat, S. Boutmir, N. Damil, and M. Potier-Ferry, A high order implicit algorithm for solving nonlinear problems, Comput. Mech. 28 (2002), pp. 375–380. [39] R. Kalaba, and L. Tesfatsion, Solving nonlinear equations by adaptive homotopy continuation, Appl. Math. Comput. 41 (1991), pp. 99–115. [40] H.B. Keller, Numerical solution of bifurcation and nonlinear eigenvalue problems, in Applications of Bifurcation Theory, P. Rabinowitz (ed.), Academic Press, New-York, 1977, pp. 359–384. [41] H.B. Keller, Global homotopies and newton method, in Recent advances in Numerical Analysis, G.H. Golub, and C. de Boor (eds.), Academic Press, New-York, 1978, pp. 73–94. [42] H.B. Keller, Lectures on numerical methods in bifurcation problems, Springer-Verlag, Berlin, 1987. [43] F. Van Keulen, R.T. Haftka, and N.H. Kim, Review of options for structural design sensitivity analysis. Part I: Linear systems, Comput. Method. Appl. M. 194 (2005), pp. 3213–3243. [44] W. Koepf, Taylor polynomials of implicit functions, of inverse functions, and of solutions of ordinary differential equations, Compl. Var. Ell. Eq. 25 (1994), pp. 23–33. [45] Y. Koutsawa, I. Charpentier, E.M. Daya, and M. Cherkaoui, A generic approach for the solution of nonlinear residual equations. Part I: the Diamant toolbox, Comput. Method. Appl. M. 198 (2008), pp. 572–577. [46] H. Lahman, J.M. Cadou, H. Zahrouni, N. Damil, and M. Potier-Ferry, High-order predictor-corrector algorithms, Int. J. Numer. Meth. Eng. 55 (2002), pp. 685–704. [47] K. Lampoh, I. Charpentier, and E.M. Daya, A generic approach for the solution of nonlinear residual equations. Part III: Sensitivity computations, submitted. [48] S.J. Liao, The proposed homotopy analysis technique for the solution of nonlinear problems, PhD diss., Shanghai Jiao Tong University, 1992. [49] S.J. Liao, On the homotopy analysis method for nonlinear problems, Appl. Math. Comput. 147 (2004), pp. 499–513. [50] B.A. Ma, and J.F. He, A finite element analysis of viscoelastically damped sandwich plates, J. Sound
November 25, 2014
11:48
Optimization Methods and Software
green˙OMS3
REFERENCES
13
Vib. 152 (1992), pp. 107–123. [51] K. Makino, and M. Berz, New applications of Taylor model methods, in Automatic Differentiation 2000: From Simulation to Optimization, G. Corliss, C. Faure, A. Griewank, L. Hasco¨ et, and U. Naumann (eds.), Springer, New York, NY, 2002, pp. 359–364. [52] E. Mallil, H. Lahmam, N. Damil, and M. Potier-Ferry, An iterative process based on homotopy and perturbation techniques, Comput. Method. Appl. M. 190 (2000), pp. 1845–1858. [53] B. Mohammadi, and O. Pironneau, Applied Shape Optimization for Fluids, 2nd ed., Oxford Univ. Press, New York, 2001. [54] N.S. Nedialkov, and J.D. Pryce, Solving differential-algebraic equations by Taylor series (I): Computing Taylor coefficients, BIT 45 (2005), pp. 561–591. [55] N.S. Nedialkov, and J.D. Pryce, Solving differential-algebraic equations by Taylor series (III): The DAETS code, J. Numer. Anal. Indust. Appl. Math. 3 (2008), pp. 61–80. [56] J. Pryce, and J. Reid. AD01, Fortran 90 code for automatic differentiation, Technical Report RALTR-1998-057, Rutherford Appleton Laboratory, 1998. [57] J.D. Pryce, A simple structural analysis method for DAEs, BIT 41 (2001), pp. 364–384. [58] R. Seydel, Practical Bifurcation and Stability Analysis, Number 5 in Interdisciplinary Applied Mathematics, 3rd edition, Springer, 2009. [59] L. Tesfatsion, Nonlocal automated comparative static analysis, Comput. Econ. 5 (1992), pp. 313–331. [60] J.M.T. Thompson, and A. Walker, The nonlinear perturbation analysis of discrete structural systems, Int. J. Solids Struct. 4 (1968), pp. 757–768. [61] L. Watson, S. Billups, and A. Morgan, Hompack: A suite of codes for globally convergent homotopy algorithms, ACM T. Math. Software 13 (1987), pp. 281–310. [62] L. Watson, M. Sosonkina, R. Melville, A. Morgan, and H. Walker, Algorithm 777: Hompack90: A suite of fortran 90 codes for globally convergent homotopy algorithms, ACM T. Math. Software 23 (1997), pp. 514–549. [63] L.T. watson, Algorithm that is globally convergent with probability one for a class of non-linear 2-point boundary-value problems, SIAM J. Numer. Anal. 16 (1979), pp. 394–401. [64] L.T. Watson, Globally convergent homotopy method - a tutorial, Appl. Math. Comput. 31 (1989), pp.369–396. [65] R.E. Wengert, A simple automatic derivative evaluation program, Comm. ACM 7 (1964), pp. 463–464. [66] W. Zangwill and C. Garcia, Pathways to Solutions, Fixed Points, and Equilibria, Prentice-Hall, Englewood cliff, NJ, 1981.