You are on page 1of 28

Available online at www.sciencedirect.

com
ScienceDirect

Comput. Methods Appl. Mech. Engrg. 372 (2020) 113393


www.elsevier.com/locate/cma

Adjoint optimization of pressurized membrane structures using


automatic differentiation tools
Alexander Niewiarowskia ,∗, Sigrid Adriaenssensb , Ruy Marcelo Paulettic
a Department of Civil & Environmental Engineering, Princeton University, 59 Olden Street, Princeton, NJ 08544, USA
b Department of Civil & Environmental Engineering, Princeton University, USA
c Polytechnic School at the University of São Paulo, Brazil

Received 3 February 2020; received in revised form 1 July 2020; accepted 18 August 2020
Available online xxxx

Abstract
This paper presents an adjoint-based method for solving optimization problems involving pressurized membrane structures
subject to external pressure loads. Shape optimization of pressurized membranes is complicated by the fact that, lacking bending
stiffness, their three-dimensional shape must be sustained by the internal pressure of the inflation medium. The proposed
method treats the membrane structure as an immersed manifold and employs a total Lagrangian kinematic description with an
analytical pressure–volume relationship for the inflating medium. To demonstrate the proposed method, this paper considers
hydrostatically loaded inflatable barriers and develops an application-specific shape parametrization based on the analytical
inhomogeneous solution for the inflated shape of cylindrical membranes. Coupling this shape parametrization approach with
the adjoint method for computing the gradients of functionals enables a computationally efficient optimization of pressurized
membrane structures. Numerical examples include minimization and minimax problems with inequality and state constraints,
which are solved considering both plane strain and general plane stress conditions. The numerical implementation leverages the
high-level mathematical syntax and automatic differentiation features of the finite-element library FEniCS and related library
dolfin-adjoint. The overall techniques generalize to a broad range of structural optimization problems involving pressurized
membrane and thin shell structures.
⃝c 2020 Elsevier B.V. All rights reserved.

Keywords: Storm-surge barriers; Inflatable dams; Shape optimization; Kreisselmeier–Steinhauser function; FEniCS; Dolfin-adjoint

1. Introduction
Pressurized membrane structures (PMS) obtain their shape and stiffness from their filling medium (air and/or
water), a characteristic mechanical property that makes them challenging to model numerically, but also enables
them to span long distances with minimal mass and efficiently distribute large loads over their surface. As a result,
PMS have generated sustained research interest while finding numerous architectural and structural engineering
applications (e.g. inflatable beams and roofs, hangars, deployable shelters, and barriers). Of recent interest are
pressurized storm-surge barriers [1–3], which could have economic and environmental advantages over traditional
sea walls; however; their structural and shape optimization has not been addressed in the literature. Motivated by the
∗ Corresponding author.
E-mail address: aan2@princeton.edu (A. Niewiarowski).

https://doi.org/10.1016/j.cma.2020.113393
0045-7825/⃝ c 2020 Elsevier B.V. All rights reserved.
2 A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393

design problem of a pressurized storm-surge barrier, this paper develops an adjoint-based method for the solution
of inverse problems involving PMS subject to external loading. Specifically, the problem is to find the vector of
control variables that minimizes an objective functional, under constraints on the deformed shape of the structure.
While the numerical examples focus on pneumatic barriers, the presented method generalizes without conceptual
difficulties to other applications of PMS and thin shell structures.
The numerical modeling of PMS, though a mature area of research, continues to warrant attention. The finite-
element formulation used in the present work mostly follows widely cited methods [4–7], which employ a total
Lagrangian formulation to model the membrane kinematics and a minimum total potential energy approach to
obtain the equilibrium configuration. They also utilize an analytical pressure–volume relationship to obtain a
mesh-free model of the constant internal air mass. Linearizing and discretizing this pressure–volume relation-
ship eventually gives rise to a full tangent stiffness matrix, which requires a solution scheme based on the
Sherman–Morison/Woodbury formula [7,8].
Although pneumatic dams have been in use since 1959 [9], the typology did not attract the interest of the
scientific community until the 1980s. Since then, numerous studies have investigated equilibrium shapes [10],
dynamic properties [11–15], and practical construction and maintenance issues [9,16]. More recently, dynamic
relaxation was applied to the analysis of pneumatic storm-surge barriers in particular [17]. However, to the best
of the authors’ knowledge, only single and double (semicircular) anchorage typologies have been investigated,
and no studies have explicitly addressed the effect of the barrier’s (cross-sectional) shape and pressure on structural
performance. More generally, no study to date has addressed adjoint optimization of PMS with enclosed gas loading
using automatic differentiation tools.
We adopt a PDE-constrained optimization approach to address this knowledge gap. Structural optimization is a
diverse field with a rich mathematical history [18–20]. Some past studies concerning the optimization of membrane
structures include [21–24], while studies on optimization and inverse problems on thin shells include [25–28].
In [27], the adjoint method with semi-analytical sensitivities was applied to shape optimization problems involving
non-parametric shells. In [25,26] the adjoint method with analytical sensitivities was used to estimate loads on
NURBS shells from measured displacements. For such problems, where the loads are the optimization variables,
analytical sensitivities are simple to calculate by hand. Somewhat orthogonal to these studies, machine-learning
methods have also been used to successfully solve forward and inverse problems involving hyperelasticity [29]
and other canonical PDEs [30]. In this paper, we restrict ourselves to gradient-based methods (which scale to
large dimensions of design variables and generalize to time-dependent PDE constraints) and obtain the necessary
gradient information using the method of adjoints and reverse-mode automatic differentiation. We define and
solve minimization as well as minimax problems with inequality and state (displacement) constraints, using the
Kreisselmeier–Steinhauser (KS) function [31–33] as a differentiable approximation of the local max operator.
Adjoint models are typically problem specific and can be tedious to implement. Our numerical implementation
instead leverages the high-level mathematical syntax and automatic code generation features of Unified Form
Language (UFL) [34] and the FEniCS Project [35–37] (an open-source finite element library), and the automatic
differentiation (AD) capabilities of dolfin-adjoint [38–40] to create the forward and adjoint models. Highly optimized
for performance, these libraries compile efficient C++ code from the variational model expressed in Python
and approach the efficiency of application-specific code without the expense of long development times. Low-
level AD [41] (which relies on code transformation) has previously been applied to the optimization of NURBS
shells [28], but no study to date has specifically addressed pressurized membrane structure optimization using high-
level AD tools such as dolfin-adjoint (which rely on operator overloading). The code to reproduce the key results
is available for download (see Table 5).
This paper is organized as follows: Section 2 presents the mathematical formulation of the PMS problem and
Section 3 reviews the adjoint method and automatic differentiation in the PMS context. To demonstrate the proposed
method, Section 4 develops a novel, application-specific shape parametrization for pressurized membrane barriers.
Section 5 formulates three optimization problems concerning a pressurized barrier subject to hydrostatic loading.
The numerical solutions to these problems are presented in Section 6. The paper concludes by highlighting major
findings and discussing how the developed techniques can generalize to other PMS and thin-shell problems.
A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393 3

Fig. 1. The pneumatic membrane problem. The structure begins at the initial configuration (a). It is subsequently inflated to an initial
pressure p0 (b), before being loaded by external fluid pressure p f (c).

2. Pressurized membrane formulation (the forward problem)


This section presents the mathematical formulation of the forward problem, which entails finding the equilibrium
configuration of a pressurized membrane structure and then evaluating an objective functional of the form:
J = J (u, m) (1)
where m is a vector of design variables and the displacement field u is the solution to the membrane equilibrium
problem, which is obtained by a minimum total potential energy approach and the finite element method. The finite-
deformation formulation used in this study most closely follows [4,7,42,43], in that (1) the membrane surface is
described as a two-dimensional manifold embedded in 3-space and (2) the adiabatic ideal gas law is used to obtain a
pressure–volume relationship and enforce a constant gas mass constraint, but it differs in the use of exterior algebra
to define the key kinematic quantities. Although this paper deals only with air-filled membranes, the formulation
generalizes to membranes filled with air and/or water, as shown by [7,8,43].
The structure is assumed to be a rubber-like membrane with negligible bending stiffness (although this is
not a limitation of the current study), an undeformed surface area A, initial thickness T , and an undeformed
material volume V0 = T A. Prior to the application of any external loading, the membrane is inflated to an initial
pressure p0 with a fixed mass of ideal gas occupying an initial volume V0 , resulting in a deformed surface area
a and material volume V = ta. Subsequent application of external loading due to an external pressure field
p f results in further deformation, and changes the internal air pressure p and enclosed volume V (Fig. 1). The
analysis uses a total Lagrangian formulation based on an isoparametric reference configuration where the only
unknown is the displacement field with respect to an arbitrary initial (undeformed) configuration φ X . We adopt the
following standard conventions and notation. Upper- and lower-case letters refer to the undeformed and deformed
spatial configurations, respectively, unless otherwise indicated. Greek letters are reserved for indices 1 and 2, and
summation is implied on repeated indices (Einstein convention). Subscripts and superscripts denote the covariant
and contravariant components, respectively, of vectors and tensors.

2.1. Description of membrane geometry

The membrane shapes S and s are given by surface-centered representations, expressed as parametric mappings
φ of their curvilinear coordinates:
x = φx ξ 1 , ξ 2 , ξ : P ⊂ R2 , x : s ⊂ R3
( )
(2)
X = φX ξ , ξ , ξ: P⊂R , X: S ⊂ R
( 1 2) 2 3
(3)
The parametric domain P is the two-dimensional unit square and serves as the computational domain. In
what follows, geometric and kinematic quantities are derived for a generic (deformed) surface s, with analogous
relationships holding for the undeformed surface S.
The covariant tangent vector at point x in the direction of coordinate line α is given by:
∂x
g α = α , α = 1, 2 (4)
∂ξ
4 A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393

The tangent plane to s at x is defined by the covariant tangent vectors g 1 , g 2 , and normal vector:
g3 = g1 × g2 (5)
The unit normal is given by:
g
n =  3 (6)
 g3
The (dual) contravariant tangent vectors g α are also needed and in this formulation are obtained by applying the
wedge product (instead of inverting the metric):
∂ξα
( )
α
gα ∧ gβ · gβ
g = = (7)
∂x
(( ) )
gα · gα ∧ gβ · gβ
a ∧ b: = a ⊗ b − b ⊗ a (8)
The (generally not orthonormal) tangent vectors are used to construct the metric tensor with covariant and
contravariant components:
gαβ : = g α · g β , g αβ : = g α · g β
I = gαβ g α ⊗ g β = g αβ g α ⊗ g β = g α ⊗ g α = g α ⊗ g α (9)
α
g · gβ = δβα
where δβα is the Kronecker delta.

2.2. Membrane kinematics

The material deformation of the surface from state S to s is given by the mapping (Fig. 2):
x = φ(X) (10)
Introducing the displacement field u = x − X, the deformation gradient can be written as:
∂x ∂ (X + u) ∂u ∂u
F 3×3 : = ∇ X φ = = =1+ = 1 + α ⊗ Gα (11)
∂X ∂X ∂X ∂ξ
Similarly, the convected covariant tangent vectors (in the deformed configuration) become:
∂u
gα = Gα + (12)
∂ξα
from which their contravariant counterparts can be obtained from (7). The right Cauchy–Green tensor is:
C 3×3 = F T F = gαβ G α ⊗ G β (13)
C does not contain thickness strain information, which is the result of embedding a manifold in R3 (i.e. C maps
stretch in the two parametric directions onto surfaces in 3D). To complete the kinematic formulation, standard
membrane assumptions are introduced. Plane stress is assumed (σi3 = 0, i = 1, 2, 3) and the strain in the normal
direction is obtained using an incompressibility assumption. The objective tensor C admits a spectral decomposition
and can be written as a Cartesian tensor C̃, such that the local e3 direction coincides with the initial surface normal
N:
C̃ = C + λ23 N ⊗ N (14)
The kinematic formulation can be used with any hyperelastic incompressible material model, which give the
strain energy as a functional of either the principal invariants of C or the square roots of the eigenvalues (the
principal stretches) of C: (λ1 , λ2 , λ3 ). Considering C̃, the first invariant and third invariants are:
( )
IC̃ = tr C̃ = tr (C) + λ23 (15)
IIIC̃ = det C̃ = det C det(λ23 N ⊗ N)
A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393 5

Fig. 2. Membrane surface kinematics showing the relevant kinematic quantities between the parametric (P), initial (S), and deformed (s)
configurations.
Source: Adapted from [42].

Incompressibility is strongly enforced by setting det C̃ ≡ 1. Considering the local principle stretches:
det C̃ = λ21 λ22 λ23 = J 2 λ23 ≡ 1 (16)
Ja
J= (17)
JA
√    
Ja = det gαβ =  g 1 × g 2  =  g 3  (18)

J A = det G αβ = ∥G 1 × G 2 ∥ = ∥G 3 ∥ (19)

det gαβ √ 1
J=√ = det C, J 2 = det C, = λ23 (20)
det G αβ det C
(Here, J should not be confused with the objective functional in (1).) The relevant invariants are obtained as:
1
IC̃ = λ21 + λ22 + λ23 = tr (C) + (21)
det C
λ 2
λ 2
IIC̃ = λ21 λ22 + λ22 λ23 + λ23 λ21 = λ21 λ22 + 1 + 2 (22)
det C det C
The principal stretches can be calculated from C, the 2 × 2 version of C 3×3 , or the surface metrics:
√ ( ) √ ( )
tr C ( ( )2 ) tr C ( ( )2 )
λ1 = + tr C − 4 det C , λ2 = − tr C − 4 det C (23)
2 2
tr C = G αβ gαβ = tr (C) − 1, det C = J 2
( )
(24)

2.3. Membrane equilibrium equation

The equilibrium position of the membrane is found by minimizing the total potential energy of the coupled
system, Π (φ),which is the summation of internal potential strain energy, potential energy due to external loads, and
the potential energy of the internal gas compression:
min Π (φ), Π (φ) = Πint (φ) − Πext (φ) − Uair (V) (25)
The internal potential energy, Πint (φ), associated with the material deformation is obtained using an appropriate
hyperelastic material model defined in terms of invariants (21) and (22):
( )
ψ = ψ C̃ = ψ IC̃ , IIC̃
( )
(26)
6 A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393

For example, the potential energy of a rubber-like material with shear modulus µ and spatial dimension d = 2, 3
can be described using the incompressible neo-Hookean strain energy function, integrated over the initial material
volume V0 :
µ
∫ ∫
ψ(C)d V0 =
( )
Πint (φ) = IC̃ − d d V0 (27)
V0 2 V0
Integrations are performed in the parametric domain using the following transformations:
d V0 = T d A, d A = J A dξ 1 dξ 2 , da = Ja dξ 1 dξ 2 (28)
The potential energy of constant external loads t 0 , (conservative) body forces b0 , and (spatially attached) follower
loads t f can be obtained by integrating over the relevant (initial or deformed) configurations:
∫ ∫ ∫
Πext (φ) = t 0 · φd A + b0 · φd V0 + t f · φda (29)
A A a
In this study, without loss of generality, body forces are neglected due to the lightweight nature of the structure,
and only a hydrostatic pressure field p f (φ) (see Section 5.1) is considered:
∫ ∫ ∫
Πext (φ) = p f (φ)n · φda = p f (φ)g 3 · φdξ 1 dξ 2 (30)
a ξ1 ξ2

Here it is convenient to use the non-normalized normal since n Ja = g 3 , even though p f g 3 no longer represents
a physical traction.
The potential energy of the enclosed air can be expressed as the integral of the current internal pressure over the
current enclosed volume V:
∫ ∫ ∫
1
Uair (V) = p (V) dV, V = x · g 3 dξ 1 dξ 2 (31)
d ξ1 ξ2
Poisson’s law is used to establish an inverse pressure–volume relationship. This study uses κ = 1 for the
isentropic exponent similar to [4].
( )κ
V0
p = p0 (32)
V
The equilibrium equation is obtained by setting the first variation of the total potential energy for any test direction
δv equal to zero, that is, DΠ (φ) [δv] = 0. Splitting Π (φ) into its components:
DΠint (φ) [δv] − DΠext (φ) [δv] − p (V) DV(φ) [δv] = 0 (33)
Per standard procedures (e.g. [44]),

DΠint (φ) [δv] = S : δ Ed V0 ,
V0
∂ψ
with S = ∂E
being the second Piola–Kirchhoff stress, and E = 1
2 (C − I) being the Green–Lagrange strain. Also,
∫ ∫
DΠext (φ) [δv] = p f (φ)g 3 · δvdξ 1 dξ 2 (34)
ξ1 ξ2
∫ ∫
DV(φ) [δv] = g 3 · δvdξ 1 dξ 2 . (35)
ξ1 ξ2

2.3.1. Linearization and finite element solution


For any non-equilibrium configuration, there will be a non-zero residual, R(u) = DΠ (φ) [δv]. To obtain a
numerical solution to the equilibrium problem using a Newton-type scheme, i.e.,
∂R
∆u = −R(u) (36)
∂u
the equilibrium equation (33) needs to be linearized in the direction of incremental displacement ∆u. The details of
the linearization procedure are omitted from this paper since the process is automated in the FEniCS implementation
A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393 7

(by means of the automatic differentiation capabilities of UFL), but can be found in [4,6,8,43]. A relevant summary
is given here. The left-hand-side bilinear form, ∂ R(u)/∂ u = D 2 Π (φ) [δv, ∆u], is the directional derivative of R(u)
in the trial direction ∆u:
D 2 Π (φ) [δv, ∆u] =
dp
D 2 Πc (φ) [δv, ∆u] + D 2 Πs (φ) [δv, ∆u] − (DV(φ) [δv]) (DV(φ) [∆u]) − ( p − p f )D 2 V(φ) [δv, ∆u]
   dV
constitutive and initial str ess
     
change in nor mal
change in inter nal air pr essur e
(37)
where for Boyle’s law (κ = 1):
dp p p0 V0
= −κ = − 2 (38)
dV V V
The last term reflects changes in the normal vector contains contributions from both the air and fluid loads and
can be written in symmetric form. A complete derivation can be found in [8].
∂δv ) ∂∆u
∫ ∫ [ ]
1 ( 1
g 3 ∧ g α ∆u · α dξ + g3 ∧ gα
)T
D 2 V(φ) [δv, ∆u] = · δvdξ
(
(39)
2 ξ ∂ξ 2 ξ ∂ξ α
Introducing a continuous Galerkin discretization of the linearized equilibrium equation with appropriate choices
of trial space U , test space V̂ , and Dirichlet boundary conditions results in a system of equations:
KT (u)∆u = −R(u) (40)
int
The discrete residual R(u) (for simplicity, R) collects the contributions from the internal forces f , the external
hydrostatic load fext , and the internal air pressure fair . The tangent stiffness matrix KT involves the constitutive and
initial stress stiffness contributions (Kc , Ks ), and the load stiffness contribution K l from the linearization of the
external fluid pressure and internal air pressure terms.
[Kc + Ks − Kl ] ∆u = fint − fext − fair (41)
Kc + Ks − (Kl0 + k g a ⊗ a) ∆u = fint − fext − fair
[ ]

As is well described in the literature [7,8], the assembled system features a sparse tangent stiffness matrix with
one (in the case of air) or more (in the case of air/liquid filled membranes) rank-1 updates. Specifically, for the
air-filled membrane, the update term k g a ⊗ a arises from the finite element discretization of the term relating
changes in air pressure p and enclosed volume V, where k g = d p/DV in Eq. (38) and a is the assembled normal
vector. Even though this rank update results in a full stiffness matrix, the system can be solved efficiently using the
Sherman–Morrison (Woodbury) formula [45]:
k g K−1 aR
∆u = −K−1 R + K−1 a (42)
1 + k g aK−1 a
with K := Kc + Ks − Kl0 . The numerical implementation of the membrane formulation (in dolfin/FEniCS [35,37])
closely mirrors the mathematical syntax used in this section thanks to the use of UFL [34].

3. Adjoint optimization for pneumatic membrane structures


Given the membrane formulation (Section 2), this section applies the adjoint method and automatic differentiation
(AD) to solve optimization problems involving a pressurized membrane’s properties e.g. the initial shape, thickness,
and inflation pressure. An abstract PDE-constrained optimization problem can be stated as: find a control vector m
that minimizes an objective functional J (u, m), subject to the constraint R (u, m) = 0. Such problems are usually
solved using a gradient-based method, and if evaluating J is computationally expensive and if M = |m| is large,
an adjoint-based approach (either continuous or discrete) is the only practical approach to solving the problem,
since the computational cost is independent of M [46]. There exists a dichotomy between “one-shot” methods, in
which the problem is solved in the full space of state and design variables [47–49], and the dimension reduction
approach, in which the PDE constraint is treated implicitly and must be solved after every design update [50].
While one-shot methods can converge faster, their implementation is much more complex: deriving and solving the
8 A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393

Table 1
General optimization algorithm.
Starting with an initial guess for the design vector m(n=0) until convergence
Solve R u, m(n) = 0 for the displacement field u = u m(n)
( ) ( )
1. State solve:
( (n) )
ˆ
2. Fitness evaluation: ⏐ functional J m
Calculate the new objective value
ˆ⏐
3. Adjoint step: Compute the gradient ddmJ ⏐ (n) using AD
m
4. Gradient descent: Perform a gradient decent step and compute δm(n)
5. Design update: m(n+1) = m(n) + δm(n)

nonlinear coupled system of first-order optimality conditions is generally memory intensive, if not prohibitive, and
requires special preconditioners [48,51,52]. An optimization problem may also be ill-posed, non-convex, or have
non-unique solutions; in these situations, an iterative approach might be more robust (although minimizers obtained
might not be global minimizers). Therefore, this work uses the dimension reduction approach. Assuming that (a)
J and R are continuously differentiable, (b) a unique solution R (u, m) = 0 exists for all m, and (c) ∂ R/∂ u is
continuously invertible for all m, then u(m) is continuously differentiable by the implicit function theorem and the
optimization problem can be given in reduced form:
min Jˆ(m), m ∈ R M (43)
where the reduced functional Jˆ(m) = J (u(m), m) implicitly enforces the PDE constraint.
Since it can be shown that discretization and optimization are commutable operations [53], the optimization
approach in this paper assumes a finite-dimensional problem and makes use of the discrete operators derived
(n=0)
in (Section
) 2. (To( summarize ( (n) m(n) ) first the reduced functional,
) (n) ) the approach, beginning with an initial guess
Jˆ m (n)
≡ J u m ,m (n)
is evaluated with the current solution R u , m = 0 (Section 2.3.1). Then the
gradient is calculated using automatic differentiation (Section 3.2), a gradient descent step is performed, and the
process is repeated with an updated m(n+1) until convergence (Table 1). The computed gradient information is
rigorously verified using finite differences (Section 6.1).

3.1. Functional gradients and the discrete adjoint equation

Applying the chain rule to the reduced functional and to the discretized PDE R (u, m) = 0yields, respectively,
the total functional derivative
d Jˆ ∂ J du ∂J
= + , (44)
dm ∂u dm ∂m
and the tangent linear equation (the linearization of the PDE about the current solution u(n) ):
∂R (u, m) du ∂R (u, m)
=− . (45)
∂u dm ∂m
∂R(u,m)
Using more compact notation for the tangent linear equation, with the sensitivity S = ∂m
:
du
KT = −S (46)
dm
Given an explicit expression for J , the terms ∂ J/∂u and ∂ J/∂m are straightforward to compute. The
Jacobian du/dm, however, is computationally prohibitive to compute directly. Instead, the adjoint method is used.
Substituting (45) into (44):
d Jˆ ∂J ∂J
= − KT −1 S + (47)
dm ∂u ∂m
and taking the adjoint gives:

d Jˆ ∂J ∗ ∂J ∗
= −S∗ KT −∗ + (48)
dm ∂u ∂m
A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393 9

The action of the inverse adjoint operator KT −∗ on ∂ J/∂u gives the solution to the adjoint equation:
∂J ∗ ∂J ∗
w := KT −∗ H⇒ KT ∗ w = (49)
∂u ∂u
with w being the adjoint displacement. By solving the adjoint equation, the gradient d Jˆ/dm can be computed as:

d Jˆ ⏐⏐ ∂ J ⏐⏐


⏐ = − w∗ S⏐m + (50)
dm ⏐ ∂m ⏐m
m

where it is emphasized that all quantities pertain to the particular choice of m(n) . It is important to stress, however,
that due to the use of AD (Section 3.2) equation (50) is never explicitly computed. If the tangent linear operator
KT = ∂R (u, m) /∂u is self-adjoint (symmetric), then KT from the last converged iteration can be used for the
adjoint step. For pressurized membranes, it has been shown that under conservative load cases and most boundary
conditions KT is indeed symmetric [5]. However, there do exist several known cases where KT is not self-adjoint [5].
To avoid a loss of generality, we make no assumptions as to the symmetry of KT .

3.2. Automatic differentiation

This section provides a conceptual overview of the automatic differentiation (AD) approach and dolfin-adjoint.
In this work, the gradient is computed using reverse-mode AD tools in dolfin-adjoint [38,39] and UFL [34]. In
general, AD works by recording the computational steps (either simple functions of the form y = f (x) or equation
solves) involved in the objective functional evaluation and then applying the chain rule to each step. Considering
the objective functional as a composition of k intermediate functions, 1 ≤ i ≤ k, and k + 1 intermediate variables
y:
Jˆ = gk ◦ gk−1 ◦ · · · g1 (m) (51)
where y0 : = m is the initial condition and yk : = Jˆ. Then by the chain rule:
d Jˆ ∂ J ∂gk ∂g1
= ... (52)
dm ∂gk ∂gk−1 ∂m
Similarly, for the adjoint:
∗ ∗
d Jˆ ∂g1 ∗ ∂g2 ∗ ∂ Jˆ
= ... (53)
dm ∂ m ∂g1 ∂gk
The adjoints δyi∗ are computed by backpropagation (the vector-Jacobian products are computed in reverse order
with respect to the composition of Jˆ), beginning with
∂J ∗
δyk∗ = , (54)
∂gk
followed by intermediate steps
∂gi ∗ ∗
( )
δyi =

δyi+1 , (55)
∂gi−1
and ending with
∂J ∗
δy0∗ = . (56)
∂m
For a scalar-valued Jˆ, each vector-Jacobian product is a vector of length M. For the special step u = gi (yi−1 )
that is the PDE solve, the adjoint is obtained from Eq. (48):
δyi∗ = −S∗ w (57)
The sensitivity term S = ∂R (u, m) /∂m is computed using symbolic differentiation capabilities in UFL (as
is the tangent stiffness KT = ∂R (u, m) /∂u). In summary, dolfin-adjoint builds a computational graph of the
forward solve, annotating the intermediate steps using overloaded UFL and FEniCS objects called “blocks”. Each
10 A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393

block stores its input yi and output yi+1 , and in differentiation, receives the output derivative δyi+1

, computes the
vector-Jacobian product, and returns the input derivative δyi . The intermediate variables must either be stored or

recomputed, leading to a tradeoff between storage and computation. Checkpointing algorithms are available to attain
performance [54].

3.3. Computational efficiency

While traditional AD tools [41] typically produce the adjoint code from the forward code by operating at the level
of scalars, dolfin-adjoint operates on a higher level of abstraction afforded by UFL and the FEniCS environment,
i.e. the discrete variational forms, resulting in near-theoretical levels of efficiency [38]. The efficiency of the AD
approach can be ascertained by comparing the CPU time required for ( the objective functional evaluation, t f wd , to
the evaluation of its gradient, tad j , and defining a relative cost c = t f wd + tad j /t f wd . Since the adjoint equation
)

is linear, the theoretical relative cost c≈ 2 for problems involving linear PDEs and c < 2 for nonlinear PDEs.
Conventional AD methods that operate on the level of code have reported relative costs ranging from 3 to 30 [55].
For the highly nonlinear pressurized membrane problem, which requires many linear iterations, the theoretical
relative cost approaches 1. For the numerical examples in this work, the adjoint implementation achieves near-
theoretical relative costs (Table 4). Since the overhead involved to annotate the model is constant, the relative cost
should decrease as the number of degrees of freedom is increased. However, larger problems may benefit from the
use of the Sherman–Morrison formula (42) to calculate w, using the adjoint load B = ∂∂uJ in place of R and KT ∗


in place of KT . The adjoint KT can be obtained by interchanging the test and trial functions of the related bilinear
form: KT ∗ (v, u) = KT (u, v).

4. Shape parametrization of pressurized membranes


Shape optimization of pressurized membranes is complicated by the fact that, lacking bending stiffness, their
three-dimensional shape is undetermined until the filling medium attains the design pressure. Shape optimization
problems are typically defined on varying domains; however, it is more convenient to solve shape optimization
problems posed on fixed reference domains [53,56,57], with the geometry parametrically defined. This paper adopts
a similar approach in that it defines the shape optimization problem on the parametric domain P and assumes the
initial membrane surface shape is described by some design shape parameters ms , such that X = φ X (ξ , ms ).
Derivatives of the objective functional with respect to these shape parameters can then be obtained by the chain
rule. Such a generic approach accommodates arbitrary geometry parametrization methods, such as B-splines [58],
free-form deformation [59–61], and non-uniform rational basis splines (NURBS) [62] (a renewed area of interest
after the advent of isogeometric analysis [63,64]).

4.1. Shape parametrization of pressurized membrane barriers

To apply the methods presented in Sections 2 and 3 to shape optimization problems, this section develops
an application-specific parametrization of the geometry of a pressurized membrane barrier (as opposed to using
NURBS or B-splines). While NURBS are useful for complicated geometries, the relatively simple geometry of a
barrier with uniform cross-section suggests a NURBS representation would likely introduce needless complexity
and redundant variables. Furthermore, a NURBS approach would also necessitate a penalization approach [21] to
prevent self-intersections of the membrane surface. Instead, the initial geometry of a pressurized membrane barrier
with a constant cross section can be specified by the circumferential length L of the cross section and the distance
between the supports W , with W ≤ L (Fig. 3).
To define a unique initial cross section, a family of curves parametrized by L and W is needed. An ideal
parametrization should yield an initial configuration that is close to the inflated configuration without external
loading. Such a parametrization should accelerate the convergence of the solution, and if used in a fluid–structure
interaction model, also minimize fluid mesh distortions if using arbitrary Lagrangian–Eulerian (ALE) methods.
Assuming small strains, it is possible to develop such a parametrization. By (temporarily) treating the membrane as
a two-state material (inextensible under tension, slack under compression) and not considering external loading, the
total potential energy of the system Π (φ) reduces to that of the inflation pressure. Assuming the inflation pressure
A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393 11

Fig. 3. Initial geometry of a pressurized membrane barrier, with support width W , cross-sectional length L, and length-to-radius ratio η.
The center of the circular arc is located at (C, B), see (59).

is independent of the membrane configuration, the equilibrium can be found by maximizing the difference between
the initial and final volumes:
( ∫ )
1(
x · g 3 − X · G 3 dξ dξ .
) 1 2
min Π (φ) = max p0 (58)
Aξ d

An analytical solution is available [65] for cylindrical membranes, and can be written as the following set of
parametric equations defined on the unit square, ξ ∈ [0, 1]2 :
X 1 (ξ ) = A cos ξ 1 η − B sin ξ 1 η + C
( ) ( )

X 2 (ξ ) = ℓξ 2 (59a)
X 3 (ξ ) = −A sin ξ 1 η − B cos ξ 1 η + B
( ) ( )

W W sin η W
A=− , B=− , C= (59b)
2 2 (1 − cos η) 2
Eq. (59) constitutes a parametrization of a family of circular arcs (in the x-z plane) with radius R = Lη and
center at O = (C, B), extruded a distance ℓ in the y-direction. The geometrical ratio η = RL is given by the implicit
equation

W 2
( )
η − 2 (1 − cos η) = 0, (60)
L
which results from the inextensibility assumption. Since this implicit relationship complicates computations, the
pressurized membrane barrier geometry can be parametrized by W and η directly, instead of W and L:

ξ ∈ [0, 1]2
X = φ X (ξ , W, η) , W >0 (61)
η ∈ (0, 2π)
W has a physical lower bound at W = 0 (corresponding to the two membrane edges being pinned at one point),
although this corresponds to a singularity in the parametrization. Likewise, the physical bounds on η are (0, 2π),
corresponding to a full circle and a flat line, although these values also result in singularities. Since these two
parameters fully describe the design space for pressurized membrane barriers, this parametrization confers significant
advantages over other approaches in this application specific context, and is used for the initial surface description
(3) in the examples in the following section.
12 A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393

Fig. 4. Pressurized barrier subject to variable hydrostatic loading on the left and right sides.
Source: Adapted from [43].

5. Optimization problems regarding pressurized membrane barriers


The theoretical developments described in Sections 2–4 are applied to some example optimization problems
involving a pneumatic membrane barrier hydrostatically loaded on one or both sides (Fig. 4). Before introducing
the example problems, the hydrostatic load and some application-specific constraints are described first.

5.1. Hydrostatic loading

The hydrostatic pressure field is a spatially-attached follower load [5] calculated analytically based on the current
membrane position vector x and can be written as:
p f = − px H + px (62)
Denoting x H as the position vector of the fluid surface, p x H is the (constant) gravity potential of the fluid with
respect to the spatial origin:
px H = ρ g · x H (63)
and p x is the (varying) fluid pressure at point x.
px = ρ g · x (64)
For hydrostatic loading due to possibly different depths HL and H R on the left and right sides of the barrier, the
sign of the x-component of the surface normal g 3 is used to differentiate between the left and right sides of the
barrier.
{
p f L , g 3 · î < 0
pf =
p , g · î ≥ 0
( fR ( 3 (65)
p f L = max (−ρ g · ( x HL − x ) , 0 )
) )

p f R = max −ρ g · x H R − x , 0

5.2. Application-specific constraints for pneumatic membrane barriers

The problem of a hydrostatically loaded pressurized barrier is characterized by the properties listed in Table 2.
With W implicit in L and R (i.e. 60), these variables can be grouped into the dimensionless quantities
η = L/R, W/H, R/T (representing geometric ratios) and p0 /µ, Hρg/µ (representing the internal and external
pressures). The barrier application imposes practical constraints on η. Specifically, a minimum barrier height equal
to the depth is required to prevent overtopping, which results in a minimum magnitude for η,
Oz + R ≥ H −→ ηmin (66)
A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393 13

Table 2
Hydrostatically loaded barrier, pertinent properties.
Name Symbol Unit
Initial radius R L
Initial arclength L L
Initial thickness T L
Base width W L
Water depth H L
Initial inflation pressure p0 M/LT2
Shear modulus µ M/LT2
Hydrostatic pressure gradient ρg M/L2 T2

Fig. 5. (a) (W, η) pairs satisfying the height constraint (67). The solid line indicates barriers with cross-sectional height equal to the depth
(S F = 1), while the dotted line corresponds to barriers twice as high (S F = 2). (b) Various barrier cross-sections satisfying the minimum
height constraint.

where from (59), Oz = B and R are the center z-coordinate and radius of the parametrized cross-section (Fig. 5a).
Choosing a factor of safety S F for overtopping, the bounds on η become:
H ≤ Oz + R ≤ (S F)H (67)
Writing out the height constraint using (59):
W sin η W
H ≤− +√ ≤ (S F)H (68)
2 (1 − cos η) 2(1 − cos η)
Fig. 5 visualizes these constraints. For example, since large values of W/H can be considered uneconomical in
this application-specific context (due to the span of the barrier being much larger than the depth), W/H is confined
to W/H ∈ (0, 4]. The shaded region in Fig. 5b shows W, η pairs satisfying this inequality with a maximum factor
of safety S F = 2.

5.3. Problem statements

The following optimization problems, expressed here in a continuous setting and ordered by the number of
controls, are solved using the presented method.

Problem 1: A pressure optimization problem, in which we seek the minimum inflation pressure subject to
overtopping and minimum stretch constraints.
14 A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393

Problem 2: A shape optimization problem, in which we seek the initial cross-sectional shape that minimizes the
maximum principal stretch λ1 .
Problem 3: A shape optimization problem, in which we seek the optimal distribution of material in the thickness
direction to obtain a fully stressed design.
Two cases are considered: (A) a combined state of plane strain and plane stress, and (B) a state of general
plane stress. For case A, a unit transversal segment (ℓ = 1) of a long barrier is considered, which results in a
state of combined plane stress and plane strain (λ2 = 1). Therefore, only λ1 is relevant and can be considered the
uniform hoop stretch. For case B, a short barrier (ℓ ≈ W ) with fixed ends is considered. ( The2 ) following Dirichlet
boundary conditions, u D , are considered for the boundary of the unit square, Γ D = ∂ [0, 1] ⊂ R 2
. For case A,
ξ ξ
( 2
) ( 2
)
the membrane is pinned along its length: u D 0, = u D 1, = 0, while the sectioned edges are restrained in
ξ , ξ , ,
( 1 ) ( 1 ) ( 1 )
the X 2 direction only: u D 0 = u D 1 = u 0, u 3
. For case B, the membrane is pinned along its length
and width: u D 0, ξ 1 = u D 1, ξ 1 = u D 0, ξ 2 = u D 1, ξ 2 = 0.
( ) ( ) ( ) ( )

To solve these problems, it is necessary to formulate the objective functional as an integral, as Jˆ(m) may not
vary smoothly with changes in m and/or the adjoint load (the righthand side operator) may become singular. The
problems and their respective objective functionals are developed in the following subsections and the numerical
results are presented in Section 6.

5.3.1. Problem 1: Pressure minimization


In Problem 1, the inflation pressure is minimized to prevent unnecessarily large support reactions, with the
constraint that the height of the loaded barrier, H B , remains greater than the maximum height of the fluid surface
H . However, since compression is kinematically admissible in the membrane formulation (ideal membranes cannot
support( in-plane) compression and wrinkle instead), a low inflation pressure can result in unfeasible compressive
states λ1,2 < 1 . Variational wrinkling models e.g. [66] have been proposed that are compatible with the automatic
differentiation approach used in this paper; however, wrinkling is outside the scope of this study and is reserved
for future work. Instead, since wrinkling and/or slack states are not desired for structural performance reasons, a
minimum stretch constraint can be imposed to avoid compression: min (λ2 ) ≥ 1.
These two state constraints (height and stretch) are complicated by the fact that the local min and max
operators are generally non-differentiable. In this work, the Kreisselmeier–Steinhauser (K S) function [67] is used
to approximate the min and max operators with smooth integral functionals. For some normalized local measure
j(u), the K S function is given by:

1
K S ( j) = ln eσ j(u) dξ (69)
σ
While limσ →∞ K S = max j(u), a finite and sufficiently large σ ensure that K S smoothly envelopes the maximum
of the local measure j. Past studies have focused on the optimal choice of σ [33]; here, the values of σ are
empirically selected. Thus, the height of the barrier can be approximated using the K S function, leading to the
constraint:

( ) ( ) 1
H B = max x(u) · k̂ ≈ K S x(u) · k̂ = ln eσ x(u)·k̂ dξ ≥ x H · k̂, (70)
σ
Similarly, the minimum principal stretch, min (λ2 ) can also be approximated by the K S function. The minimum
stretch constraint becomes:

1
min (λ2 ) ≈ −K S (−λ2 ) = − ln e−σ λ2 dξ ≥ 1 (71)
σ
In applying the K S function, it is necessary to normalize j. Therefore, geometry with an initial height of 1 is
used, while the stretch is normalized by construction with λ = 1 corresponding to the unstretched state. The state
constraints (70) and (71) are reduced functionals of the form
g (u, u(m)) ≥ 0 (72)
meaning that their values and gradients can be evaluated using automatic differentiation in the same manner as the
reduced objective functional Jˆ (Section 3.2). Thus Problem 1 is posed as:

min J ,
ˆ J = λ1 dξ
ˆ (73)
p0
A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393 15

subject to u satisfying the membrane equilibrium equation with Dirichlet boundary conditions:
R (u ( p0 ) , p0 ) = 0
u = u D on Γ D
and p0 being the inflation pressure of the barrier, subject to some bounds pmin < p0 < pmax , and the state constraints
(70) and (71). Problem 1 is solved for case A only since the above stretch constraint is not relevant to case B.

5.3.2. Problem 2: Shape optimization


Problem 2 seeks to minimize the maximum principal stretch λ1 in the pressurized and loaded membrane to
avoid unnecessarily high stresses (assuming an isotropic material) by varying the initial geometry. This results in a
minimax problem where Jˆ = max λ1 (u(m), m). As in Problem 1, the max operator is approximated with the K S
function, which has been used in past works involving minimax problems [31–33].
Case A implies a constant cross section (in the longitudinal direction). For case B, more complex geometry can
be explored. For example, the shape parametrization presented in Section 4.1 can be augmented such that the cross
section varies over the length of the barrier. In this work, the following harmonic variation is considered:
η ξ 2 = η0 + αη sin π ξ 2
( ) ( )
(74)
W ξ 2 = W0 + αw sin π ξ 2
( ) ( )

where W0 and η0 denote the width and length/radius ratio at the fixed ends. The parametrization in (59) thus remains
unchanged with the exception of the C in (59b) being changed to C = W0 /2 to maintain axial symmetry. Thus
Problem 2 is given by:

1
min J ,
ˆ J = K S (λ1 (u(m), m)) = ln eσ λ1 (u(m),m) dξ
ˆ (75)
m σ
subject to u satisfying the membrane equilibrium equation with Dirichlet boundary conditions,
R (u(m), m) = 0
u = u D onΓ D
with m being the vector of geometric control variables satisfying the constraints described in Section 5.2:
H ≤ O Z + R ≤ Hmax
0 < η < 2π
0 < W < Wmax
For case A, m = (W, η) ∈ R2 . For case B, m = W0 , η0 , αw , αη ∈ R4 and the above constraints are applied at
( )
both ends and mid-length (ξ 2 = 0, 0.5, 1).

5.3.3. Problem 3: Thickness optimization


The objective in Problem 3 is to obtain a fully stressed design, in which the membrane is uniformly stretched
to a full-strength capacity characterized by a maximum allowable stretch λ. This is achieved by locally varying the
membrane thicknessT = T ξ 1 , ξ 2 to minimize the squared difference between λ1 and λ:
( )

)2
min Jˆ, Jˆ = λ1 (u(T )) − λ dξ
(
(76)
T

subject to u satisfying the membrane equilibrium equation with Dirichlet boundary conditions:
R (u(T ), T ) = 0
u = u D onΓ D
and T ∈ R subject to some bounds Tmin < T < Tmax . For case A, the stretch is presumed constant in the ξ 2
direction (λ2 = 1). Since the function T is defined over the domain, it is necessary to enforce constant thickness in
the ξ 2 direction to prevent non-physical solutions. This is done by initializing the membrane thickness T with the
solution of the following linear PDE:
∂ T (ξ )

v = 0, (77)
∂ξ 2
16 A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393

Table 3
Numerical values used in examples.
Quantity Value
T 0.12
H 1
p0 18.5
µ 1160
ρg 100

Table 4
Summary of numerical examples. (*Note: the adjoint time reported for P1 considers the objective functional as well as the two functional
constraints.)
Problem Case A (plane strain) Case B (general plane stress)
P1 (1, 2 sides) P2 (1, 2 sides) P3 P2 (1, 2 sides) P3
# elements 400 6,400 200 6,400 40,000
# dofs 3009 38,883 1,809 38,883 241,203
# controls 1 2 603 4 80,401
Fwd time t f wd (one function eval.) (s) 32.09 34.65 95.76 88.84 3.07 74.78 77.07 791.0
Adj time tad j (one gradient eval.) (s) 29.76* 28.36* 4.67 4.45 0.70 8.29 7.83 21.32
Relative cost (t f wd + tad j )/t f wd 1.92* 1.82* 1.05 1.05 1.23 1.11 1.10 1.03
Optimization: # of obj function evals 23 23 10 16 94 48 30 18
Optimization: # of gradient evals 21 18 10 16 36 47 30 18
Optimization: total time IPOPT (s) 2.84 2.7 5.18 4.37 1.30 7.73 7.31 24.3
Optimization: total time function evals (s) 323.56 250.37 376.2 1302.0 147.94 1355.0 2040.31 4633.8

Table 5
Replication of results.
Code: github.com/oaniewiarowski/FenicsMembranesCMAME
FEniCS 2019.1 Membrane model, mesh generation
dolfin-adjoint 2019.1 Adjoint model
PETSc/PETSc4py [69] Linear algebra package
IPOPT Optimization package

with test function v ∈ R and boundary conditions T = Tm ξ 1 , 0 = 0. Here the trial thickness, Tm = Tm ξ 1 , ξ 2
( ) ( )

is used as the control variable for case A. This equation solve is added to the computational tape, thus implicitly
enforcing the constant thickness constraint.

6. Numerical implementation & results

The membrane model is implemented using the open-source finite element library dolfin/FEniCS [35,37] and
the adjoint model is obtained by automatic differentiation of the FEniCS model using dolfin adjoint [38]. The
optimization is performed using an interior point algorithm with BFGS Hessian approximation, implemented in the
solver library IPOPT [68]. The code to reproduce the key results is available (see Table 5, although the details of
the numerical implementation of the membrane model are reserved for a future publication.
The following values, summarized in Table 3, are used to initialize the numerical examples unless otherwise
stated: p0 /µ = 18.5/1160, Hρg/µ = 100/1160, and R/T = R/0.12. The depth H is held fixed and equal to
unity.
Each problem is solved on the unit square, which is discretized into a uniform triangular mesh (e.g. Fig. 6). The
details of the discretization for each problem are provided in Table 4. For all problems, quadratic elements with
continuous Galerkin interpolation are used for the displacement and external pressure fields.
A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393 17

Fig. 6. Example meshes with 5 × 5 (a) diagonal and (b) crossed unit cells. Finer meshes are used for discretizing the unit square in
Problems 1, 2, and 3. Discretization details are given with each example.

Fig. 7. (a) Zeroth- and (b) first-order Taylor remainders for Jˆ = K S(λ1 ) and controls p0 , T, W . The perturbations are scaled by
h = {0.01, 0.05, 0.025, 0.0125}.

6.1. Verification of the reduced gradients

The computed gradients can be rigorously verified using finite differences. Given a perturbation δm,Taylor’s
theorem states that the error decreases at a rate proportional to h for a zeroth-order expansion
⏐ ⏐
⏐ J (m + hδm) − Jˆ(m)⏐ → 0 at O(h)
⏐ˆ
(78)

and at a rate proportional to h 2 for a first-order expansion


⏐ ⏐
⏐ J (m + hδm) − Jˆ(m) − h∇ Jˆ(m) · δm⏐ → 0 at O h 2 .
⏐ˆ ( )
(79)

By repeatedly halving h and checking the convergence rate of these zeroth- and first-order remainders, it is
possible to rigorously verify the computed gradient ∇ Jˆ (m) = d Jˆ/dm obtained using AD. Fig. 7 shows the zeroth
(78) and first-order (79) Taylor remainders with Jˆ = K S (λ1 ), m as the inflation pressure p0 , initial thickness T ,
width W , and length to radius ratio η, and h = 0.01, 0.05, 0.025, 0.0125. Similar results were obtained for the
objective and constraint functionals used in Problems 1 and 3 and are not reported here for the sake of brevity.

6.2. Problem 1 results

The pressure optimization problem was solved for the plane strain case A only with hydrostatic loading on one
and both sides (see Fig. 4). The geometry was W, η = (2, π), K S parameter σ = 600, and other parameters as
previously mentioned. The initial pressure for both cases was p0 = 18.5 with bounds (5, 30). The unit square was
discretized into 100 × 1 crossed cells (Fig. 6b). With only one scalar control variable, the solution can be verified by
plotting the objective functional and constraints for a range of values of p0 (Fig. 8). As can be seen, only the stretch
18 A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393

Fig. 8. Graphical solution of the pressure minimization problem for loading on (a) one and (b) both sides of the barrier. The objective and
constraint functionals are plotted for a range of initial pressure values p0 . For both load cases, only the stretch constraint is active and is
violated below the critical pressure at which the structure cannot carry the external loads without (unphysical) compression.

constraint is active for both load cases. (The height constraint may become active for different initial parameters,
i.e. larger H .) For each load case, there exists a critical pressure below which non-physical compression occurs
(see also Fig. 10b).
For loading on one and both sides, the interior point algorithm terminated after 22 and 19 iterations, respectively
(Fig. 9), with final pressures of 13.2 and 22.5. Fig. 10 shows the initial and final stretches for both loads cases. For
loading on one side, the initial inflation pressure p0 = 18.5 was too high (Fig. 9a and Fig. 10a), resulting in the
IPOPT algorithm initially overshooting along the locally constant stretch constraint. For loading on both sides, the
initial pressure was too low, meaning that the structure could not bear external loads without unphysical compression
(λ2 < 1) in the crown of the barrier (Fig. 10b). For both cases, the K S function provided good approximations for
the barrier height (Fig. 9) and minimum stretch.

6.3. Problem 2 results

Problem 2 (case A and B) is solved for hydrostatic loading on one and both sides of the barrier, with an initial
geometry of W, η = (3.5, 3). For case A and B, the unit square is discretized into 100 × 16 and 40 × 40 crossed
cells (Fig. 6b), respectively.

6.3.1. Case A — Plane strain


As in Problem 1, it is possible to plot the objective function this two-variable (W, η)problem and to find the
solution graphically (although doing so is considerably more expensive than in 1D). For verification purposes, the
maximum hoop stretch, max (λ1 ), was calculated for both load cases using 50 evenly-spaced values of W and 25
evenly-spaced values of η satisfying the height constraints, as indicated by the points in Fig. 11. Values of max (λ1 )
along the active height constraint, O Z + R ≥ H = 1, are plotted in Fig. 12 together with values of Jˆ for different K S
function parameters σ and the corresponding minimizers obtained by optimization. For the asymmetric load case, the
K S approximations of max (λ1 ) yield minimizers close to the true minimizer, and the optimization approach matches
these well. For the two-sided loading, the K S approximations yield less accurate minimizers and the gradient
d Jˆ/d m along the constraint, shown in Fig. 13, is almost constant and thus leads to convergence problems. This
highlights a limitation of gradient methods. Although in theory σ can be increased to better approximate max (λ1 ),
in practice, values above 600 (on 64 bit finite precision machines) resulted in numerical problems associated with
large numbers. As seen in Fig. 11 and Fig. 12, max (λ1 ) has a unique minimizer for each load case (at least in the
chosen bounds), thereby guaranteeing the existence and uniqueness of the solution. For shape optimization problems
A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393 19

Fig. 9. Barrier inflation pressure minimization subject to minimum height and stretch constraints, for loading on (a) one and (b) both sides
of the barrier. The initial pressure was too high for (a), and too low for (b). The K S function provides a conservative estimate of the barrier
height.

Fig. 10. Variation of principal stretches λ1 and λ2 over the parametric domain for initial guess pressure, p0 = 18.5, and optimized pressures,
for loading on (a) one and (b) both sides.

solved using the method of domain transformations (as is done here), if the geometrical mapping is continuous,
invertible, and bounded, then a local minimizer exists except for certain pathological cases [18]. In general, proving
the existence and uniqueness of solutions to non-trivial problems with larger design spaces is usually not possible;
this limitation is typical of a this optimization approach [25].
The solution trajectory of the IPOPT algorithm for σ = 300 is shown in Fig. 11. For loading on one side,
optimization returned a minimizer W, η = (1.71, 3.46), with Jˆmin = K S (λ1 ) = 1.021 and a true maximum principal
stretch max (λ1 ) = 1.032. For the symmetric load case, the obtained minimizer is W, η = (1.92, 3.22), Jˆmin = 1.006,
and max (λ1 ) = 1.012. The interior point algorithm converged in 10 and 20 iterations, respectively. The initial and
final cross sections are shown in Fig. 14. This final geometry for case (b) is approximately semicircular, similar to
some existing barriers.
20 A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393

Fig. 11. Problem 2A — Shape optimization with hydrostatic load on (a) one side and (b) both sides of the barrier. The black and red crosses
mark the minimizers obtained using optimization (σ = 300) and grid search (the true global minimizers), respectively. (For interpretation of
the references to color in this figure legend, the reader is referred to the web version of this article.)

Fig. 12. True maximum stretch max (λ1 ) and K S approximations along the (active) minimum height constraint. Minimums obtained from
grid search and optimization are indicated with red crosses and black X’s, respectively. A higher σ value generally results in more accurate
results.

6.3.2. Case B — General plane stress


For the general plane stress case, the initial geometry is W0 , η0 , αW , αη = (3.5, 3, 0, 0) and the length is held fixed
at ℓ = 5. The bounds on the harmonic variation parameters αW , αη were chosen as (−0.2, 0.2). Unlike Problems 1
and 2A, validating the solution graphically is no longer possible due to the larger design space. The optimization
convergence history is shown in Fig. 15, together with a summary of the numerical results. The optimized values
A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393 21

Fig. 13. Gradients for Problem 2A (loading on both sides) along the active minimum height constraint, evaluated on a 100 × 16 crossed
cell mesh, and plotted along the W axis. The discontinuities in the gradients are discretization-dependent and decrease with mesh refinement
(not shown).

Fig. 14. Problem 2A — Initial and optimized cross sections showing hoop stretches for hydrostatic loading on one side (left) and both
sides (center) of the barrier. Comparison (right) between the loaded initial and final geometries with the one-side loading (red) and two-side
loading (black). (For interpretation of the references to color in this figure legend, the reader is referred to the web version of this article.)

of max (λ1 ) for both load cases are similar to the results obtained in Problem 2A, although the optimized geometry
varied along the cross-section. Comparing the final geometries (Fig. 16), the cross section widens toward the middle
for the asymmetric load case (αW > 0), and tapers for the symmetric load case (αW < 0). The final cross-section at
the boundary is semicircular for the asymmetric case, W0 , η0 ≈ (2, π). For both load cases, the bounds for αW , αη
are tested. Sharp variations in αW and αη while Jˆ decreases suggest the presence of multiple local minima.

6.4. Problem 3 results

The thickness optimization problem is solved for the asymmetric (one-side) load case only with constant cross-
sectional geometry W, η = (2, π), all other parameters as previously mentioned, and bounds on the thickness
(0.01, 0.2). The maximum allowable stretch is arbitrarily set to λ = 1.02. and 1.01 for case A, and B, respectively.

6.4.1. Case A — Plane strain


For this example, the unit square is discretized into a row of 200 triangular cells (100 × 1 diagonal cells in Fig. 6a)
and quadratic interpolation is used for the control thickness field, Tm . The initial geometry is W, η = (2, π), and
all other parameters as in Table 3. The control thickness is initially constant and equal to 0.12. The final state of
22 A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393

Fig. 15. Shape optimization Problem 2B (general plane stress) of a short, pressurized barrier with fixed ends with hydrostatic load on one
and two sides.

Fig. 16. Shape optimization Problem 2B (general plane stress). Initial and optimized geometry showing λ1 for hydrostatic loading on one
side (left) and both sides (right) of the barrier. The initial geometries are indicated by the translucent surfaces.
A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393 23

Fig. 17. Problem 3A — Optimized control thickness Tm (left) and corresponding thickness T (right).

Tm and T is shown in Fig. 17. The optimized thickness, plotted over the parametric domain (Fig. 18b), mirrors the
stretch corresponding to the (initial) constant thickness barrier (Fig. 18a). This reciprocal relationship between the
initial stretch and the optimized thickness provides a good indication of the soundness of the results. The interior
point algorithm converged in 35 iterations with Jˆmin = 2.38 × 10−10 , although in some places the stretch marginally
exceeded the allowable value, λ = 1.02. The (initial) material volume was reduced by 15%, from 0.377 to 0.320.

6.4.2. Case B — General plane stress


The problem is solved with geometry W, η, ℓ = (2, π, 4). The unit square is discretized using 100 × 100 crossed
cells (Fig. 6) and the thickness field (the control) is discretized using discontinuous piecewise constant elements,
resulting in 241,203 degrees of freedom and 80,401 controls. The IPOPT solver terminated after 18 iterations after
reaching the prescribed goal tolerance of 1 × 10( −6 (Fig. ) 19c). The final thickness field and objective is plotted
in parametric space (Fig. 20) and over the line ξ 1 , 0.5 (Fig. 19). While the objective monotonically decreases,
indicating the efficacy of the method, it can be observed that the largest deviations occur on the boundary. Overall,
the final stretch is less uniform when compared to case A; to obtain more precise results, the discretization and
stopping criteria should be adjusted.

7. Conclusions and future work


This paper presented a discrete adjoint-based approach for solving optimization problems involving pressurized
membrane structures, with pressurized barriers serving as the motivating application. Automatic code generation
and automatic differentiation tools were applied to the presented membrane formulation and a design space was
proposed to parametrize the geometry of a pressurized barrier. The use of high-level programming tools greatly
facilitated experimentation with different objective functionals and constraints. The methodology was successfully
applied to different optimization problems, involving both plain strain and general plane stress conditions. Although
the examples dealt with simple geometry, the optimization approach yielded non-trivial results. For the shape
optimization problem (P2), the results suggested the possibility for conceptual design improvements of the
pressurized barrier typology. The thickness optimization problem (P3) demonstrated the computational method for
larger number of design parameters, while pressure optimization (P1) problem dealt with constraints on the state
to avoid wrinkling and/or slack states.
24 A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393

Fig. 18. Problem 3A — Thickness optimization of barrier subject to hydrostatic loading on the left side. (a): Initial and optimized hoop
stretch λ1 plotted over the parametric domain. Equalization of the linearly varying
( hydrostatic
) pressure with the constant internal air pressure
results in an inflection point around ξ 1 = 0.2. On the dry side of the barrier ξ 1 > 0.6 , the pressure is constant, resulting in a constant
stretch. (b): Initial and optimized thickness plotted over the parametric domain. (c): Convergence history for Jˆ.

Indeed, membrane wrinkling is an important phenomenon that was not dealt with directly in this work. A
classical approach to this complication is the so-called tension-field theory, in which the stress field is artificially
post-processed during the solution process to remove compressive states. Such an approach is not compatible
with our method, as this post-processing operation is not differentiable. However, there exist variational wrinkling
models e.g. [66], which yield a smooth transition between taut and slack states by the addition of extra degrees
of freedom. The incorporation of a wrinkling model into the presented framework represents an interesting line of
future research.
The examples illustrated the need to exercise caution regarding potential numerical problems (e.g. exponentiation
of large numbers when applying the K S function and constant/near-zero gradients); however, the techniques used
are general and are applicable to a broad class of problems with arbitrary geometries. For example, inverse-
problems concerning deformed geometry (i.e. balloon design) can be solved by using a distance energy objective
functional [21]. Thin-shell structures can be treated by augmenting the membrane model with rotational degrees
A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393 25

Fig. 19. Problem 3B. (a): Initial and optimized principal stretch λ1 plotted over ξ 1 , 0.5 — (compare to Fig. 18a). (b): Initial and optimized
( )

thickness plotted over ξ , 0.5 . (c): Convergence history for Jˆ.


( 1 )

of freedom [70]. The approach can be extended to steady and time-dependent fluid–structure problems. This work
is a necessary steppingstone to more advanced optimization studies of pressurized storm-surge barriers subject to
hydrodynamic and impact loads, which is the subject of future research.

Declaration of competing interest


The authors declare that they have no known competing financial interests or personal relationships that could
have appeared to influence the work reported in this paper.

Acknowledgments
This material is based upon work supported by the Princeton Environmental Institute at Princeton University, as
well as the Princeton University-University of Sao Paulo Collaborative Partnership. The authors would also like to
thank Alex Beatson for his advice regarding dolfin-adjoint.
26 A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393

Fig. 20. Problem 3B — The final objective functional (left) and (scaled) thickness height field (right) in the parametric domain.

Appendix. Replication of results


The presented results were produced using the tools in Table 5.

References
[1] A. Niewiarowski, A. Rock, S. Adriaenssens, M. Chiaramonte, Pneumatic storm surge barriers subject to hydrodynamic loading, in:
Creat. Struct. Des. Proc. IASS Annu. Symp. 2018, Boston, 2018.
[2] M.C. Van Breukelen, Improvement and scale enlargement of the inflatable rubber barrier concept: A case study applicable to the
Bolivar Roads barrier, Texas, USA, 2013. uuid:3fb26157-ac79-491f-a3bb-94f7fb4d1f61.
[3] J. Goodglass, A. Niewiarowski, S. Adriaenssens, The effect of internal pressure on the mechanical behavior of a new type of flexible,
pressurized, deployable storm-surge barrier, in: 2nd Int. Conf. New Horizons Green Civ. Eng., Victoria, British Columbia, 2020.
[4] J. Bonet, R.D. Wood, J. Mahaney, P. Heywood, Finite element analysis of air supported membrane structures, Comput. Methods Appl.
Mech. Engrg. 190 (2000) 579–595, http://dx.doi.org/10.1016/S0045-7825(99)00428-4.
[5] K. Schweizerhof, E. Ramm, Displacement dependent pressure loads in nonlinear finite element analyses, Comput. Struct. 18 (1984)
1099–1114, http://dx.doi.org/10.1016/0045-7949(84)90154-8.
[6] T. Rumpel, K. Schweizerhof, Volume-dependent pressure loading and its influence on the stability of structures, Internat. J. Numer.
Methods Engrg. 56 (2003) 211–238, http://dx.doi.org/10.1002/nme.561.
[7] T. Rumpel, K. Schweizerhof, M. Haßler, Efficient Finite Element Modelling and Simulation of Gas and Fluid Supported Membrane
and Shell Structures, Springer-Verlag, Berlin/Heidelberg, 2005, pp. 153–172, http://dx.doi.org/10.1007/1-4020-3317-6_10.
[8] A. Jrusjrungkiat, Nonlinear Analysis of Pneumatic Membranes: From Subgrid To Interface, Technischen Universität München, 2009.
[9] PIANC, Inflatable Structures in Hydraulic Engineering, 2018.
[10] R. Watson, A note on the shapes of flexible dams, J. Hydraul. Res. 23 (1985) 179–194, http://dx.doi.org/10.1080/00221688509499364.
[11] J.-C. Hsieh, R.H. Plaut, Free vibrations of inflatable dams, Acta Mech. 85 (1990) 207–220, http://dx.doi.org/10.1007/BF01181518.
[12] C.M. Dakshina Moorthy, J.N. Reddy, R.H. Plaut, Three-dimensional vibrations of inflatable dams, Thin-Walled Struct. 21 (1995)
291–306, http://dx.doi.org/10.1016/0263-8231(95)93616-T.
[13] G.V. Mysore, S.I. Liapis, R.H. Plaut, Dynamic analysis of single-anchor inflatable dams, J. Sound Vib. 215 (1998) 251–272,
http://dx.doi.org/10.1006/jsvi.1998.1611.
[14] J.-C. Hsieh, R.H. Plaut, O. Yucel, Vibrations of an inextensible cylindrical membrane inflated with liquid, J. Fluids Struct. 3 (1989)
151–163, http://dx.doi.org/10.1016/S0889-9746(89)90038-8.
[15] R.H. Plaut, Parametric excitation of an inextensible, air-inflated, cylindrical membrane, Int. J. Non. Linear. Mech. 25 (1990) 253–262,
http://dx.doi.org/10.1016/0020-7462(90)90055-E.
A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393 27

[16] X.Q. Zhang, P.W.M. Tam, W. Zheng, Construction, operation, and maintenance of rubber dams, 2002, http://dx.doi.org/10.1139/L02-016.
[17] M. Streeter, L. Rhode-Barbarigos, S. Adriaenssens, Form finding and analysis of inflatable dams using dynamic relaxation, Appl. Math.
Comput. 267 (2015) 742–749, http://dx.doi.org/10.1016/j.amc.2014.12.054.
[18] J. Sokolowski, J.-P. Zolesio, Introduction To Shape Optimization, Springer Berlin Heidelberg, Berlin, Heidelberg, 1992, http://dx.doi.
org/10.1007/978-3-642-58106-9.
[19] M.D. Gunzburger, Perspectives in Flow Control and Optimization, Society for Industrial and Applied Mathematics, 2002, http:
//dx.doi.org/10.1137/1.9780898718720.
[20] S. Ulbrich, Analytical Background and Optimality Theory, Springer Netherlands, Dordrecht, 2009, pp. 1–95, http://dx.doi.org/10.1007/
978-1-4020-8839-1_1.
[21] M. Skouras, B. Thomaszewski, B. Bickel, M. Gross, Computational design of rubber balloons, Comput. Graph. Forum. 31 (2012)
835–844, http://dx.doi.org/10.1111/j.1467-8659.2012.03064.x.
[22] Y. Wei, C. Zhao, Z. Yao, P. Hauret, X. Li, M. Kaliske, Adjoint design sensitivity analysis and optimization of nonlinear structures
using geometrical mapping approach, Comput. Struct. 183 (2017) 1–13, http://dx.doi.org/10.1016/j.compstruc.2017.01.004.
[23] P. Pathmanathan, S.J. Chapman, D.J. Gavaghan, Inverse membrane problems in elasticity, Q. J. Mech. Appl. Math. 62 (2008) 67–88,
http://dx.doi.org/10.1093/qjmam/hbn026.
[24] N.D. Manh, A. Evgrafov, A.R. Gersborg, J. Gravesen, Isogeometric shape optimization of vibrating membranes, Comput. Methods
Appl. Mech. Engrg. 200 (2011) 1343–1353, http://dx.doi.org/10.1016/j.cma.2010.12.015.
[25] N. Vu-Bac, T.X. Duong, T. Lahmer, X. Zhuang, R.A. Sauer, H.S. Park, T. Rabczuk, A NURBS-based inverse analysis for
reconstruction of nonlinear deformations of thin shell structures, Comput. Methods Appl. Mech. Engrg. 331 (2018) 427–455,
http://dx.doi.org/10.1016/j.cma.2017.09.034.
[26] N. Vu-Bac, T.X. Duong, T. Lahmer, P. Areias, R.A. Sauer, H.S. Park, T. Rabczuk, A NURBS-based inverse analysis of thermal
expansion induced morphing of thin shells, Comput. Methods Appl. Mech. Engrg. 350 (2019) 480–510, http://dx.doi.org/10.1016/j.
cma.2019.03.011.
[27] M. Firl, K.U. Bletzinger, Shape optimization of thin walled structures governed by geometrically nonlinear mechanics, Comput. Methods
Appl. Mech. Engrg. 237–240 (2012) 107–117, http://dx.doi.org/10.1016/j.cma.2012.05.016.
[28] L.F.R. Espath, R.V. Linn, A.M. Awruch, Shape optimization of shell structures based on NURBS description using automatic
differentiation, Internat. J. Numer. Methods Engrg. 88 (2011) 613–636, http://dx.doi.org/10.1002/nme.3183.
[29] A. Beatson, J.T. Ash, G. Roeder, T. Xue, R.P. Adams, Learning Composable Energy Surrogates for PDE Order Reduction, 2020,
http://arxiv.org/abs/2005.06549.
[30] C. Anitescu, E. Atroshchenko, N. Alajlan, T. Rabczuk, Artificial neural network methods for the solution of second order boundary
value problems, Comput. Mater. Contin. 59 (2019) 345–359, http://dx.doi.org/10.32604/cmc.2019.06641.
[31] M. Shimoda, H. Azegami, T. Sakurai, Numerical solution for min–max shape optimization problems (minimum design of maximum
stress and displacement), JSME Int. Journal, Ser. A Solid Mech. Mater. Eng. 41 (1998) 1–9, http://dx.doi.org/10.1299/jsmea.41.1.
[32] N.M.K. Poon, J.R.R.A. Martins, An adaptive approach to constraint aggregation using adjoint sensitivity analysis, Struct. Multidiscip.
Optim. 34 (2007) 61–73, http://dx.doi.org/10.1007/s00158-006-0061-7.
[33] K. Shintani, H. Azegami, Construction method of the cost function for the minimax shape optimization problem, JSIAM Lett. 5 (2013)
61–64, http://dx.doi.org/10.14495/jsiaml.5.61.
[34] M.S. Alnæs, A. Logg, K.B. Ølgaard, M.E. Rognes, G.N. Wells, Unified form language: A domain-specific language for weak
formulations of partial differential equations, ACM Trans. Math. Software (2014) http://dx.doi.org/10.1145/2566630.
[35] A. Logg, K.A. Mardal, G.N. Wells, Automated solution of differential equations by the finite element method, Lect. Notes Comput.
Sci. Eng. (2012) http://dx.doi.org/10.1007/978-3-642-23099-8_1.
[36] R.C. Kirby, A. Logg, A compiler for variational forms, ACM Trans. Math. Software (2006) http://dx.doi.org/10.1145/1163641.1163644.
[37] A. Logg, G.N. Wells, DOLFIN: Automated finite element computing, ACM Trans. Math. Software (2010) http://dx.doi.org/10.1145/
1731022.1731030.
[38] P.E. Farrell, D.A. Ham, S.W. Funke, M.E. Rognes, Automated derivation of the adjoint of high-level transient finite element programs,
SIAM J. Sci. Comput. 35 (2013) C369–C393, http://dx.doi.org/10.1137/120873558.
[39] S. Mitusch, S. Funke, J. Dokken, Dolfin-adjoint 2018.1: automated adjoints for FEniCS and Firedrake, J. Open Source Softw. (2019)
http://dx.doi.org/10.21105/joss.01292.
[40] S.W. Funke, The automation of PDE-constrained optimisation and its applications, 2012, http://dx.doi.org/10.13140/2.1.3688.0967.
[41] L. Hascoet, V. Pascual, The tapenade automatic differentiation tool, ACM Trans. Math. Software 39 (2013) 1–43, http://dx.doi.org/10.
1145/2450153.2450158.
[42] R.A. Sauer, T.X. Duong, C.J. Corbett, A computational formulation for constrained solid and liquid membranes considering isogeometric
finite elements, Comput. Methods Appl. Mech. Engrg. 271 (2014) 48–68, http://dx.doi.org/10.1016/j.cma.2013.11.025.
[43] M. Haßler, K. Schweizerhof, On the static interaction of fluid and gas loaded multi-chamber systems in large deformation finite element
analysis, Comput. Methods Appl. Mech. Engrg. 197 (2008) 1725–1749, http://dx.doi.org/10.1016/j.cma.2007.08.028.
[44] J. Bonet, R.D. Wood, Nonlinear Continuum Mechanics for Finite Element Analysis, second ed., 2008, http://dx.doi.org/10.1017/
CBO9780511755446.
[45] M. Woodbury, Inverting modified matrices, Princeton, NJ, 1950.
[46] O. Pironneau, On optimum design in fluid mechanics, J. Fluid Mech. 64 (1974) 97–110, http://dx.doi.org/10.1017/S0022112074002023.
[47] S. Günther, N.R. Gauger, Q. Wang, Simultaneous single-step one-shot optimization with unsteady PDEs, J. Comput. Appl. Math. 294
(2016) 12–22, http://dx.doi.org/10.1016/j.cam.2015.07.033.
[48] G. Biros, O. Ghattas, Parallel Lagrange-Newton-Krylov-Schur methods for PDE-constrained optimization. Part I: The Krylov-Schur
solver, SIAM J. Sci. Comput. (2006) http://dx.doi.org/10.1137/S106482750241565X.
28 A. Niewiarowski, S. Adriaenssens and R.M. Pauletti / Computer Methods in Applied Mechanics and Engineering 372 (2020) 113393

[49] L.T. Biegler, O. Ghattas, M. Heinkenschloss, B. van Bloemen Waanders, Large-Scale PDE-Constrained Optimization: An Introduction,
2003, pp. 3–13, http://dx.doi.org/10.1007/978-3-642-55508-4_1.
[50] V. Akçelik, G. Biros, O. Ghattas, J. Hill, D. Keyes, B. van Bloemen Waanders, 16. parallel algorithms for PDE-constrained optimization,
in: Parallel Process. Sci. Comput., Society for Industrial and Applied Mathematics, 2006, pp. 291–322, http://dx.doi.org/10.1137/1.
9780898718133.ch16.
[51] A. Battermann, E.W. Sachs, Block Preconditioners for KKT Systems in PDE—Governed Optimal Control Problems, 2001, http:
//dx.doi.org/10.1007/978-3-0348-8233-0_1.
[52] J. Schöberl, W. Zulehner, Symmetric indefinite preconditioners for saddle point problems with applications to PDE-constrained
optimization problems, SIAM J. Matrix Anal. Appl. (2007) http://dx.doi.org/10.1137/060660977.
[53] P. Guillaume, M. Masmoudi, Computation of high order derivatives in optimal shape design, Numer. Math. 67 (1994) 231–250,
http://dx.doi.org/10.1007/s002110050025.
[54] A. Griewank, Achieving logarithmic growth of temporal and spatial complexity in reverse automatic differentiation, Optim. Methods
Softw. 1 (1992) 35–54, http://dx.doi.org/10.1080/10556789208805505.
[55] U. Naumann, The Art of Differentiating Computer Programs, Society for Industrial and Applied Mathematics, 2011, http://dx.doi.org/
10.1137/1.9781611972078.
[56] F. Murat, J. Simon, Etude de problemes d’optimal design, in: Lect. Notes Comput. Sci., 1976, (Including Subser. Lect. Notes Artif.
Intell. Lect. Notes Bioinformatics), http://dx.doi.org/10.1007/3-540-07623-9_279.
[57] C. Brandenburg, F. Lindemann, M. Ulbrich, S. Ulbrich, A continuous adjoint approach to shape optimization for Navier Stokes flow,
in: Optim. Control Coupled Syst. Partial Differ. Equations, Birkhäuser Basel, Basel, 2009, pp. 35–56.
[58] V. Braibant, C. Fleury, Shape optimal design using b-splines, Comput. Methods Appl. Mech. Engrg. (1984) http://dx.doi.org/10.1016/
0045-7825(84)90132-4.
[59] M. Andreoli, A. Janke, J.-A. Desideri, J. Ales, J.-A. Desideri, Free-form-deformation parameterization for multilevel 3D shape
optimization in aerodynamics, 2003, inria-00071565.
[60] T.W. Sederberg, S.R. Parry, Free-form deformation of solid geometric models, ACM SIGGRAPH Comput. Graph. 20 (1986) 151–160,
http://dx.doi.org/10.1145/15886.15903.
[61] M. Lombardi, N. Parolini, A. Quarteroni, G. Rozza, Numerical Simulation of Sailing Boats: Dynamics, FSI, and Shape Optimization,
Springer, Boston, MA, 2012, pp. 339–377, http://dx.doi.org/10.1007/978-1-4614-2435-2_15.
[62] L. Piegl, W. Tiller, The NURBS Book (Monographs in Visual Communication), Springer-Verleg, 1996, http://library.auditory.ru/1491/.
[63] W.A. Wall, M.A. Frenzel, C. Cyron, Isogeometric structural shape optimization, Comput. Methods Appl. Mech. Engrg. 197 (2008)
2976–2988, http://dx.doi.org/10.1016/j.cma.2008.01.025.
[64] T.J.R. Hughes, J.A. Cottrell, Y. Bazilevs, Isogeometric analysis: CAD finite elements NURBS exact geometry and mesh refinement,
Comput. Methods Appl. Mech. Engrg. 194 (2005) 4135–4195, http://dx.doi.org/10.1016/j.cma.2004.10.008.
[65] S.S. Ligarò, R. Barsotti, Equilibrium shapes of inflated inextensible membranes, Int. J. Solids Struct. 45 (2008) 5584–5598,
http://dx.doi.org/10.1016/j.ijsolstr.2008.06.008.
[66] J. Mosler, A novel variational algorithmic formulation for wrinkling at finite strains based on energy minimization: Application to
mesh adaption, Comput. Methods Appl. Mech. Engrg. 197 (2008) 1131–1146, http://dx.doi.org/10.1016/j.cma.2007.10.004.
[67] G. Kreisselmeier, R. Steinhauser, Systematic control design by optimizing a vector performance index, in: IFAC Proc., 1979,
http://dx.doi.org/10.1016/s1474-6670(17)65584-8.
[68] A. Wächter, L.T. Biegler, On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming,
Math. Program. 106 (2006) 25–57, http://dx.doi.org/10.1007/s10107-004-0559-y.
[69] L.D. Dalcin, R.R. Paz, P.A. Kler, A. Cosimo, Parallel distributed computing using Python, Adv. Water Resour. (2011) http:
//dx.doi.org/10.1016/j.advwatres.2011.04.013.
[70] J.S. Hale, M. Brunetti, S.P.A. Bordas, C. Maurini, Simple and extensible plate and shell finite element models through automatic code
generation tools, Comput. Struct. 209 (2018) 163–181, http://dx.doi.org/10.1016/j.compstruc.2018.08.001.

You might also like