Shape optimization of shell structures based on ... - Wiley Online Library

0 downloads 0 Views 1MB Size Report
Mar 17, 2011 - DOI: 10.1002/nme.3183. Shape optimization of shell structures based on NURBS description using automatic differentiation. L. F. R. Espath.
INTERNATIONAL JOURNAL FOR NUMERICAL METHODS IN ENGINEERING Int. J. Numer. Meth. Engng 2011; 88:613–636 Published online 17 March 2011 in Wiley Online Library (wileyonlinelibrary.com). DOI: 10.1002/nme.3183

Shape optimization of shell structures based on NURBS description using automatic differentiation L. F. R. Espath∗, † , R. V. Linn and A. M. Awruch Graduate Program in Civil Engineering (PPGEC), Federal University of Rio Grande do Sul (UFRGS), Porto Alegre, RS, Brazil

SUMMARY The consolidation of the link among four fields in computational mathematics and mechanics is the main objective of this work. Surfaces based on NURBS (non-uniform rational B-spline), mathematical optimization, the finite element method (FEM) in structural analysis, and automatic differentiation (AD) are applied in shape optimization of shells. This problem is performed taking into account the fact that material and mechanical characteristics influence both, the structural shape and the thickness variation, in order to obtain the best performance with respect to a specific criterium. Some techniques were implemented to modify the shell geometry conserving the same parameterization without a new finite element mesh generation. The shape modification is carried out using an optimization code based on the data obtained by a finite element analysis and gradients evaluation. In this work the optimization procedure is performed using an SQP (Sequential Quadratic Programming) algorithm, where the variables are the control points in homogeneous coordinates, the knot vectors, and the thickness. The functional value is determined by the FEM and gradients are evaluated using AD. Some examples are analyzed and discussed. As a consequence of the shape optimization, shells with high structural performance and aesthetically beautiful shapes can be obtained. Copyright 䉷 2011 John Wiley & Sons, Ltd. Received 25 October 2010; Revised 28 January 2011; Accepted 4 February 2011 KEY WORDS:

mathematical optimization; automatic differentiation; NURBS; finite element method; structural analysis

1. INTRODUCTION The design of structures with optimal behavior with respect to a specific criterium has been constantly investigated and improved. In ancient times, designs were improved by ingenious engineers through generations. The various books and huge number of papers published recently reflect the increasing interest in this area. The development of the structural optimization can be traced back to Galileo Galilei (1564–1642) and to his clamped beam problem [1]. The cantilever beam subjected to constant shear and bending, as formulated by Galileo, was an optimal project of minimal weight with an uniform stress constraint. Galileo’s problem was probably one of the first structural optimization problems. Joseph Louis Lagrange (1736–1813) had also formulated an optimal design of a column for over 200 years. However, most of the modern structural optimization studies are based on efficient and reliable structural analysis, which became possible only after the advent of modern computers and the finite element method (FEM). The development

∗ Correspondence

to: L. F. R. Espath, PPGEC/UFRGS, Av. Osvaldo Aranha, 99, 3o andar, 90035-190 Porto Alegre, RS, Brazil. † E-mail: [email protected] Copyright 䉷 2011 John Wiley & Sons, Ltd.

614

L. F. R. ESPATH, R. V. LINN AND A. M. AWRUCH

of mathematical programming techniques and optimization theories has laid a solid foundation for structural optimization as well. In structural analysis, some works such as those of Ramm et al. [2] and Bletzinger et al. [3] use thick and thin shell element formulations, respectively, with an elastic linear formulation. A thick shell element has the advantage of taking into account the shear effects; however, it can have some numerical problems, as the locking phenomenon. The significance of locking on shape optimization is discussed by Camprubí et al. [4]. The shape optimization of shells against buckling is analyzed by Khosravi et al. [5] and Aubert and Rousselet [6], and the same problem, taking into account the imperfections of the structure, by Reitinger and Ramm [7]. Sensitivity analysis can be performed by finite differences (FD). However, this technique is not accurate, being necessary excessive functional evaluations. Analytical sensitivities were used by Ramm et al. [2]. They are exact and cheap, but unfortunately an explicit representation is sometimes difficult to obtain. The semi-analytical approach, which is an intermediate case, was used in [2–4, 7]. These methods have some disadvantages in an optimization procedure, as discussed by Griewank and Walther [8]. Another approach is obtained by the adjoint state equation, which is cheaper because only the time of two functional evaluations is needed. This method leads to exact derivatives if the adjoint state equation is exactly solved; however, in general, the solution is approximate (being more accurate than the previous alternatives). Such approach is used by Aubert and Rousselet [6]. The automatic differentiation (AD) method is an efficient alternative way to perform the sensitivity analysis, being cheaper in terms of computer processing time and exact. In reverse mode, AD is an adjoint approach. Thus, in the present implementation, the AD tool TAPENADE AD, developed by INRIA [9] in France, is used. The parameterization description is well suitable for shape modification instead of an explicit or implicit representation. A Bézier patch is a good alternative for shape description and modification, and it was used by Ramm et al. [2]. The solid description is the most general way to define the thickness and a rational Bézier solid description was used by Kegl and Brank [10] for geometry description and for shell thickness definition. Shell structures are a very wide type of structure with intensive use, for example, in the design of fuselages for airplanes and submarines, metallic silos, hangar roofs, building structures, aerospace and automotive components, among others. The large spans, low weight, and stiffness are some of the advantages obtained with this structural type. The shape and thickness distribution play a dominate role in the shell structure response, but the best structural performance can be obtained with material and structural optimization. The structural optimization system implemented in the present work is composed by a shape modification tool based on NURBS description, a gradient-based sequential quadratic programming (SQP) using automatic reverse differentiation for the sensitivity analysis and a finite element code for shell analysis (using the Discrete Kirchhoff Triangle (DKT) combined with the Constant Stress Triangle (CST)). A smooth and precise geometry representation is important when the shape of the structure has to be found and modified. A NURBS parameterization provides a robust description of the surface, representing accurately complex shapes with an efficient mathematical implementation. For shape optimization purpose, NURBS are well suitable due to the easy control of the surface shape by control points in homogeneous coordinates and knot vectors, providing almost any geometry representation. More details about NURBS may be found in Piegl and Tiller [11]. The mathematical optimization method has to be chosen based on the specific case analyzed. Optimization procedures can easily handle some types of problems, but they may be unsatisfactory or just cannot handle other optimization problems. For shape optimization of shell structures, an important point that needs to be noted is that the constraints used are, in general, highly non-linear. In this way, an SQP algorithm was chosen here. The SQP is a robust algorithm for non-linear continuous optimization and the DONLP2 algorithm developed by Spellucci [12] is used in this work. The algorithm needs functional and constraint evaluations, as well as its Fréchet derivatives, in order to guide its unidimensional search procedure to find the optimal solution iteratively. Copyright 䉷 2011 John Wiley & Sons, Ltd.

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

SHAPE OPTIMIZATION USING NURBS VIA AD

615

For the structural analysis, linear and non-linear analysis with a finite element code are implemented here using a 3-node triangular flat shell element. A suitable mesh discretization is needed for the optimization algorithm. Mesh distortions, poor mesh quality, and other errors can yield bad numerical solutions, leading the optimization algorithm to non-reliable results.

2. THEORETICAL ASPECTS A set of statements referred to the geometrical procedures, the derivatives evaluation, the mathematical programming for the numerical optimization, and the structural analysis are presented in this section. The geometrical procedures are based on NURBS description with a shape modification ruled by control points, weight, and knot vectors. The Fréchet derivatives are evaluated using FD and AD in the reverse mode. The numerical optimization is performed by the SQP Algorithm. The structural analysis of shells is implemented using the DKT for plate bending combined with CST for membrane effects. 2.1. Non-uniform rational B-spline (NURBS) In order to represent a complex surface, a parametric representation is used. NURBS parameterization are well suitable for shape optimization in any physical problem involving curves, surfaces, and solids. For shell structures, a surface representation in the form S(u, v) = (x(u, v), y(u, v), z(u, v)) (u, v) ∈ [0, 1]×[0, 1] is looked for. The NURBS surface in homogeneous coordinates is defined as Sw (u, v) =

m n   i=0 j=0

Ni, p (u)N j,q (v)Pi,w j

(1)

where ( p, q), (n, m), (Ni, p (u), N j,q (v)) are the degrees, the numbers of basis functions, and the basis functions in (u, v) directions, respectively. Pi,w j = (wi, j xi, j , wi, j yi, j , wi, j z i, j , wi, j ) are the control points in homogeneous coordinates, 4D space, where wi, j are the weights and (xi, j , yi, j , z i, j ) are the control points in 3D space. The computational algorithms in homogeneous coordinates are very efficient [11]. The basis functions in recursive form are defined as  1 if u i um = 1, and the reverse mode is preferable because it needs less numerical computation. However, for each case, the computational time must be analyzed taking into account the memory requirements. Taking the following definition for an intermediate result in a scalar-valued functional: def Z 0l =

l

Hi (X 0 )

1lk

(10)

i=1

the intermediate variable variation is the function of the previous intermediate variable variation, def

and with Z 0 = X , the proposition is stated as Z l =

*Hl (Z l−1 )

·Z l−1 *Z l−1 Z l−1 =Z l−1

(11)

0

The adjoint  defined over an appropriate inner product, (· , ·), is stated in linear algebra as

operator (v, T (u)) = T ∗ (v), u , where u, v ∈ V space and T ∗ is the adjoint of the transformation T : V → V . For the Euclidean inner product the adjoint operator is the transposed matrix. The adjoint of an intermediate result is stated as the gradient of H with respect to the intermediate result



k

def ∗ Z l = ∇ Z l Hi (Z l )

(12)

i=l+1 l l Z =Z 0

Denoting the inner product in an Euclidean space by · , · , and with the gradient definition stated def

as H = (∇ X H(X 0 ), X ), it is obtained as H = ∗ Z l , Z l

Copyright 䉷 2011 John Wiley & Sons, Ltd.

(13) Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

618

L. F. R. ESPATH, R. V. LINN AND A. M. AWRUCH

It is natural that Equation (13) holds for any l and ∗ Z l−1 , Z l−1 = ∗ Z l , Z l

  l l−1

*H (Z )

∗ l l−1 =  Z ,

l−1 l−1 ·Z *Z l−1 Z =Z 0

  ∗ *Hl (Z l−1 )

∗ l l−1 = · Z , Z

l−1 l−1 *Z l−1 =Z 0

Z

l l−1 ∗

*H (Z )

∗ Z l−1 =



*Z l−1

·∗ Z l

(14)

Z l−1 =Z 0l−1

According to the adjoint operator definition as a transpose matrix, Equation (14) can be written as

nl *Hl (Z l−1 )

 j

∗ l−1  Zi = ·∗ Z lj (15) l−1

*Z i j=1 l−1 l−1 Z =Z 0

and Equation (15) exemplifies a simple step of adjoint algorithm. The gradient of H is evaluated in the last step of the adjoint algorithm. Then ∗ Z 0 = ∗ X = ∇ X H

(16)

The complete recipes for adjoint code construction are presented by Giering and Kaminski [13]. Another way to get the same result can be obtained by the oriented graph theory [8]. 2.3. Numerical optimization In the context of numerical shape optimization, the SQP method is used. The optimization problem is stated as ⎧ ⎨ Ci (x) = 0, i ∈ E minn H(X ) subject to (17) ⎩ C (x)0, i ∈ I X ∈R i where H, Ci are defined in Rn , and E and I are two finite index sets. X are the independent variables, H is the objective function, Ci , i ∈ E are equality constraints, and Ci , i ∈ I are inequality constraints. The Lagrangian is defined as  L(X, ) = H(X )− i Ci (x) (18) i∈E ∪I

where i are the Lagrange multipliers. If the linear independence constraint qualification holds, then the optimum (X ∗ , ∗ ) must satisfy the Karush–Kuhn–Tucker (KKT) condition, i.e. ∇ X L(X ∗ , ∗ ) = 0

(19a)

Ci (X ∗ ) = 0

∀i ∈E

(19b)

Ci (X ∗ )  0

∀i ∈I

(19c)

i∗  0

∀i ∈I

(19d)

∀i ∈ E ∪I

(19e)

i∗ Ci (X ∗ ) = 0

The proof and the complete theory related to optimization gradient-based algorithms are shown by Nocedal and Wright [14]. The KKT conditions, Equations (19a)–(19e), must be satisfied for a given tolerance range. Copyright 䉷 2011 John Wiley & Sons, Ltd.

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

SHAPE OPTIMIZATION USING NURBS VIA AD

619

2.4. Structural analysis The structural analysis is performed using a triangular flat shell element with 18 degrees of freedom combining the DKT and the CST. This element was developed by Bathe and Ho [15]. Geometrically non-linear problems are solved using the generalized displacement control method developed by Yang and Shieh [16]. The thickness variation implemented is quadratic and the variation is orthogonal to the axis of symmetry, being constant in each element. There is no thickness variation in parallel directions to the axis of symmetry.

3. SHAPE OPTIMIZATION The main objective is to find an optimum shape with respect to a specified criterium. The functionals H to be minimized here are: internal strain energy in linear elastic problems and maximum displacement in geometrically non-linear problems.  1 1 H=  :  d = U T K U (20) 2  2 H = max U 22

(21)

where  is the domain,  is the stress tensor,  is the strain tensor, U is the displacement vector, K is the stiffness matrix, and · 2 is the Euclidean norm. The optimization problem is performed using relative objective function values, i.e. referred to an initial value. This minimization of H is constrained by geometrical or mechanical functions, such as C = 1−

V =0 Vini

(22)

C = 1−

u idof 2 0

u p 2

(23)

where V is the current volume, Vini is the initial volume, u idof is the displacement at a selected node, and u p is the maximum allowed value. These functionals are evaluated by the FEM and gradients by AD. 3.1. Numerical algorithm The general algorithm (Figure 1) consists in coupling FEM, AD, SQP, and NURBS. Basically, the computation tool has three types of input data: the optimization problem description, the finite element model, and the surface description using NURBS. After the initial structural analysis on the initial shape is performed, the main loop begins. At the beginning of each loop the gradients are evaluated. Then, KKT conditions are verified. When the KKT conditions are satisfied the main loop finishes. The quadratic problem is solved and the Quasi-Newton direction d is obtained. On d direction the unidimensional minimization is performed. The geometry is modified along d and the functionals involved are evaluated. The unidimensional minimization is not exact. The loop converges on the d direction when a reasonable point is obtained, i.e. the non-monotonic line-search method is used. 3.2. Numerical applications The elastic material properties used here are given by the Young’s modulus E, the Poisson coefficient , the specific weight , and the thickness e. The system units is the SI. If the initial geometry is plane and the load is orthogonal to this plane, then the membrane internal strain energy is null. This is a critical point (saddle point) because the gradients are also Copyright 䉷 2011 John Wiley & Sons, Ltd.

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

620

L. F. R. ESPATH, R. V. LINN AND A. M. AWRUCH

Figure 1. General algorithm.

null, but it is not an extrema. Thus, a perturbation is applied at the center of the geometry to avoid this critical point. A central control point is displaced 1×10−5 in the normal direction. It is important to be noted that when the bounds in control points are prescribed in the negative domain, e.g. 0 to −15 in zw direction, results represent tension states (examples 2, 3, and 5), although for these cases, in the figures, shell geometries are presented as compression states, taking into account that in structures with a linear behavior, this sign inversion does not modify the shape. In geometrically non-linear problems (example 6), tension states are actually represented in the corresponding figures. 3.3. Example 1: Code validation This example is based on the structure which initial form is a circular arch, and an analytic solution is well known for this optimization problem. For this reason it may be taken as a code validation case. The circular arch has a radius of 1 and it is hinged supported at the extremes with a load shown in Figure 2. The material properties are E = 2.1×1011 ,  = 0.3, e = 1×10−2 . This problem is solved with two variables, the (xw, zw) of the blue control point shown in Figure 3(a), and the objective is to minimize the relative internal strain energy. The geometrical constraints are: the geometry must hold the initial symmetry and the planar projection. The control points Pw in the initial geometry are given in Table I. The basis functions are defined over the knot vectors U = {0, 0, 0, 0.5, 0.5, 1, 1, 1} V = {0, 0, 1, 1} Copyright 䉷 2011 John Wiley & Sons, Ltd.

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

621

SHAPE OPTIMIZATION USING NURBS VIA AD

Figure 2. Initial mesh.

Figure 3. (a) Initial geometry and (b) final geometry. Table I. Control points Pw in the initial geometry. Pw

xw

yw

(0,0)

−1

−0.05

(1,0)

−1 √ 2

−0.05 √ 2

w

Pw

xw

yw

0

1

(0,1)

−1

0.05

0

1

−1 √ 2

√1 2

(1,1)

−1 √ 2

0.05 √ 2

−1 √ 2

√1 2

zw

zw

w

(2,0)

0

−0.05

1

1

(2,1)

0

0.05

1

1

(3,0)

√1 2

−0.05 √ 2

√1 2

√1 2

(3,1)

√1 2

0.05 √ 2

√1 2

√1 2

(4,0)

1

−0.05

0

1

(4,1)

1

0.05

0

1

In the optimization process, the initial functional value is Hini = 1 and, at the end, the functional value is Hopt = 6.43×10−4 . The solution obtained in this problem is xw = −0.265 and zw = −0.443 for Pw (1, 0), shown in Figure 3(b). The analytical solution of this problem is x + z = −1 ∀(x, z) ∈ [−1, 0]×[−1, 0] for any w = 0. Naturally, this proofs the non-uniqueness of solution, which is obtained for any (x, z) and w that satisfies the previous equation. This example was solved using two different solution techniques for linear systems to check the derivative convergence. These methods are the classical Gauss elimination and an element by element conjugate gradient method. As a result, it was checked that the derivative convergence rate is equal or faster than the functional convergence rate when the last one is used (the order of difference between the optimal values found for the gradient evaluation using the classical Gauss elimination method and an element by element conjugate gradient method was 10−5 ). This element by element conjugate gradient method is convenient to be used in the reverse mode (AD adjoint model) in order to decrease memory requirements, once this issue is a drawback in the reverse mode of AD. Copyright 䉷 2011 John Wiley & Sons, Ltd.

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

622

L. F. R. ESPATH, R. V. LINN AND A. M. AWRUCH

This simple example has a significant role. Beyond to validate the numerical code, it shows that it is possible to evaluate functionals using the classical Gauss elimination method and the gradients using a conjugate gradient iterative method in the optimization process. This fact allows to optimize complex geometries that need a refined mesh and consequently it is a way to use AD in complex problems reducing memory limitations. The classical Gauss elimination method was adopted to evaluate the functionals and the conjugate gradient iterative method was adopted to evaluate the gradients in the examples of the next sections. 3.4. Example 2: Comparison between FD and AD The objective of this example is to compare the results in the optimization process using FD and AD. This example is based on 10×10 square plate, simply supported at the corners. The initial volume is 11.27. The load is composed by its own weight and an uniform load (q = 5.5×103 ) is applied over the plate surface. The material properties are: E = 3.0×1010 ,  = 0.2, and  = 2.5×104 . The initial mesh is shown in Figure 4(a). This problem is performed with nine control points with variable positions in the normal direction to the square plate. The variables are the blue control points shown in Figure 4(b). The thickness variables are three parameters to define a quadratic thickness variation. The objective is to minimize the relative strain energy. The geometrical constraints are: the geometry must hold the initial symmetry, the planar projection, and a constant volume. The mechanical constraints are: the displacement of the center of the plate and the center of the edges must be less than 0.05. The control point variables are bounded by −15 to 0 in zw direction (in this way, the result is a shell under a tension state). The thicknesses are bounded by 0.03 to 0.45. The control points Pw in the initial geometry are given in Table II. The basis functions are defined over the knot vectors U = {0, 0, 0, 0, 0, 0, 0.25, 0.75, 1, 1, 1, 1, 1, 1} V = {0, 0, 0, 0, 0, 0, 0.25, 0.75, 1, 1, 1, 1, 1, 1}

Figure 4. Initial mesh (a) and initial geometry (b). Table II. Control points Pw in the initial geometry. Pw

xw

(0,0) −5 (1,0) −4.4 (2,0) −2.7125 (3,0) −0.8375 (3,3) −0.8375

yw −5 −5 −5 −5 −0.8375

Copyright 䉷 2011 John Wiley & Sons, Ltd.

zw

w

Pw

0 0 0 0 0

1 1 1 1 1

(1,1) (2,1) (3,1) (2,2) (3,2)

xw −4.4 −2.7125 −0.8375 −2.7125 −0.8375

yw −4.4 −4.4 −4.4 −2.7125 −2.7125

zw

w

0 0 0 0 0

1 1 1 1 1

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

623

SHAPE OPTIMIZATION USING NURBS VIA AD

In the optimization process, the initial functional value is Hini = 1 and, at the end, the functional value is Hopt.FD = 5.81×10−4 for the approach using FD (2.40%Hopt.FD is due to bending) and Hopt.AD = 5.50×10−4 for the approach using AD (0.37%Hopt.AD is due to bending). The optimal control points are given in Table III. The optimal thickness variation is shown in Figure 5, for an approach with FD (Figure 5(a)) and for an approach with AD (Figure 5(b)). Table III. Control points Pw in the final geometry for FD and AD. Pw FD (0,0) (1,0) (2,0) (3,0) (3,3)

zw

Pw

zw

Pw

zw

Pw

zw

0 −0.74 −1.41 −5.30 −4.94

(1,1) (2,1) (3,1) (2,2) (3,2)

−1.30 −3.18 −3.94 −2.92 −5.27

AD (0,0) (1,0) (2,0) (3,0) (3,3)

0 −0.64 −2.59 −4.88 −5.02

(1,1) (2,1) (3,1) (2,2) (3,2)

−0.97 −3.05 −3.88 −3.35 −5.23

Figure 5. FD (a) vs AD (b) (Thickness).

Figure 6. FD (a) vs AD (b) (Geometry).

Figure 7. FD (a) vs AD (b) (Displacement analysis). Copyright 䉷 2011 John Wiley & Sons, Ltd.

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

624

L. F. R. ESPATH, R. V. LINN AND A. M. AWRUCH

The optimal geometry using FD is shown in Figure 6(a), whereas the optimal geometry using AD is presented in Figure 6(b). Results of displacements for the optimal shapes are shown in Figure 7. It can be observed that the difference between the gradients evaluated by FD and AD are small. In this example, the maximum difference observed was 7% and the minimum was 1.5%. However, the maximal difference in the control point position was 83.7%. The errors intrinsic to the gradients evaluation do not only affect the search direction; they can also affect the optimal point. Probably, the estimated gradients (obtained with FD) evaluated at the real optimal point do not satisfy the KKT conditions, leading to another point. In order to achieve better results with the least possible computational cost, only AD is used in the following examples. 3.5. Example 3: Load influence In this section two problems are analyzed. These two cases are applied to the same structure of the example presented in Section 3.4, but two different loads are acting separately. In the first case, only the weight load is applied and in the second case only an uniform load is considered, minimizing the same objective function subjected to the same constraints used in Section 3.4, where the two loads were applied simultaneously. The basic idea is to show the load influence on the optimal shape. In the optimization process, the initial functional value is Hini = 1 and, at the end, the functional value is Hopt.weight = 2.88×10−4 when the weight load is considered (2.10%Hopt.weight is due to bending) and Hopt.uniform = 4.84×10−4 when the uniform load is considered (0.42%Hopt.uniform is due to bending). The optimal control points are given in Table IV. The optimal thickness variation is shown in Figure 8, for the weight load (Figure 8(a)) and for the uniform load (Figure 8(b)). The optimal geometry for the weight load is shown in Figure 9(a), whereas the optimal geometry for the uniform load is presented in Figure 9(b). Results of displacements for the optimal shapes are shown in Figure 10. Table IV. Control points Pw in the final geometry weight and uniform load. Pw weig. (0,0) (1,0) (2,0) (3,0) (3,3)

zw

Pw

zw

Pw

zw

Pw

zw

0 −0.72 −5.06 −4.17 −3.82

(1,1) (2,1) (3,1) (2,2) (3,2)

−0.24 −3.42 −2.32 −3.53 −4.57

unif. (0,0) (1,0) (2,0) (3,0) (3,3)

0 −0.50 −3.36 −3.83 −4.90

(1,1) (2,1) (3,1) (2,2) (3,2)

−0.55 −2.59 −4.35 −2.71 −4.74

Figure 8. Weight load (a) vs uniform load (b) (Thickness). Copyright 䉷 2011 John Wiley & Sons, Ltd.

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

SHAPE OPTIMIZATION USING NURBS VIA AD

625

Figure 9. Weight load (a) vs uniform load (b) (Geometry).

Figure 10. Weight load (a) vs uniform load (b) (Displacement analysis).

In this case, the same example shown in Section 3.4 was analyzed, but two different loads were considered separately, while in the example of Section 3.4 the weight load and an uniform load were applied simultaneously. Results of the example in Section 3.4 and those obtained here for the two cases (considering both loads separately) are very different. Thus, an optimization process must consider all acting loads that can occur. For example, if snow accumulation or the incident wind may act over the structure, they must be properly considered. In some cases, when these effects are important, some additional geometric algorithm must be used to handle with the snow accumulation and a fluid–structure interaction algorithm must be used for the wind load. 3.6. Example 4: Shape optimization of a shell with an initial conical shape This example is based on a shell, which initially has a conical shape, as it is shown in Figure 11. The inner radius is 7.5 with z(height) = 11.58 and the outer radius is 37.5 with z = 0. The initial volume is 553.52. The generatrix line is fixed at each 45◦ . The analysis is performed taking only an eighth part of the shell due to symmetry. The inner and outer edges are free. An uniform load (q = 2.5×103 ) in z direction is applied over the surface, and the weight load is also considered. The material properties are the same as those used in Section 3.4. The initial mesh is shown in Figure 12(a). This problem is performed with 21 control points with variable positions in the z direction. The variables are the blue control points shown in Figure 12(b). The thickness variables are three parameters to define the quadratic thickness variation. The objective is to minimize the relative strain energy. The geometrical constraints are: the geometry must hold the initial symmetry, the planar projection, and a constant volume. The mechanical constraint is that the displacement of the center of the outer edge must be less than 0.05. The control point variables are unbounded in zw direction. The thicknesses are bounded by 0.04 to 0.34. The control points localized at each generatrix corresponding to the two edges were intentionally fixed at each 45◦ to obtain a desired shape, i.e. continuity C 0 in these edges. Other values of the angle could be adopted, and different optimal shapes would be obtained. The control points Pw in the initial geometry are given in Table V. The basis functions are defined over the knot vectors U = {0, 0, 0, 0, 0.25, 0.50, 0.75, 1, 1, 1, 1} V = {0, 0, 0, 0, 0.25, 0.50, 0.75, 1, 1, 1, 1} Copyright 䉷 2011 John Wiley & Sons, Ltd.

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

626

L. F. R. ESPATH, R. V. LINN AND A. M. AWRUCH

Figure 11. Section of the cone.

Figure 12. (a) Initial mesh and (b) initial geometry. Table V. Control points Pw in the initial geometry. Pw (0,0) (1,0) (2,0) (3,0) (4,0) (5,0) (6,0) (0,2) (1,2) (2,2) (3,2) (4,2) (5,2) (6,2)

xw

yw

zw

w

Pw

xw

yw

zw

w

2.87 3.86 5.83 8.73 11.57 13.43 14.35 1.44 1.93 2.91 4.36 5.78 6.71 7.17

6.93 9.32 14.08 21.07 27.94 32.42 34.64 7.17 9.73 14.78 22.08 29.11 33.62 35.83

11.58 10.52 8.45 5.48 2.66 0.87 0 11.22 10.21 8.24 5.39 2.63 0.87 0

1 1 0.99 0.99 1 1 1 0.97 0.97 0.97 0.97 0.97 0.97 0.97

(0,1) (1,1) (2,1) (3,1) (4,1) (5,1) (6,1) (0,3) (1,3) (2,3) (3,3) (4,3) (5,3) (6,3)

2.39 3.22 4.86 7.27 9.64 11.19 11.96 0 0 0 0 0 0 0

7.02 9.49 14.35 21.47 28.40 32.90 35.12 7.24 9.87 15.02 22.43 29.50 34.00 36.19

11.43 10.40 8.37 5.45 2.65 0.87 0 11.11 10.12 8.19 5.37 2.64 0.87 0

0.99 0.98 0.98 0.98 0.98 0.98 0.99 0.96 0.96 0.96 0.96 0.96 0.96 0.96

Table VI. Control points Pw in the final geometry. Pw (0,1) (1,1) (2,1) (3,1) (4,1) (5,1) (6,1)

zw

Pw

zw

Pw

zw

11.82 11.29 10.28 8.22 7.63 5.26 4.94

(0,2) (1,2) (2,2) (3,2) (4,2) (5,2) (6,2)

12.17 12.56 11.94 11.36 10.62 9.76 10.07

(0,3) (1,3) (2,3) (3,3) (4,3) (5,3) (6,3)

12.38 12.94 12.84 12.51 11.88 11.67 12.17

In the optimization process, the initial functional value is Hini = 1 (4.62%Hini is due to bending) and, at the end, the functional value is Hopt = 2.33×10−2 (0.82%Hopt is due to bending). The optimal control points are given in Table VI. The optimal thickness variation is shown in Figure 13(a), whereas the optimal geometry is presented in Figure 13(b). Results of displacements for the optimal shape are shown in Figure 14. The optimum value of the objective function is not so small when compared with the value obtained in the previous sections, where the adopted initial shape was a plate. Although this value Copyright 䉷 2011 John Wiley & Sons, Ltd.

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

SHAPE OPTIMIZATION USING NURBS VIA AD

627

Figure 13. Thickness (a) and geometry (b).

Figure 14. Displacement analysis.

may correspond to a local minima, it is evident that a conical shell is closer to its final optimal shape when compared with a plate considering the same criteria applied to both structures in the respective examples. 3.7. Example 5: Weights, control points, and knot vectors as variables of the shape optimization procedure This example is based on a square plate and is performed for two different cases. The idea is to optimize all parameters describing the surface, i.e. control points, weights, and knot vectors. This example is divided into two cases. In the first case control points and knot vectors are used as variables. In the second case control points and weights are used as variables. In the first case the problem presented in Section 3.4 is solved with an additional variable, i.e. the sixth knot value. In the second case the objective is to minimize the relative strain energy. The geometrical constraints are: the geometry must hold the initial symmetry and a constant volume. The material properties are: E = 2.1×1011 ,  = 0.3, e = 1×10−2 . The applied load is the weight. The variables are the nine control points used in Section 3.4 and their nine weights. The initial volume is 4.68. The control point variables are bounded in zw direction by −15 to 0. The weights are unbounded. The thicknesses are bounded by 0.01 to 0.12. In the first case the optimal control points are given in Table VII. The optimal knot vectors are U = {0, 0, 0, 0, 0, 0, 0.50 , 0.50, 1, 1, 1, 1, 1, 1} V = {0, 0, 0, 0, 0, 0, 0.50, 0.50, 1, 1, 1, 1, 1, 1} Copyright 䉷 2011 John Wiley & Sons, Ltd.

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

628

L. F. R. ESPATH, R. V. LINN AND A. M. AWRUCH

In the second case the optimal control points are given in Table VIII. In the optimization process, the initial functional value is Hini = 1 and, at the end, the functional value is Hopt.knot = 5.36×10−4 for the first case (0.51%Hopt.knot is due to bending) and Hopt.weight = 5.71×10−5 for the second case (3.20%Hopt.weight is due to bending). In the first case the optimal thickness variation is shown in Figure 15(a), whereas the optimal geometry is presented in Figure 15(b). Results of displacements for the optimal shape are shown in Figure 16. In the second case the optimal thickness variation is shown in Figure 17(a), whereas the optimal geometry is presented in Figure 17(b). Results of displacements for the optimal shape are shown in Figure 18. Other views of the geometry of the second case are presented in Figure 19. As in the second case a constant volume is required, only a constant total weight load will be applied at each iteration. It is natural that the structure does not remain with the same planar Table VII. Control points Pw in the final geometry (First case). Pw (1,0) (2,0) (3,0)

zw

Pw

zw

Pw

zw

−0.71 −2.28 −4.60

(1,1) (2,1) (3,1)

−0.63 −3.21 −3.49

(2,2) (3,2) (3,3)

−3.41 −4.78 −5.00

Table VIII. Control points Pw in the final geometry (Second case). Pw (1,0) (2,0) (3,0)

zw

w

Pw

zw

w

Pw

zw

w

−0.94 −3.29 −4.40

0.92 0.69 0.67

(1,1) (2,1) (3,1)

−1.11 −1.89 −1.50

1.76 0.80 0.68

(2,2) (3,2) (3,3)

−1.26 −3.91 −5.68

1.56 2.25 1.28

Figure 15. Thickness (a) and geometry (b) (First case).

Figure 16. Displacement analysis (First case). Copyright 䉷 2011 John Wiley & Sons, Ltd.

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

SHAPE OPTIMIZATION USING NURBS VIA AD

629

Figure 17. Thickness (a) and geometry (b) (Second case).

Figure 18. Displacement analysis (Second case).

projection at each iteration (because this is not a prescribed constraint). Then, an uniform load is not used because if the total planar area varies, the uniform load will also vary, and it is not desirable. In these two cases the idea is to introduce a new perspective in shape optimization using NURBS. Basically, the aim is to work with all parameters that describe a NURBS surface, i.e. the control points with their weights and the knot position. The number of variables increases, but the structural response will be more adequate. In the first case of this section, the optimal geometry may be compared with the example presented in Section 3.4. The difference is the sixth knot position as an extra variable. Results obtained here are lightly better than those of the example in Section 3.4. In the second case of this section, the optimum value of the objective function is the lowest one in this work. The number of variables is twice those used in Section 3.4, but the performance obtained here is excellent. 3.8. Example 6: Shape optimization of shells with geometrically non-linear behavior In this section, two objective functions are minimized in structures with geometrically non-linear behavior, the maximum displacement, and internal strain energy, analyzing the non-linear behavior influence in the optimal shape. 3.8.1. Minimax problem: square plate. In this example three cases are analyzed in a minimax problem. The objective is to minimize the maximum displacement squared as indicated in Equation (24). The material properties used here are the same employed in Section 3.4. The first case is the square plate with an initial volume equal to 10. The applied load is increased 10 times the load used in Section 3.4. In the second and third cases the optimization process begins taking the optimal shape obtained in Section 3.4, with only one difference between the second and third Copyright 䉷 2011 John Wiley & Sons, Ltd.

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

630

L. F. R. ESPATH, R. V. LINN AND A. M. AWRUCH

cases. The load used in the last case is increased 10 times (with respect to the load used in the second case), whereas in the second case the analysis is carried out with the same load used in Section 3.4. min max U 22

(24)

The variables are the nine control points used in Section 3.4. The geometrical constraints are: the geometry must hold the initial symmetry and the planar projection. The control point variables are bounded in zw direction by −15 to 0. In the first, second, and third cases the optimal control points are given in Tables IX–XI, respectively.

Figure 19. Views of the geometry (Second case). Table IX. Control points Pw in the final geometry (First case). Pw (1,0) (2,0) (3,0)

zw

Pw

zw

Pw

zw

−0.61 −0.76 −1.00

(1,1) (2,1) (3,1)

−1.98 −5.63 −5.44

(2,2) (3,2) (3,3)

−11.58 −14.75 −14.85

Table X. Control points Pw in the final geometry (Second case). Pw (1,0) (2,0) (3,0)

zw

Pw

zw

Pw

zw

−0.62 −2.58 −4.88

(1,1) (2,1) (3,1)

−0.95 −3.06 −3.93

(2,2) (3,2) (3,3)

−3.37 −5.29 −5.08

Copyright 䉷 2011 John Wiley & Sons, Ltd.

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

631

SHAPE OPTIMIZATION USING NURBS VIA AD

In the optimization process, the initial functional value is Hini = 1 and, at the end, the functional value is Hopt.CASE.1 = 9.00×10−4 for the first case, Hopt.CASE.2 = 0.50 for the second case, and Hopt.CASE.3 = 0.45 for the third case. In the first case, the optimal geometry is presented in Figure 20(a) and results of displacements for the optimal shape are shown in Figure 20(b). In the second case, the optimal geometry is presented in Figure 21(a) and results of displacements for the optimal shape are shown in Figure 21(b). In the third case the optimal geometry is presented in Figure 22(a) and results of displacements for the optimal shape are shown in Figure 22(b). Table XI. Control points Pw in the final geometry (Third case). Pw (1,0) (2,0) (3,0)

zw

Pw

zw

Pw

zw

−0.61 −2.60 −4.92

(1,1) (2,1) (3,1)

−1.01 −3.25 −4.15

(2,2) (3,2) (3,3)

−3.46 −5.47 −5.27

Figure 20. Optimal shape (a) and displacement analysis (b) (First case).

Figure 21. Optimal shape (a) and displacement analysis (b) (Second case).

Figure 22. Optimal shape (a) and displacement analysis (b) (Third case). Copyright 䉷 2011 John Wiley & Sons, Ltd.

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

632

L. F. R. ESPATH, R. V. LINN AND A. M. AWRUCH

The difference of the shell height, measured at the center, between the shape analyzed in the second case of this section (which is a minimax problem with respect to displacement) and the structure analyzed in Section 3.4 (which is a linear structural problem, where the internal strain energy is minimized) is 0.05, which is very small with respect to the total height of the shell (about 4.94). This small difference occurs because the non-linear effects are not significants. When the second and third cases are compared, the difference increases to 0.24 because the non-linear effects are amplified when the acting load is increased 10 times. 3.8.2. Minimizing the strain energy: square plate. In this example two cases are analyzed. The example of Section 3.4 is performed with geometrically non-linear behavior in the first case, and in the second case the load is increased 10 times. In the first and second cases the optimal control points are given in Tables XII and XIII, respectively. In the optimization process, the initial functional value is Hini = 1 and, at the end, the functional value is Hopt.CASE.1 = 2.11×10−3 for the first case and Hopt.CASE.2 = 3.91×10−3 for the second case. In the first case the optimal thickness variation is shown in Figure 23(a), whereas the optimal geometry is presented in Figure 23(b). The results of displacements for the optimal shape are shown in Figure 24. In the second case the optimal thickness variation is shown in Figure 25(a), whereas the optimal geometry is presented in Figure 25(b). Results of displacements for the optimal shape are shown in Figure 26. There is no difference between the optimal shape obtained for the first case and the example in Section 3.4 (for the same load level). In the second case, the difference can be noted. Naturally, Table XII. Control points Pw in the final geometry (First case). Pw (1,0) (2,0) (3,0)

zw

Pw

zw

Pw

zw

−0.61 −2.37 −4.88

(1,1) (2,1) (3,1)

−1.08 −3.08 −3.78

(2,2) (3,2) (3,3)

−3.06 −5.41 −4.72

Table XIII. Control points Pw in the final geometry (Second case). Pw (1,0) (2,0) (3,0)

zw

Pw

zw

Pw

zw

−0.63 −2.74 −4.94

(1,1) (2,1) (3,1)

−1.07 −2.99 −4.66

(2,2) (3,2) (3,3)

−3.00 −5.01 −5.06

Figure 23. Thickness (a) and geometry (b) (First case). Copyright 䉷 2011 John Wiley & Sons, Ltd.

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

SHAPE OPTIMIZATION USING NURBS VIA AD

633

Figure 24. Displacement analysis (First case).

Figure 25. Thickness (a) and geometry (b) (Second case).

Figure 26. Displacement analysis (Second case).

the optimal shape, opposite to a linear problem, must be different in tension and compression state (if non-linear effects are significant). Here, a tension state was obtained. 3.8.3. Minimizing the strain energy: a quarter of a circular plate with a hole. This example is based on a quarter of a circular plate with a hole. The inner radius is 10 and the outer radius is 20. The inner and outer circular boundaries are free, the plate is simply supported at the straight edges. The initial volume is 23.56 and the weight load is applied with the same material properties used in Section 3.4. The control point variables are bounded in zw direction by −15 to 15 and the thicknesses are bounded by 0.02 to 0.20. The initial mesh is shown in Figure 27(a). The problem is performed with 18 control points with variable positions in the normal direction. The variables are the blue control points shown in Figure 27(b). The control points Pw in the initial geometry are given in Table XIV. The basis functions are defined over the knot vectors U = {0, 0, 0, 0, 0, 0, 0.50, 1, 1, 1, 1, 1, 1} V = {0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1} Copyright 䉷 2011 John Wiley & Sons, Ltd.

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

634

L. F. R. ESPATH, R. V. LINN AND A. M. AWRUCH

Figure 27. Initial mesh (a) and initial geometry (b).

Table XIV. Control points Pw in the initial geometry. Pw (0,0) (0,1) (0,2) (0,3) (0,4) (0,5) (2,0) (2,1) (2,2) (2,3) (2,4) (2,5)

xw

yw

zw

w

Pw

xw

yw

zw

w

20.00 18.08 16.12 14.12 12.08 10.00 16.07 14.96 13.60 11.99 10.14 8.04

0 0 0 0 0 0 8.07 7.72 7.14 6.34 5.30 4.04

0 0 0 0 0 0 0 0 0 0 0 0

1 1 0.99 0.99 1 1 0.85 0.88 0.89 0.89 0.88 0.85

(1,0) (1,1) (1,2) (1,3) (1,4) (1,5) (3,0) (3,1) (3,2) (3,3) (3,4) (3,5)

18.83 17.19 15.44 13.55 11.55 9.41 12.49 11.80 10.83 9.58 8.05 6.24

2.83 2.73 2.54 2.25 1.88 1.41 12.49 11.80 10.83 9.58 8.05 6.24

0 0 0 0 0 0 0 0 0 0 0 0

0.94 0.95 0.95 0.95 0.95 0.94 0.82 0.86 0.87 0.87 0.86 0.82

Table XV. Control points Pw in the final geometry. Pw (1,0) (1,1) (1,2) (1,3) (1,4) (1,5)

zw 1.06 −6.61 −7.19 −7.51 −9.62 −3.09

Pw (2,0) (2,1) (2,2) (2,3) (2,4) (2,5)

zw −3.04 −8.08 −7.97 −8.64 −10.32 −8.53

Pw (3,0) (3,1) (3,2) (3,3) (3,4) (3,5)

zw −7.36 −7.64 −6.71 −6.15 −6.12 −5.67

The optimal control points are given in Table XV. The optimal thickness variation is shown in Figure 28(a), whereas the optimal geometry is presented in Figure 28(b). Results of displacements for the optimal shape are shown in Figure 29. The non-linear problem is solved by an incremental iterative method. It is necessary to check the derivative convergence rate with respect to the functional convergence rate. The derivative convergence was checked with decreasing tolerances commonly used in incremental iterative methods in non-linear analysis, and comparing with FD. For the adopted functionals (maximum displacement and strain energy) it was checked that the derivative convergence rate is equal or faster than the functional convergence rate. Copyright 䉷 2011 John Wiley & Sons, Ltd.

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

SHAPE OPTIMIZATION USING NURBS VIA AD

635

Figure 28. Thickness (a) and geometry (b).

Figure 29. Displacement analysis.

It is necessary to check the derivative convergence rate with respect to the functional convergence rate because there is no additional information that guarantee the derivative convergence rate in an incremental iterative method.

4. CONCLUSIONS Although a global minimum is required in the optimization problems such as those presented here, results obtained in previous examples may correspond to a local minima, once the convexity behavior of the Lagrangian functional has not been studied here. Mesh distortion with respect to the initial grid is one of the difficulties to be avoided. An isogeometric structural analysis would be an alternative, but an algorithm to reorganize nodes localization at each iteration may be also effectively used. Regarding the sensitivity analysis, several options have been successfully used. The simplest tool is FD, but in terms of numerical accuracy AD avoids numerical errors, in spite of the fact that some numerical errors may occur originated in the structural analysis. AD is very fast in terms of processing time (about twice the objective function evaluation), but its main limitation is the required computer memory. NURBS provides a smooth and accurate parametric representation of surfaces and it is well suitable for shape modifications in the optimization problem. In this work it is easy to observe that the most adequate way to optimize a surface shape described by NURBS is to take all its characteristics (knot vectors, weights, and control points) as variables of the optimization problem. An important limitation of this work is to consider that the thickness remains constant in each element and that its variation is quadratic in the whole structural surface. To generalize the thickness variation it would be necessary to implement solid NURBS, increasing twice the number of variables. Finally, some aims achieved in this work are listed below: • solution in some cases is not unique, which means a non-uniqueness proof by counterexample (Example 1); Copyright 䉷 2011 John Wiley & Sons, Ltd.

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

636

L. F. R. ESPATH, R. V. LINN AND A. M. AWRUCH

• convergence of derivatives in AD are faster than the convergence of the objective function and the constraints if a conjugate gradient method is used (Example 1); • comparison between FD and AD (Example 2); • the influence of different loads in the optimum shape (Example 3); • use of control points, weights, and knot position optimization as variables (Example 5); • the influence of the geometrically non-linear effects in the optimum shape (Example 6); • convergence of derivatives in AD are faster than the convergence of the objective function and the constraints if an incremental-iterative method in non-linear analysis (Example 6); • shells with an excellent structural performance were obtained (Examples 1–6). An outstanding point of this work is the fact that AD was not sufficiently explored in structural optimization in spite of the fact that accurate gradients with cheap algorithms are necessary. Another interesting aspect is the link among AD, NURBS, FEM, and SQP, showing excellent performance.

ACKNOWLEDGEMENTS

The authors thank CAPES and CNPq for their financial support. REFERENCES 1. Galilei G. Discorsi e dimonstrazioni matematiche intorno á due nuove scienze. attenenti alla Mecanica & i Movimenti Locali 1638; 112. 2. Ramm E, Bletzinger KU, Reitinger R. Shape optimization of shell structures. IASS Bulletin of the International Association for Shell and Spatial Structures 1993; 34(112):103–121. 3. Bletzinger KU, Firl M, Linhard J, Wüchner R. Optimal shapes of mechanically motivated surfaces. Computer Methods in Applied Mechanics and Engineering 2008; 199(5–8):324–333. 4. Camprubí N, Bischoff M, Bletzinger KU. Shape optimization of shells and locking. Computer and Structures 2004; 82(29–30):2551–2561. 5. Khosravi P, Ganesan R, Sedaghati R. Optimization of thin-walled structures with geometric nonlinearity for maximum critical buckling load using optimality criteria. Thin-Walled Structures 2008; 46:1319–1328. 6. Aubert P, Rousselet B. Sensitivity computation and shape optimization for a non-linear arch model with limit-points instabilities. International Journal for Numerical Methods in Engineering 1998; 42:15–48. 7. Reitinger R, Ramm E. Buckling and imperfection sensitivity in the optimization of shell structures. Thin-Walled Structures 1995; 23(1–4):159–177. 8. Griewank A, Walther A. Evaluating Derivatives: Principles and Techniques of Algorithmic Differentiation (2nd edn). Society for Industrial and Applied Mathematics: Philadelphia, 2008. 9. INRIA. Tapenade AD, 2002. Available from: http://tapenade.inria.fr:8080/tapenade/index.jsp. 10. Kegl M, Brank B. Shape optimization of truss-stiffened shell structures with variable thickness. Computer Methods in Applied Mechanics and Engineering 2006; 195(19–22):2611–2634. 11. Piegl LA, Tiller W. The Nurbs Book (2nd edn). Springer: Berlin, 1997. 12. Spellucci P. DONLP2, 2001. Available from: http://www.mathematik.tu-darmstadt.de/fbereiche/numerik/staff/ spellucci/DONLP2/index.html. 13. Giering R, Kaminski T. Recipes for adjoint code construction. Technical Report, Internal Report 212 from Max-Plank Institute für Meteorologie, Hamburg, Germany, 1996. 14. Nocedal J, Wright SJ. Numerical Optimization (2nd edn). Springer: Berlin, 1999. 15. Bathe KJ, Ho LW. A simple and effective element for analysis of general shell structures. Computers and Structures 1981; 13(5–6):673–681. 16. Yang YB, Shieh MS. Solution method for nonlinear problems with multiple critical points. AIAA Journal 1990; 28:2110–2116.

Copyright 䉷 2011 John Wiley & Sons, Ltd.

Int. J. Numer. Meth. Engng 2011; 88:613–636 DOI: 10.1002/nme

Suggest Documents