Sie sind auf Seite 1von 144

B.Sc.Eng.

Thesis
Bachelor of Science in Engineering

Shape optimization of mechanical systems in


COMSOL Multiphysics 4.4
Thomas Agger (s113357)

Kongens Lyngby 2014

DTU Mechanical Engineering


Department of Mechanical Engineering
Technical University of Denmark
Nils Koppels All
Building 404
2800 Kongens Lyngby, Denmark
Phone +45 4525 1960
info@mek.dtu.dk
www.mek.dtu.dk

Abstract
This paper investigates parametric shape optimization in COMSOL Multiphysics. The strengths
and weaknesses of the parametric and non-parametric methods are discussed. Furthermore,
three classic shape optimization problems are parameterized and analyzed with the use of
COMSOL. The models investigated are a beam, a hole in a plate under biaxial stress and a
llet on a bar.
The results of these optimizations are compared to analytical work as well as numerical work
from other shape optimization methods. Furthermore the diculties regarding shape optimization in COMSOL are discussed.

ii

Preface
This bachelors thesis was prepared at the Department of Mechanical Engineering at the Technical University of Denmark in fulllment of the requirements for acquiring a B.Sc.Eng. degree
in Mechanical Engineering. The project was realized in the period between the 4th February
and 24th June 2014 with the supervision of Ole Sigmund and Niels Aage. The project is
credited 20 ECTS points.

Kongens Lyngby, December 2, 2014

Thomas Agger (s113357)

iv

Acknowledgements
First and foremost I would like to thank my two supervisors, Professor Ole Sigmund and
Researcher Niels Aage, for their support and help throughout my thesis.
Furthermore I would like to thank Rune Westin and Thure Ralfs from COMSOL for their
support when COMSOL was misbehaving.

vi

Contents
Abstract

Preface

iii

Acknowledgements

Contents

vii

1 Introduction

2 Theory
2.1 Shape optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 Parameter free shape optimization . . . . . . . . . . . . . . . . . . . . . . . . .
2.3 Parametric shape optimization . . . . . . . . . . . . . . . . . . . . . . . . . . .

3
3
3
5

3 Optimizing the shape of a cantilever beam


3.1 Model denition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Results and discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3 Modeling instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7
7
11
16

4 Optimization of a plate with a hole


4.1 Model denition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 Results and discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3 Modeling instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

23
23
27
33

5 Optimizing the shape of a fillet


5.1 Model denition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2 Results and discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3 Modeling instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

43
43
44
50

6 Conclusion
6.1 Future work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

59
59

Appendix A Cantilever Beam


A.1 Standard . . . . . . . .
A.2 One summation . . . . .
A.3 Two summations . . . .
A.4 Three summations . . .
A.5 Four summations . . . .
A.6 Five summations . . . .

61
61
64
68
72
76
82

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

viii

Contents

Appendix B Plate with a hole


B.1 Tensile ratio of 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
B.2 Tensile ratio of 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
B.3 Tensile ratio of 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Appendix C Fillet
C.1 Standard . . . . .
C.2 One summation . .
C.3 Two summations .
C.4 Three summations
C.5 Four summations .
C.6 Five summations .
Bibliography

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

87
87
92
97
105
105
107
112
117
122
127
133

Abbreviations and Nomenclature


Abbrevation

Meaning

vM
Disp.
C

von Mises Stress


Displacement
Stress optical coecient, compliance
Elastic strain energy
Finite element

U
FE

CHAPTER

1
Introduction

The 27th of November 2013 COMSOL released a new version of their FEM software. With
COMSOL Multiphysics 4.4 they oered new opportunities for doing shape and topology optimization. With version 4.4 they introduced two new optimization solvers: BOBYQA, which
is a gradient-free optimization solver, and MMA, which is gradient-based; thus giving new
abilities for optimization solving.
For a long time COMSOL have had great capabilities for doing topology optimization, but
has been lacking in the area of shape optimization. As of right now is are only one model in
COMSOLs model library that shows how to do shape optimization, but this model is very
limited in its application to more complex problems as well as mechanical problems. The model
shows how the sound pressure from a horn can be optimized for a given angle by parameterizing one boundary. However, there is no good documentation on geometric parameterization
in COMSOL and the complexity rises when more than one boundary has to be parameterized.
Therefore the main goal of this project has been to explore the strengths and weaknesses for
shape optimization, map the capabilities for doing shape optimization and apply these capabilities to mechanical problems in COMSOL.
The rst focus of the project is to optimize the shape of a cantilever beam. A simple problem
that is much more troublesome than anticipated. The rst real obstacle is to gure out how to
congure the parameterizations using prescribed mesh displacement when having more than
one boundary. Another obstacle is guring out the right scale factors in such a way that
inverted elements do not occur in the model.
The next focus of the project is to investigate a more advanced problem. A plate with a
hole in the middle is to be investigated and benchmarked in accordance with former analytical
studies .
The last focus of the project will be to look at a 3D model. The object will be to optimize the shape of a llet on a 2D axisymmetric bar. The parameterization technique will be
similar to the one used in the two other models, but will be able to produce results in 3D.

1 Introduction

A question that might arise is why is it so interesting to do shape optimization in COMSOL


when there is a lot of other software capable of doing the same thing?
The other shape optimization software around typically has a lot of limitations compared to
COMSOL. For instance, some of the software only has 2D capabilities, whereas COMSOL
oers both 2D and 3D shape optimization. COMSOL also oers built-in CAD tools. This
enables the user to create 1D, 2D and 3D models directly in the software. If the user have an
advanced geometry it is also possible to import CAD models from separate CAD software.
In addition to this COMSOL also oers very good options for topology optimization which a
lot of other software also lacks, which is a huge advantage seeing as it can be interesting to
do both shape and topology optimization on the same model. Furthermore COMSOL has the
ability to combine multiple physics, hence the name COMSOL Multiphysics. This means that
while doing shape optimization on a mechanical structure it is also possible to see how other
physics will aect the model, e.g. COMSOL is capable of doing FE calculations for acoustics,
electrochemistry, heat transfer, and many other branches of physics.

CHAPTER

2
Theory

2.1 Shape optimization


Structural shape optimization can be formulated with mathematical terms by the following
equation [1]:
{
xl x xu
min f (x) with
g(x) 0
xRn
Here f (x) is the objective function, meaning the parameter sought to be either minimized or
maximized in the optimization. For mechanical problems it is common practice to minimize the
objective function for the total volume or the total strain energy of the model. By minimizing
the total strain energy, the compliance is minimized, thus increasing the stiness. The vector,
x, is made up of the design variables, xj , which control the size, shape and topology of the
model. These design variables are optimized to get the best structure within their constraints.
The design variables constraints are dened by a lower and upper bound, xl and xu , respectively. Behavior inequality constraints, g(x), are typically used for applying limitations on
stresses, deections, and natural frequencies or to make sure the structure meets its demands.
Shape optimization is divided into two main groups, which deal with the change of the shape
in dierent ways; parametric and non-parametric shape optimization. They both have their
strengths and weaknesses which will be looked into in this chapter.

2.2 Parameter free shape optimization


There are a lot of variations to the parameter free approach, but the general idea is that it uses
FE-based data as design variables, for instance nodal coordinates, nodal thickness, element
thickness etc.
The advantage of using the non-parametric approach is that it allows the greatest degree of
freedom regarding the shape change; it is independent of the function describing the boundaries
to be optimized. Another advantage is that the user completely avoids parameterizing the
boundaries, which can be very time-consuming and demands thorough knowledge of geometric
functions and linear combinations when optimizing complex structures.
The main weakness of this method is its lack of a length scale control [2]. Without a length
scale control the method doesnt produce any meaningful results seeing as the boundaries
become jagged, see Figure 2.1. These jagged boundaries are neither optimal nor desirable as
they result in immense stress concentrations that are very sensitive to the local shape change.
Furthermore the shape seen in Figure 2.1(a) isnt a realistic shape for manufacturing.

2 Theory

(a) The jagged boundaries when length scale


control is not applied

(b) When using the length scale control the


jagged boundaries are smoothed out

Figure 2.1: Illustrations borrowed from [2]


Another problem occurs when using the nodal coordinates as design variables. The design
updates can change the mesh of the structure without changing the shape of the structure [1,
Fig. 1]. This makes the solution of the optimization problem non-unique seeing as a surface
can be represented by an innite number of nite element meshes [1].
However, both of these problems can be solved using regularization. The problem with nonuniqueness can be solved by achieving a regular mesh without element distortions; to achieve
this in-plane regularization is used. Laplace regularization is widely used for mesh regularization. The way that Laplace regularization works is by attempting to change the mesh in such
a way that the mesh will consist of square elements with the same area content. This is done
by iteratively moving each mesh node to the center of gravity for its adjacent nodes [1][3].
The problem with the smoothness of the boundaries are solved with out-of-plane regularization
(sensitivity ltering). The out-of-plane regularization controls the local curvature of the result,
thus giving the boundary the smoothness required. The jagged boundaries occurs because of
the discretization errors from the sensitivity elds. In short these sensitivity errors are ltered
by modifying the response gradients. This is where the use of a length scale control comes in.
Despite its problems, parameter-free optimization still has its strengths. This approach is
able to explore a large number of solutions with a considerable degree of freedom for changing
the model while greatly reducing the time required for modeling the structure.

2.3 Parametric shape optimization

2.3 Parametric shape optimization


In this approach, instead of using the FE data as design variables, the boundaries of the original
geometry is parameterized such that the shape of the structure can be changed by adjusting a
set of parameters. To avoid long computational time it is preferred to describe the geometry
with as few parameters as possible, but with a parameterization that gives the geometry the
greatest degree of freedom for shape change. A number of dierent parameterization methods
exist but the basis is the same; describing the boundaries by means of geometric functions with
parameters that can be tweaked. A few of the methods will be described below.

Discrete approach
This approach uses the coordinates of the boundary points as design variables, see Figure 2.2.
This approach gives a great degree of freedom seeing as it is only limited by the design variables
describing the structure. In addition to this it is also easy to implement.

Figure 2.2: An airfoil described using the boundary points. Illustration borrowed from [4]
The disadvantages of using this approach are that for complex structure a large number of
design variables are necessary to describe the geometry thus leading to high computational
time, moreover the smoothness of the geometry is hard to obtain if using too few design
variables. The smoothness problem can be solved by using multi-point constraints [4] which
makes it possible to connect dierent nodes and degrees of freedom [5] and by adding dynamic
adjustments of the upper and lower bounds.

Natural design approach


A varitation of the discrete approach is the natural design approach. The natural approach
uses an auxiliary structure similar to the original structure. Fictitious loads are then added to
the auxiliary structure and the mesh is updated by adding the auxiliary nodal displacement
to the current nodal coordinates. These ctitious shape loads are chosen using nonlinear
programming methods [6], e.g. Pedersen et. al [7] use eigenvectors from a ctitious modal
analysis to dene orthogonal shape basis functions [2].

Polynomial and spline approach


With the use of polynomial and spline functions the number of design variables can be greatly
reduced compared to the discrete and natural design approach seeing as they can describe a
whole boundary; this makes them particularly suitable for shape optimization. The optimization parameters are incorporated in the expressions, and therein there is no other need for
design variable constraints than the ones set for the optimization parameters.
One of the advantages of this approach is that a nice smooth boundary is obtained. The polynomial has a very compact form for describing geometries. Unfortunately its only good for
describing simple curves seeing as it has a tendency for round-o errors when the coecients
have too large variation.

2 Theory

The Bzier curves are based of on Bernstein polynomials [8] and are very similar, in a mathematical point of view, to the polynomial form. A general form for a Bzier curve is given
by:
n

B(t) =
Pi bi,p (t) s [0, 1]
(2.1)
i=0

Pi are denominated the control points and act as design variables in the optimization, n is the
number of control points, and bi,p (t) are the Bernstein polynomials of the pth degree. Despite
their resemblance, the Bzier curves are a much better representation than the polynomial form,
and the control points used in the expression are very closely related to the curve positioning,
which is benecial when setting the geometric constraints [4]. The Bzier curve is great for
shape optimization for simple geometries, like the polynomial form. The more complex a
curve is, the higher the degree of the Bernstein polynomials needs to be in order to describe
it properly. Unfortunately the round-o error increases when the degree of the Bernstein
polynomials increases, on top of that the computational time for high-degree Bzier curves is
high [9].
A better way to describe complex curves is to use a series of low-degree Bzier curves called
Basis spline, or B-spline. The advantages of these splines is their ability to describe complex
curves accurately and eciently.
The weakness of the polynomial and spline approach is its inability to describe complex 3D
structures entirely from polynomial forms and splines as they need a lot of control points.
The strengths, however, are numerous: it has the ability to handle surfaces; to handle large
geometry changes; to handle local shape changes; and to give a smooth surface/boundary.

CAD-based approach
The CAD-based approach uses the benets of having the structure already drawn and is a fully
integrated solution saving time from geometric modeling. The CAD part can be an integrated
part of the FE software or a separate program and is either based on boundary representation
or a constructive solid geometry method to represent the physical, solid object [4]. In the
CAD software it is possible to describe the boundaries or the surfaces of the structure with
linear combinations of basic functions. Some of the parameters of these functions are then
used as design variables for the optimization procedure. The use of the CAD approach allows
for optimization for both 2D and 3D, and its limitations are dependent on the users ability
to parameterize. In order to get good results when parameterizing this way, it is crucial that
the initial guess of the basic functions is good, seeing as the basic functions can be what limits
the optimization. Another strength of this method is that the smoothness of the boundary is
such that you get smooth boundaries with little eort. The drawback is that it can be quite
time consuming to implement the linear combinations, and the optimization is greatly reliable
on how good the initial guess for shape function is.

CHAPTER

Optimizing the shape of a cantilever beam


This model shows how to apply boundary shape optimization to a cantilever beam. The model
will focus on optimization when more than one boundary has to be parametrized. Optimal
objective function and the use of probes will also be investigated.

3.1 Model denition


The cantilever beam is a classic mechanical problem. It is a beam anchored at one end and
carries the load along its length or in the other end. Thus the upper half of the beam is subjected to tensile stress whereas the lower half is subjected to a compression. Its a structure that
is mostly employed in construction; among these are especially cantilever bridges and balconies.
The beam to be studied is made of a linear elastic material; structural steel. The dimensions of the beam are 10 m 1 m 0.5 m, meaning it has a total weight of 39,250 kg. The beam
is xed at x = 0 and has a boundary load in x = a with a total magnitude of P = 1000 kN,
see Figure 3.1.
P

Figure 3.1: The beam with dimensions a b d


The parameterization of the upper part of the beam is going to be described by the following
function from [10]:
N

dy =
qi ci sin(ix)
(3.1)
i=1

Where x is the parameterization parameter that varies from 0 to 1 along the boundary, ci are
scale factors and qi are the optimization variables. By increasing the number of optimization
variables the optimization obtains a higher degree of freedom to optimize, thus potentially
achieving a better value of the objective function. However, this will also increase sensitivity
and if the scale factors arent right the solution can continue into the undened region, thus
creating an unfeasible model. The magnitude of the scale factors depend on how many terms
from equation 3.1 are included, but generally speaking ci should be R [0, 1]. If i then
ci 0 meaning that the parameterization becomes more and more sensitive when more terms
are included, thus the terms have to be scaled more to make sure that the model is still feasible.

3 Optimizing the shape of a cantilever beam

Equation (3.1) will be modied slightly to t the situation in question. The parameterization
describes the change in the y-direction for the upper boundary, for simplicity N = 1 and the
scale factors ci are removed to begin with, thus equation (3.1) becomes:
dy = q1 sin(x)

(3.2)

The boundaries to be parametrized can be seen on Figure 3.2. This gure also shows the name
and direction of the parameterizations.

s2(x)

s1(x)

s3(x)
1

0
1

s4(x)

Figure 3.2: Boundaries to be parametrized and the direction of the parameterization parameters
In order to make the height of parameterization s2 (x) change according to the height of parameterization s1 (x) and s3 (x) the terms (1 x)s1 (1) + xs3 (0) are added to equation 3.2.
In Figure 3.2 the boundaries to be parametrized can be seen plus the direction of the parameterization parameters. The boundary s4 (x) isnt to change during the optimization therefore
the parameterization will be s4 (x) = 0. The parameterization of the four boundaries can be
seen below:
s1 (x) = p1 x

(3.3)

s2 (x) = (1 x)s1 (1) + xs3 (0) + q1 sin(x)

(3.4)

s3 (x) = p2 (1 x)

(3.5)

s4 (x) = 0

(3.6)

With the optimization parameters set to p1 = p2 = q1 = 0 the model will be a regular beam.
By changing the parameters to p1 = q1 = 1 and p2 = 0 the beam seen in Figure 3.3 will appear.
It is quite obvious that this beam has an increase in the area. Whereas the original had an
area of 10 m2 this new beam has an area of 21.4 m2 .

Figure 3.3: Beam with optimization parameters p1 = q1 = 1 and p2 = 0

3.1 Model definition

Before the optimization can begin the objective function has to be dened. The objective
function is what denes the criterion for optimality. In this model the goal is to minimize the
displacement of the beam in the y-direction. The displacement can be minimized through the
total elastic strain energy in the point where the total load is acting on, since the equation for
strain energy is equal:
1
U = P
(3.7)
2
Where P is the force acting in the end and is the displacement produced by the force . It can
be seen that the elastic strain energy is directly proportional to the displacement, therefore by
minimizing the strain energy the compliance of the structure is minimized, thus maximizing
the stiness.
Another condition for the optimization is an area constraint. If an area constraint isnt applied
to the model, the optimization parameters will just reach their upper bound as that would
give the strongest structure, but also the heaviest. The area constraint for this model will be
the original area, a b = 10 m2 . If the wish was to get a lighter structure and still maintain the
strength, that could be accommodated by multiplying the constraint with a scale factor.
In the model the parameterizations are implemented by the use of the prescribed boundary
displacement in the Deformed Geometry interface. The beam is set to have free deformation.
In order to avoid inverted elements in the model when it changes form due to the optimization,
a mapped quad mesh is used instead of a tri mesh seeing as quad and mapped meshes are
less likely to become inverted [11, p. 471]. Another thing to help avoiding inverted mesh
elements are the scale factors, ci , when using a higher order summation. It is also necessary to
take great care when setting the boundaries for the optimization variables; if given too much
freedom inverted elements will occur.
The Deformed Geometry interface is primarily used to study how the physics of the model
change when the geometry of the model changes; it is therefore ideal for shape optimziation. It
is worth noticing that the model isnt remeshed when using the Deformed Geometry interface,
instead the mesh is deformed. Typically when looking at multiple versions of the same model,
a new mesh is created per each new iteration, but by using Deformed Geometry the mesh
elements are instead being stretched. The original mesh can be seen on Figure 3.4 whereas
the morphed mesh of Figure 3.2 can be seen on Figure 3.5.

10

3 Optimizing the shape of a cantilever beam

Figure 3.4: The original mesh of the standard beam

Figure 3.5: The original mesh of the standard beam morphed to t the new model
The advantage of deforming the mesh elements, instead of remeshing, is speed. For this
particular model the dierence between remeshing and morphing isnt so distinct, but for
larger models and models with ner meshing there is a notable dierence seeing as creating a
new mesh each time can be quite time-consuming.
However, if the deformations in the mesh becomes too large, inverted mesh elements can occur.
There are a number of ways to avoid this[11, p. 861]:
Changing the mesh. A good method for changing the mesh is to use a predened mesh
and then changing the maximum element size. As stated earlier it is also useful to use
quad meshes to prevent inverted mesh elements.
Another mesh smoothing type can also be used. By standard it is set to Laplace smoothing which is the least time-consuming to use seeing as it is linear and uses one uncoupled
equation for each coordinate direction. This mesh smoothing type is most suitable for
small, linear deformations.
The other smoothing types are non-linear and use a single coupled system of equations
for all coordinate directions; this makes it more demanding for computational power,
they are nevertheless better at avoiding inverted mesh elements.

3.2 Results and discussion

11

One of the advantages of the Deformed Geometry is that it isnt necessary to remesh.
However, the mesh quality can become too poor, if the mesh deformations become sufciently large, thus making it necessary to remesh. This can be done with an adaptive
mesh renement in COMSOL, but the use of this feature also eliminates the use of
mapped quad meshes seeing as it only works on tri meshes.

3.2 Results and discussion


By changing the shape of a standard beam without altering the volume, the displacement of
the right end can be lowered by 65%. In addition to this the distribution of the stresses will
be more evenly spread out and the peak value of the stresses will be only half as big!
On Figure 3.6 the standard beam can be seen. It is quite clear that the stresses are highly
concentrated at the end where the beam is xed, whereas the stresses in the other end are a
fraction of that.

Figure 3.6: Standard beam with no optimization done, q1 = q2 = p1 = 0


Table 3.7 shows the key values from the solution of the standard beam, these values will set
a benchmark for the optimizations. The main goal of the optimization is to increase stiness
and decrease stress peaks.
vM,max [MPa]

U [J/m3 ]

Utot [J]

Area [m2 ]

Y-disp. [m]

137.78

3580

17900

10

-0.036

Table 3.7: Values for the standard beam, reference points for the optimization
Figure 3.8 shows an optimized beam with optimization parameters p1 = 0.33, q1 = 0.44 and
p2 = 0.9. The parameterization of the upper boundary only has one summation (N = 1)
meaning its a single sine curve.

12

3 Optimizing the shape of a cantilever beam

Figure 3.8: Optimized beam with one summation and p1 = 0.33, q1 = 0.44 and p2 = 0.9
From the scale of the von Mises stress it is obvious that the peak stress has decreased considerably, it is in fact 89% lower. By comparing Table 3.9 and Table 3.7 it can also be see
that the elastic strain energy has been reduced a great amount, which comes to show in the
displacement which has been reduced by almost 56%. Another thing worth noticing is that the
stress is much more evenly distributed on Figure 3.8. The stress along the axis of the beam is
almost constant ensuring that the xed end isnt exposed to stresses signicant higher than at
the other end.
vM,max [MPa]

U [J/m3 ]

Utot [J]

Area [m2 ]

Y-disp. [m]

73.01

2298

11490

10

-0.023

Table 3.9: Values for a optimized beam with N = 1, p1 = 0.33, q2 = 0.44 and p2 = 0.9
It should also be noted that there are stress singularities at the corners of the xed end (larger
versions of the stress plots can be found in Appendix A). The reason for stress singularities
is that the area of the corners is very small and approaching zero meaning that the stresses
are approaching innite. These singularities will not appear in the real world because when a
beam is xed, the material will still yield a bit and/or the support material will move slightly
to allow the point stress to remain nite [12].
To see if the beam can be optimized further with the sine parameterization, the optimization has been run for N = [1, 5], where N Z. When going higher than N = 1, it is necessary
to remember the scale factors, otherwise theres a high possibility that the model will go out of
bounds and return an unfeasible solution. Figure 3.10 shows the solution to the optimization
when N = 5. The plot doesnt look that much dierent to Figure 3.8, and its a bit hard to see
all ve sine curves but the stresses are lower. In Table 3.11 the key values of all optimizations
are compared.

3.2 Results and discussion

13

Figure 3.10: Optimized beam with ve summations and p1 = 0.47, p2 = 0.84, q1 = 0.27,
q2 = 0.61, q3 = 0.36, q4 = 0.17, and q5 = 0.13

vM,max [MPa]

U [J/m3 ]

Utot [J]

Area [m2 ]

Y-disp. [m]

Std.

137.78

3580

17900

10

-0.036

N =1

73.01

2298

11490

10

-0.023

N =2

71.13

2161

10806

10

-0.022

N =3

69.73

2156

10781

10

-0.022

N =4

69.73

2154

10771

10

-0.022

N =5

70.53

2153

10765

10

-0.022

Table 3.11: Comparison of key values for optimized beams


As mentioned earlier theres a big dierence between the standard beam and the rst optimization with N = 1. The dierence between one summation and ve summations for the parameterization of the upper boundary shows an improvement of 6,7%. However, the improvement
from N = 2 to N = 5 is only 0,4% which shows it is a bit excessive to have multiple sine curves.
Figure 3.12 and Figure 3.13 support the von Mises stress surface plots seen on Figure 3.6,
3.8, and 3.10 and give a clearer image of how the stress is distributed along the upper boundary. The stress on the standard beam, Figure 3.12, shows a very high stress singularity at
x = 0 m and then a drop before slightly increasing again, the stress then decreases linearly
until it reaches x = 10 m with a magnitude of 2 3 MPa.

14

3 Optimizing the shape of a cantilever beam

Figure 3.12: von Mises stress along the upper boundary for the standard beam
Figure 3.13 shows the von Mises stress along the upper boundary too. The same stress singularity can be seen, but the peak stress is approximately 90% lower. Another thing worth
noticing is that stress along the boundary is almost constant, if excluding the ends. The stress
varies from 45 50 MPa, which is a great improvement compared to before where it varied
from 10 100 MPa.

Figure 3.13: von Mises stress along the upper boundary for an optimized beam with ve
summation and p1 = 0.47, p2 = 0.84, q1 = 0.27, q2 = 0.61, q3 = 0.36,
q4 = 0.17, and q5 = 0.13
In appendix A the stresses along the upper boundary can be found for the standard beam and
the beams with N = 1..5 in higher resolution. The higher the order, the more constant the
stress variation becomes, which makes sense seeing it has more degrees of freedom to change.
The results found for this model also make sense according to Pedersens work regarding
beams analytic optimal designs [13]. For a beam similar to the one examined in this project,
Pedersen was able to reduce the compliance to 65%, see Figure 3.14.

3.2 Results and discussion

15

Figure 3.14: Left: optimal design with obtained compliance. Right: the corresponding cantilever elementary load cases. Illustration and text borrowed from [13]
The compliance of the COMSOL model was also 65%. However, there are a few dierences
between Pedersens analytical work and this model. Pedersen uses a point load at the end,
whereas in this model a boundary load has been used. Pedersen also parameterizes both the
upper and lower boundary; this model only focuses on the upper.

16

3.3

3 Optimizing the shape of a cantilever beam

Modeling instructions

The following will describe how to create the model. From the File menu, choose New
NEW
1 In the New window, click the Model Wizard button

MODEL WIZARD
1 In the Model Wizard window, click the 2D button
2 In the Select Physics tree, select Mathematics>Deformed Mesh>Deformed Geometry (dg).
3 Click the Add button
4 In the Select Physics window, select Structural Mechanics>Solid Mechanics (solid).
5 Click the Add button
6 In the Select Physics tree, select Mathematics>Optimization and Sensitivity>Optimization
(opt).
7 Click the Add button.
8 Click the Study button
9 In the tree, select Preset Studies for Selected Physics>Stationary
10 Click the Done button

GLOBAL DEFINITIONS

Parameters
1 On the Home toolbar, click Parameters
2 In the Parameters settings windows, locate the Parameters section
3 Click Load from le
4 Browse to nd the le called beam_shape_optimization_parameters.txt and double-click
it to load the parameters

GEOMETRY 1

Rectangle 1

3.3 Modeling instructions

1 In the Model Builder window, right-click Geometry 1 and choose Rectangle


2 In the Rectangle settings window, locate the Size section
3 In the Width edit eld, type a
4 In the Height edit eld, type b
5 Click the Build All Objects button

MATERIALS

Add material
1 Go to the Add Material window
2 In the tree, select Built-In>Structural Steel
3 In the Add material window, click Add to Component and choose Component 1

SOLID MECHANICS (SOLID)

Fixed Constraint 1
1 On the Physics toolbar, click Boundaries and choose Fixed Constraint
2 Select Boundary 1 only.

Boundary Load 1
1 On the Physics toolbar, click Boundaries and choose Boundary Load
2 Select Boundary 4 only.
3 In the Boundary Selection window, locate the Force section
4 Under Load type, change it to Total force
5 Let the x component remain 0, but change the y component to -F_T

DEFORMED GEOMETRY (DG)

Free Deformation 1
1 On the Physics toolbar, click Domains and choose Free Deformation

17

18

3 Optimizing the shape of a cantilever beam

2 Select Domain 1.

Prescribed Mesh Displacement 2


1 On the Physics toolbar, click Boundaries and choose Prescribed Mesh Displacement
2 Select Boundary 1 only.
3 In the Prescribed Mesh Displacement settings window, locate the Prescribed Mesh
Displacement section
4 In the dY eld type q1*s

Prescribed Mesh Displacement 3


1 On the Physics toolbar, click Boundaries and choose Prescribed Mesh Displacement
2 Select Boundary 3 only.
3 In the Prescribed Mesh Displacement settings window, locate the Prescribed Mesh
Displacement section
4 In the dY eld type q1*(1-s)+q3*s+q2*sin(pi*s)

Prescribed Mesh Displacement 4


1 On the Physics toolbar, click Boundaries and choose Prescribed Mesh Displacement
2 Select Boundary 4 only.
3 In the Prescribed Mesh Displacement settings window, locate the Prescribed Mesh
Displacement section
4 In the dY eld type q3*(1-s)

MESH 1

Free Quad 1
1 In the Model Builder window, under Component 1 (comp1) right-click Mesh 1 and
choose Free Quad
2 In the Free Quad settings window, locate the Domain Selection section
3 From the Geometric entity level list, choose Domain

3.3 Modeling instructions

19

4 Select Domain 1

Size
1 In the Model Builder window, under Component 1 (comp1)>Mesh 1 click Size
2 In the Size settings window, locate the Element size section
3 Under Predened, select Extra ne from the list
4 Click the Build All button

STUDY 1
Before starting the actual optimization it can be a good idea to check the model by solving for
the default parameters. In this way you have a good reference point when doing the optimization later.

Solver 1
1 On the Study toolbar, click Show Default Solver
2 In the Model Builder window, expand the Study 1>Solver Congurations node
3 In the Model Builder window, expand the Solver 1 node, then click Stationary Solver
1
4 In the Stationary Solver settings window, locate the General section
5 From the Linearity list, choose Nonlinear
6 On the Home toolbar, click Compute

RESULTS

von Mises Stress


The default plot in the main window shows the von Mises stress surface distribution in the
beam. Note that stress reaches its maximum near the xed constraint and is practically zero
where we apply the force. This is as expected.
Right now the deformation is being displayed as well for the stress plot, to disable this do the
following
1 In the Model Builder window, locate Results>Stress (solid)
2 Right-click Stress (solid) and click Rename, rename it to von Mises stress, solution
1

20

3 Optimizing the shape of a cantilever beam

3 Expand the von Mises stress, solution 1 node, then the Surface 1 node
4 Right-click Deformation 1 and click delete. The plot should automatically be replotted
without showing the deformation

Displacement
1 On the Results toolbar, click 2D Plot Group
2 Right-click the new 2D Plot Group and click Rename. Change the name to Y-displacement,
solution 1
3 Right-click the plot group and click Surface
4 The Surface window will open, locate the Expression section. The standard expression is
solid.disp, change this to v either by editing the eld or by cliking the button Replace
expression and then navigating to Solid Mechanics>Displacement>Displacement
Field (material)>Displacement Field, Y component (v)
5 To show the actual deformation (although scaled), right-click Y-displacement, solution
1>Surface 1 and click Deformation. The Deformation window will show the scaling
factor under the section Scale

ADD STUDY
1 To add a new study for the optimization, go to the Home toolbar and click Add Study
2 Go to the Add Study window
3 Find the Studies subsection. In the tree, select Preset Studies>Frequency Domain
4 In the Add study window, click Add study
5 On the Home toolbar, click Add Study to close the Add Study window

STUDY 2

Optimization area constraint


1 On the Physics toolbar, click Optimization
2 Locate the Domains button, and click Integral Inequality Constraint
3 In the Integral Inequality Constraint window, select Domain 1
4 Locate the Constraint section and under Constraint expression type 1

3.3 Modeling instructions

21

5 Locate the Bounds section, dont change the Lower Bound, but edit the Upper Bound,
type a*b
6 The Integral Inequality Constraint will automatically be added to the optimization in
Study 2

Optimization
1 On the Study toolbar, click Optimization. This will add the Optimization module to
Study 2
2 In the Optimization settings window, locate the Optimization Solver section
3 From the Method list, choose SNOPT
4 In the Optimality tolerance edit eld, type 1e-4
5 In the Maximum number of objective evaluations edit eld, type 200
6 Locate the Objective Function section. In the table, enter following settings:
Expression

Description

comp1.solid.Ws_tot

Total elastic strain energy

7 Locate the Control Variables and Parameters section. Click Load from File
8 Browse to nd the le called beam_shape_optimization_control_parameters.txt
9 Locate Output While Solving section and make sure that Plot is checked

Solver 2
1 On the Study toolbar, click Show Default Solver
2 In the Model Builder window, expand the Study 2>Solver Congurations>Solver
2>Optimization Solver 1 node, then click Stationary 1
3 In the Stationary settings window, locate the General section
4 In the Relative tolerance edit eld, type 1e-6
5 From the Linearity list, choose Automatic
6 Right-click Study 2 and press the Compute button

22

3 Optimizing the shape of a cantilever beam

RESULTS

Plots
The plots from solution 1 can be duplicated relatively easy thus avoiding the same procedure
all over again.
1 In the Model Builder window under Results, locate the von Mises stress, solution 1
2 Right-click it and choose Duplicate
3 Right-click the new plot group and rename it to von Mises stress, solution 2
4 In the 2D Plot Group window, locate the Data section
5 In the drop down menu change it from Solution 1 to Solution 2
6 Click Plot
7 Follow the same procedure for the Y-displacement

Probes
It is possible to see the parameter values for each iteration by using probes. In addition its
also possible to show the values of stresses, displacement and the total elastic strain energy.
1 In the Model Builder window under Component 1, locate the Denitions menu
2 Right-click it and choose Probes>Domain Probe
3 The Domain Probe window will open, locate the Expression section. The expression will
by default be set to solid.disp, change this to solid.mises, which is the von Mises stress
4 Right-click Domain Probe 1 and click Rename
5 Rename the probe to von Mises
6 Repeat step 1-5 for the following parameters: strain energy, total strain energy, displacement
(Displacement eld, Y component (v)), q1, q2 and q3.

Area Probe
1 In order to create an Area Probe, rst right-click Denitions, choose Component Couplings>Integration
2 The Integration window will open, select Domain 1
3 Now create a new Domain Probe using the steps from above. Rename it Area
4 In the Expression eld type intop1(1)

CHAPTER

4
Optimization of a plate with a hole

This model will investigate how to apply boundary shape optimization to a simple bracket. The
model will focus on shape optimization when more than one boundary has to be parameterized
in both the x and the y direction.

4.1 Model denition


The quadratic plate with a hole in the middle and biaxially loaded is a typical problem within
shape optimization. The model can be seen in Figure 4.1(a), it has dimensions S S d =
10 m 10 m 0.1 m and radius, r = 4 m. The plate is made in structural steel meaning it has
a total weight of 68633 kg. The boundaries are loaded with 1 in the x direction and 2 in the
y direction in such a way that they both experience tensile stress.
In this model a survey of how the relation between the stresses 1 and 2 will inuence the
shape optimization parameters will be conducted. First for 2 /1 = 1, then for 2 /1 = 2
and at last for 2 /1 = 3. It is expected for the rst case, 1 = 2 , that the shape is already
optimal.
In geometric modeling it is only necessary to model a quarter of the model because of symmetry,
see Figure 4.1(b). The boundaries, where the cut is made, is replaced with rollers to represent
the missing sides. Figure 4.1(b) also shows which sides are to be parameterized.The left side,
s1 (y) and s3 (x) are only to parameterized in one direction, respectively the y and x direction,
whereas s2 (x, y) is to be parameterized in both directions. The parameterization will change
the shape of the hole by changing the curve of the hole and by changing the coordinates of the
endpoints of the curve.
The parameterizations describing s1 and s3 are very similar to the parameterizations of the
beam in Chapter 3:
s1,y (s) = p1 (1 s)
s3,x (s) = p3 s

(4.1)

Where p1 and p3 are both optimization parameters and s [0, 1]. The boundary, s2 , is a bit
more dicult to parameterize. At rst a parameterization similar to the one from Chapter 3
was used, but with the addition of a parameterization in the x direction:
s2,x (s) = p3 (1 s)
s2,y (s) = s1,y (0)s + p2 sin(s)

(4.2)

This solution, however, proved unsuccessful due to slope at the end points which created
unfeasible results. This can be seen in Figure 4.2, the stress concentration for this result
was evenly distributed but the transition between the joints was not smooth. Therefore the
resulting hole looked the number 8, which is not desirable and created high stress peaks at the
joints.

24

4 Optimization of a plate with a hole

Symmetry

s1(y)
r

Symmetry

S/2

1
s2(x,y)

s3(x)

S/2

S
(a) Mechanical analysis setup with dimensions
S = 10 m, r = 4 m, and d = 0.1 m

(b) Shape optimization setup. Due to symmetry


only 1/4 of the plate needs to be analysed

Figure 4.1: Plate with a hole

Figure 4.2: v. Mises stress showing the parameterization of the plate with equation (4.2) and
2 /1
In order to get a nice transition between the joints, the curve needs to have zero slope at both
endpoints. The equation for the dY displacement will be found rst. The slope at the ends
must be zero, meaning that the derivative of the parameterization must be zero at s = 0 and
s = 1. At the right end point the parameterization should be zero when s = 0, and at the left

4.1 Model definition

25

end point equal to p1 when s = 1. These demands can be expressed mathematically in the
following way:
s2,y (0) = 0
s2,y (1) = p1

(4.3)

s2,y (0) = 0
s2,y (1) = 0

In order to get zero slope at the end points a cosine curve forms the basis of the parameterization. In order to get the curve to begin and end in the same y-coordinate only equal integers
enter in the rst cosine term, furthermore the whole term is subtracted from 1 to shift the
whole function above y = 0. This equals the following expression where p2 /2 controls the
height of the curve:
p2
(1 cos(nks))
2
In the above expression k = 2, n Z, and p2 is an optimization parameter.
The left end point of s2,y needs to match its y-coordinate with the s1,y (s) expression from
equation (4.1). This can be done by adding the expression p21 (1 cos(s)). When combining
the terms the following equation is generated:
p2
p1
s2,y (s) = (1 cos(nks)) + (1 cos(s))
(4.4)
2
2
Where k = 2, n Z, and p1 and p2 are both optimization parameters.
The boundary, s2,x was at rst parameterized with the expression p3 (1 s), although this
expression did not yield zero slope due to the fact that the parameterization in COMSOL is
a parameterization of the boundary arc length and not the original x-coordinate. Therefore it
was necessary to make a transformation to a trigonometric expression. The problem is outlined
in Figure 4.3.

s=1, = /2
s

y()

r
s=0, =0

x()

Figure 4.3: Illustration of the transformation of the x-coordinates radial to the boundary
The boundary curve can be described in terms of s with equation (4.5) and the x-coordinate
can be described in terms of with equation (4.6). By combining these two equations the

26

4 Optimization of a plate with a hole

transformation for describing the x-coordinate in terms of s is complete:


s
2
x() = r cos ()
( s )
x(s) = r cos
2
(s) =

By combining the above with the parameterization of s2,x (s) it becomes:


( s )
s2,x (s) = p3 cos
2

(4.5)
(4.6)
(4.7)

(4.8)

So to repeat, the whole parameterization of the model is:


s1,y (s) = p1 (1 s)
( s )
s2,x (s) = p3 cos
2
p2
p1
s2,y (s) = (1 cos(nks)) + (1 cos(s))
2
2
s3,x (s) = p3 s

(4.9)

Figure 4.4 shows the comparison between the original mesh and the mesh after the parameterization. The gure also illustrates that there are now zero slope at the end points of the
curve.

(a) The mesh of the orignal plate with parameters p1 =


0, p2 = 0, and p3 = 0

(b) The mesh after the parameterization, here with


parameters p1 = 1, p2 = 0.5, and p3 = 3

Figure 4.4:
The objective function for this model will also be the total elastic strain energy seeing as the
stiest design is equal to the design with lowest stress concentration[14].

4.2 Results and discussion

27

4.2 Results and discussion


In this section the results of the optimization will be presented and discussed. Three dierent
cases will be looked into; 2 /1 = 1, 2 /1 = 2, and 2 /1 = 3. The objective of the shape
optimization is to even out the stresses and reduce the peak stress without increasing the area.
Throughout the analysis an integral inequality constraint will be used to make sure the area
doesnt exceed the original area domain.

First case: 2 /1 = 1
In the rst case the plate is loaded with stress of the same magnitude on the right and upper
boundary in the x and y direction, respectively. When the tension rate is equal to 1, the
optimal shape is expected to be a circular hole to have evenly distributed stresses. Reference
values for the non-optimized solution can be found in Table 4.5, and the stress distribution
can be seen on Figure 4.6.
vM,max [MPa]

U [J/m3 ]

Utot [J]

Area [m2 ]

2.12

4.08

35.69

87.43

Table 4.5: Reference values for the plate with 1 = 2 = 1000 kN

Figure 4.6: Standard plate with 2 /1 = 1


As seen on Figure 4.6 the stress is already evenly distributed. The optimization solver should
return the optimization parameters p1 = p2 = p3 = 0, this is however not the case. The
parameters are slightly optimized but still practically zero. The reason for this is due to
numerical approximation and is explained in the third case.

28

4 Optimization of a plate with a hole

Second case: 2 /1 = 2
The results for the non-optimized plate can be seen on Table 4.7 and Figure 4.8. The right
boundary is loaded with 1000 kN and the upper boundary with 2000 kN.
vM,max [MPa]

U [J/m3 ]

Utot [J]

Area [m2 ]

6.20

12.32

107.70

87.43

Table 4.7: Reference values for the plate with 1 = 1000 kN and 2 = 2000 kN

Figure 4.8: Standard plate with 2 /1 = 2


It is quite clear from Figure 4.8 that the shape of the hole is not optimal when the tensile ratio
is 2. The shape optimization is performed resulting in Table 4.9 and Figure 4.10. Complete
tables, log les and higher-resolution plots can be found in Appendix B.2.
vM,max [MPa]

U [J/m3 ]

Utot [J]

Area [m2 ]

3.27

11.10

97.05

87.43

Table 4.9: Optimized values for the plate with 1 = 1000 kN and 2 = 2000 kN with optimization parameters p1 = 3.01, p2 = 0.40, and p3 = 2.09

4.2 Results and discussion

29

(a) The circular hole has become an ellipse and the von (b) The von Mises stress as a function of the arc length
Mises stress is now evenly distributed along the bound- for s2 . The blue curve is the original design and the
green is the optimized shape
ary

Figure 4.10: Optimized plate with optimization parameters p1 = 3.01, p2 = 0.40, and p3 =
2.09
By comparing the peak stresses of the original model and the optimized one it can be seen that
the peak stress has been reduced by 89.6% without increasing the area. From Figure 4.10(a) it
can be seen that the stress concentration in the top of the hole has been distributed along the
boundary of the hole. Figure 4.10(b) shows how the stress has changed from being a linear
function to being almost constant.
Take note of the form of the hole, it has changed from being circular to being an ellipse. In
Pedersens analytical results [13] of holes subjected to biaxial stress he nds out that the
relationship between the tensile stresses is equal to the relationship between the vertices of the
ellipse.

Third case: 2 /1 = 3
Table 4.11 and Figure 4.12 shows the non-optimized results when the tensile ratio is 3. The
upper boundary is loaded with 3000 kN and the right boundary with 1000 kN. The stress plot
is very similar to Figure 4.8 but due to the higher load the stress concentration has become
even higher.
vM,max [MPa]

U [J/m3 ]

Utot [J]

Area [m2 ]

10.41

28.86

252.34

87.43

Table 4.11: Reference values for the plate with 1 = 1000 kN and 2 = 3000 kN

30

4 Optimization of a plate with a hole

Figure 4.12: Standard plate with 2 /1 = 3


Table 4.13 and Figure 4.14 show the optimized results. According to [13] the ratio of the vertices
for the elliptic should be equal to the ratio of the tensile stresses. This is not the case though. By
looking at Figure 4.14(a) the vertex ratio does not seem to match with 3. When investigating
further it turns out that the vertex ratio is a/b = 6.56 m/2.49 m = 2.63. The reason for this is
because the analytical solution from [13] is based on a hole in an innite plane domain which
is subjected to stress far away from the hole. This is supported by numerical results, if the
sides of the plate is changed from 10 m to 100 m, thus making the domain closer to innite
and moving the loads farther way, the vertex ratio increases to a/b = 6.94 m/2.34 m = 2.97.
By making the domain larger and larger, the more close the numerical method gets to the
analytical method. This explanation follows for approximation error for all three cases.
vM,max [MPa]

U [J/m3 ]

Utot [J]

Area [m2 ]

4.48

24.01

209.94

87.43

Table 4.13: Optimized values for the plate with 1 = 1000 kN and 2 = 3000 kN with optimization parameters p1 = 5.12, p2 = 0.75, and p3 = 3.02

4.2 Results and discussion

31

(a) The circular hole has become an ellipse and the von (b) The von Mises stress as a function of the arc length
Mises stress is now evenly distributed along the bound- for s2 . The blue curve is the original design and the
green is the optimized shape
ary

Figure 4.14: Optimized plate with optimization parameters p1 = 5.12, p2 = 0.75, and p3 =
3.02
In this case the maximum equivalent stress has been reduced from 10.41 MPa to 4.48 MPa, a
reduction of 132%. As in case 2, not only have the peak stresses been lowered, but the stress
is evenly distributed along the arc boundary. This is also clearly show in Figure 4.14(b) which
shows little variation in the stress; it only spans from 4.12 MPa to 4.48 MPa.

32

4 Optimization of a plate with a hole

Other cases
In order to save material and therein cost it is possible to use a lower upper limit for the area
constraint by multiplying with a constant. E.g. how does the plate look if the material cost is
to be cut down by 20%? In Figure 4.15 the results of this reduction can be seen. The model
has become 13727 kg lighter and the maximum equivalent stress has still been reduced from
6.20 MPa to 5.61 MPa (10.5%). The result, however, is not optimal. The stress is evenly
distributed, but a large stress concentration at the top left corner is not desirable. The whole
design domain should be larger in order to distribute the stresses better in the domain.

(a) Stress is still evenly distributed along the boundary,


but the design is not optimal. The design domain should
be larger

(b) The von Mises stress as a function of the arc length


for s2 . The blue curve is the original design and the
green is the optimized shape

Figure 4.15: Optimized plate with a 20% reduction in material and optimization parameters
p1 = 8.58, p2 = 0.80, and p3 = 1.67
This model shows that COMSOL Multiphysics 4.4 currently has some scaling problems. This
model was originally supposed to be 25 mm25 mm with a hole with a radius of 10 mm, but due
to these scaling problems when COMSOL tried to optimize the shape of the plate it stopped
after one iteration. This problem occurred even though the model was setup with various
scaling factors in the parameterizations to take this into account. The COMSOL support has
been contacted and normally theyre rather quick at responding (usually less than 24 hours),
but they have been working on this problem for more than a week.

4.3 Modeling instructions

33

4.3 Modeling instructions


The following will describe how to create the model. From the File menu, choose New
NEW
1 In the New window, click the Model Wizard button

MODEL WIZARD
1 In the Model Wizard window, click the 2D button
2 In the Select Physics tree, select Mathematics>Deformed Mesh>Deformed Geometry (dg).
3 Click the Add button
4 In the Select Physics window, select Structural Mechanics>Solid Mechanics (solid).
5 Click the Add button
6 In the Select Physics tree, select Mathematics>Optimization and Sensitivity>Optimization
(opt).
7 Click the Add button.
8 Click the Study button
9 In the tree, select Preset Studies for Selected Physics>Stationary
10 Click the Done button

GLOBAL DEFINITIONS

Parameters
1 On the Home toolbar, click Parameters
2 In the Parameters settings windows, locate the Parameters section
3 Click Load from le
4 Browse to nd the le called bracket_shape_optimization_parameters.txt and doubleclick it to load the parameters

GEOMETRY 1

Square 1

34

4 Optimization of a plate with a hole

1 In the Model Builder window, right-click Geometry 1 and choose Square


2 In the Square settings window, locate the Size section
3 In the Side length edit eld, type s
4 Click the Build All Objects button

Circle 1
1 In the Model Builder window, right-click Geometry 1 and choose Circle
2 In the Circle settings window, locate the Size and Shape section
3 In the Radius edit eld, type r
4 Click the Build All Objects button

Dierence 1
1 In the Model Builder window, right-click Geometry 1 and choose Boolean Operations>Dierence
2 In the Dierence settings window, locate the Objects to add section
3 Activate the Object to add window by clicking Activate, and then click on the square
(Square 1)
4 In the Dierence settings window, locate the Objects to subtract section
5 Activate the Object to subtract window by clicking Activate, and then click on the circle
(Square 1)
6 Click the Build All Objects button

MATERIALS

Add material
1 Go to the Add Material window
2 In the tree, select Built-In>Structural Steel
3 In the Add material window, click Add to Component and choose Component 1

4.3 Modeling instructions

35

SOLID MECHANICS (SOLID)

Roller 1
1 On the Physics toolbar, click Boundaries and choose Roller
2 Select Boundary 1 and 3 only.

Boundary Load 1
1 On the Physics toolbar, click Boundaries and choose Boundary Load
2 Select Boundary 2 only.
3 In the Boundary Selection window, locate the Force section
4 Under Load type, change it to Total force
5 Let the y component remain 0, but change the x component to P1

Boundary Load 2
1 On the Physics toolbar, click Boundaries and choose Boundary Load
2 Select Boundary 4 only.
3 In the Boundary Selection window, locate the Force section
4 Under Load type, change it to Total force
5 Let the x component remain 0, but change the y component to P2

DEFORMED GEOMETRY (DG)

Free Deformation 1
1 On the Physics toolbar, click Domains and choose Free Deformation
2 Select Domain 1.

Prescribed Mesh Displacement 2


1 On the Physics toolbar, click Boundaries and choose Prescribed Mesh Displacement

36

4 Optimization of a plate with a hole

2 Select Boundary 1 only.


3 In the Prescribed Mesh Displacement settings window, locate the Prescribed Mesh
Displacement section
4 In the dY eld type p1*(1-s)

Prescribed Mesh Displacement 3


1 On the Physics toolbar, click Boundaries and choose Prescribed Mesh Displacement
2 Select Boundary 5 only.
3 In the Prescribed Mesh Displacement settings window, locate the Prescribed Mesh
Displacement section
4 In the dX eld type p3*cos(pi*s/2)
5 In the dY eld type p2*(1-cos(k*s))/2+p1*(1-cos(pi*s))/2

Prescribed Mesh Displacement 4


1 On the Physics toolbar, click Boundaries and choose Prescribed Mesh Displacement
2 Select Boundary 3 only.
3 In the Prescribed Mesh Displacement settings window, locate the Prescribed Mesh
Displacement section
4 In the dX eld type p3*s

MESH 1

Free Quad 1
1 In the Model Builder window, under Component 1 (comp1) right-click Mesh 1 and
choose Free Quad
2 In the Free Quad settings window, locate the Domain Selection section
3 From the Geometric entity level list, choose Domain
4 Select Domain 1

Size

4.3 Modeling instructions

37

1 In the Model Builder window, under Component 1 (comp1)>Mesh 1 click Size


2 In the Size settings window, locate the Element size section
3 Under Predened, select Extra ne from the list
4 Click the Build All button

STUDY 1
Before starting the actual optimization it can be a good idea to check the model by solving for
the default parameters. In this way you have a good reference point when doing the optimization later.

Solver 1
1 On the Study toolbar, click Show Default Solver
2 In the Model Builder window, expand the Study 1>Solver Congurations node
3 In the Model Builder window, expand the Solver 1 node, then click Stationary Solver
1
4 In the Stationary Solver settings window, locate the General section
5 From the Linearity list, choose Nonlinear
6 On the Home toolbar, click Compute

RESULTS

von Mises Stress


The default plot in the main window shows the von Mises stress surface distribution in the
plate. Note that the stress is concentrated at the right end of arc boundary. This is as expected. The peak stress for the model is 6.22 MPa.
Right now the deformation is being displayed as well for the stress plot, to disable this do the
following
1 In the Model Builder window, locate Results>Stress (solid)
2 Right-click Stress (solid) and click Rename, rename it to von Mises stress, solution
1
3 Expand the von Mises stress, solution 1 node, then the Surface 1 node
4 Right-click Deformation 1 and click delete. The plot should automatically be replotted
without showing the deformation

38

4 Optimization of a plate with a hole

ADD STUDY
1 To add a new study for the optimization, go to the Home toolbar and click Add Study
2 Go to the Add Study window
3 Find the Studies subsection. In the tree, select Preset Studies>Frequency Domain
4 In the Add study window, click Add study
5 On the Home toolbar, click Add Study to close the Add Study window

STUDY 2

Optimization area constraint


1 On the Physics toolbar, click Optimization
2 Locate the Domains button, and click Integral Inequality Constraint
3 In the Integral Inequality Constraint window, select Domain 1
4 Locate the Constraint section and under Constraint expression type 1
5 Locate the Bounds section, dont change the Lower Bound, but edit the Upper Bound,
type side2-pi*r2/4
6 The Integral Inequality Constraint will automatically be added to the optimization in
Study 2

Optimization stress constraint


1 On the Physics toolbar, click Optimization
2 Locate the Domains button, and click Global Inequality Constraint
3 In the Global Inequality Constraint window, select Domain 1
4 Locate the Constraint section and under Constraint expression type 1
5 Locate the Bounds section, dont change the Lower Bound, but edit the Upper Bound,
type 3[MPa]
6 The Global Inequality Constraint will automatically be added to the optimization in
Study 2

4.3 Modeling instructions

39

Optimization
1 On the Study toolbar, click Optimization. This will add the Optimization module to
Study 2
2 In the Optimization settings window, locate the Optimization Solver section
3 From the Method list, choose SNOPT
4 In the Optimality tolerance edit eld, type
5 In the Maximum number of objective evaluations edit eld, type 200
6 Locate the Objective Function section. In the table, enter following settings:
Expression

Description

comp1.solid.Ws_tot

Total elastic strain energy

7 Locate the Control Variables and Parameters section. Click Load from File
8 Browse to nd the le called bracket_shape_optimization_control_parameters.txt
9 Locate Output While Solving section and make sure that Plot is checked

Solver 2
1 On the Study toolbar, click Show Default Solver
2 In the Model Builder window, expand the Study 2>Solver Congurations>Solver
2>Optimization Solver 1 node, then click Stationary 1
3 In the Stationary settings window, locate the General section
4 In the Relative tolerance edit eld, type 1e-6
5 From the Linearity list, choose Automatic
6 Right-click Study 2 and press the Compute button

RESULTS

Plots
The plots from solution 1 can be duplicated relatively easy thus avoiding the same procedure
all over again.
1 In the Model Builder window under Results, locate the von Mises stress, solution 1

40

4 Optimization of a plate with a hole

2 Right-click it and choose Duplicate


3 Right-click the new plot group and rename it to von Mises stress, solution 2
4 In the 2D Plot Group window, locate the Data section
5 In the drop down menu change it from Solution 1 to Solution 2
6 Click Plot

1D Plots
It can also be interesting to see the stress as a function of the boundary. This can be done in
the following
1 In the Model Builder window, right-click Results and locate 1D Plot Group, click it
2 The 1D Plot Group window will open, locate the Data section, under Data set choose
None
3 Right-click the 1D Plot Group under Results, click Line Graph to add a graph
4 The Line Graph window will open, under Data set choose Solution 1
5 Locate the Selection section, toggle the on/o switch and select Boundary 5
6 Locate the y-Axis Data section and replace the expression with solid.mises, also change
the Unit from N/m2 to MPa
7 In order to compare the value with Study 2, right-click Line Graph 1 and click Duplicate
8 In the new Line Graph window, change the Data set to Solution 2

Probes
It is possible to see the parameter values for each iteration by using probes. In addition its
also possible to show the values of stresses, displacement and the total elastic strain energy.
1 In the Model Builder window under Component 1, locate the Denitions menu
2 Right-click it and choose Probes>Domain Probe
3 The Domain Probe window will open, locate the Expression section. The expression will
by default be set to solid.disp, change this to solid.mises, which is the von Mises stress
4 Right-click Domain Probe 1 and click Rename
5 Rename the probe to von Mises
6 Repeat step 1-5 for the following parameters: strain energy, total strain energy, q1, q2 and
q3.

4.3 Modeling instructions

41

Area Probe
1 In order to create an Area Probe, rst right-click Denitions, choose Component Couplings>Integration
2 The Integration window will open, select Domain 1
3 Now create a new Domain Probe using the steps from above. Rename it Area
4 In the Expression eld type intop1(1)
5 To see the probes in eect, compute Study 2 again

42

CHAPTER

5
Optimizing the shape of a fillet

This model will look into how COMSOL can be used for 3D shape optimization. The focus of
the optimization will be of a llet on a bar in tension. The model will show how to model a
axisymmetric geometry and will look into some of the problems that may arise when performing
shape optimization in COMSOL.

5.1 Model denition


This model investigates the optimization of a llet in the transition region of a bar in tension.
The bar is modeled in structural steel, has a volume of 39573 m3 and thereby a total weight of
310,648 tonne. The model can be seen on Figure 5.1 with dimensions.

10

17.5

s2
s3

12.5

Axis of rotation

27.5

s1

Figure 5.1: The bar with dimensions


The gure is rotational symmetric around the left boundary. When modeling in 2D axisymmetry in COMSOL the axis of rotation is automatically replaced with roller boundary conditions.
The upper boundary is loaded with a uniaxial tension, , with a magnitude of = 1000 MN.

44

5 Optimizing the shape of a fillet

The goal of the optimization is to get a better stress distribution along the llet boundary
while still maintaining the volume.
Because of the rotational symmetry it is only necessary to model half of the model in 2D. The
parameterization of this problem is very similar to the ones seen in Chapter 3 and 4 and will
not be explained further:
s1 (s) = p1 s
s2,R (s) = p2 s
s2,Z (s) = p1 (1 s) + q1 sin(s)

(5.1)

s3 (s) = p2 (1 s)
In the above parameterization p1 , p2 , and q1 are all optimization parameters. The parameterization for s2,Z is the rst term of equation (3.1) and can be expanded with more terms as in
Chapter 3.
Due to the current scaling problems in COMSOL, this model is also heavily enlarged. I am
well aware of the size is unrealistic, but the basis of the optimization is still valid.

5.2

Results and discussion

On Figure 5.2 the standard bar can be seen both in 2D and 3D. It is clear that there is a stress
concentration due to a singularity. If the mesh is too ne when theres a singularity in the
model, the von Mises stress will not reect a proper image of the stress distribution. In order
to get a better result of the stress distribution a llet with radius 1 m has been added.

(a) von Mises surface stress in 2D

(b) von Mises surface stress in 3D

Figure 5.2: The non-optimized llet


Table 5.3 shows the key for the non-optimized model. These values will set the reference points
for the benchmark:

5.2 Results and discussion

45

vM,max [MPa]

U [J/m3 ]

Utot [kJ]

Area [m2 ]

6.73

10.35

192.61

525

Table 5.3: Values for the standard bar, reference points for the optimization
Figure 5.4 shows an optimized llet with optimization parameters p1 = 26.00, p2 = 7.60, and
q1 = 11.24. From the von Mises stress plot it is clear that high stress concentration has been
attened out with the sine curve. Figure 5.4 is parameterized with a single sine curve (N = 1).

(a) von Mises surface stress in 2D

(b) von Mises surface stress in 3D

Figure 5.4: Optimized llet with N = 1, and optimization parameters p1 = 26.00, p2 =


7.60, and q1 = 11.24
The stress is now nicely distributed in the upper part of the bar. By comparing Table 5.5 to
Table 5.3, it can be seen that the peak stress has been lowered from 6.73 MPa to 4.44 MPa.
That is a reduction of 52%.
vM,max [MPa]

U [J/m3 ]

Utot [kJ]

Area [m2 ]

4.44

9.85

186.57

525

Table 5.5: Values for the optimized llet with N = 1, and optimization parameters p1 = 26.00,
p2 = 7.60, and q1 = 11.24
Figure 5.6 shows the stress along the boundary for s2 . It can be seen that the stress has become
more constant. Due to the form of the parameterization for s2 the boundary becomes longer
when optimizing the shape, while s1 becomes shorter.

46

5 Optimizing the shape of a fillet

Figure 5.6: The von Mises stress as a function of the arc length for s2 . The blue curve
is the original design and the green is the optimized design with optimization
parameters p1 = 26.00, p2 = 7.60, and q1 = 11.24
When the parameterizations change the boundaries by such a big amount, e.g. making them
twice as long as, the mesh is more likely to get inverted, because the mesh elements are
stretched too much. To take this into account a mesh renement study is added to the model.
In COMSOL a mesh renement can only be added if the mesh is made of triangular mesh
elements, so the mesh is changed from mapped quads to free triangular mesh elements. The
mesh renement allows for bigger mesh displacements in the optimization and thus gives a
better solution.
Too see if the llet can be optimized further with the sine parameterization more terms are
added. The optimization is run for N = [1, 5], where N Z. In order to avoid the optimization going into the undened region of the domain, it is very important to choose the right
boundaries for the optimization parameters as well as scaling the displacement. This cannot
be stressed enough seeing as it is as important as having a high quality mesh. Choosing the
right parameters can be a very time consuming task and the only way is by trial-and-error. If
the boundaries or scaling factors are not well chosen, inverted mesh elements are certain to develop. The parameterization for this model has shown very troublesome regarding this subject,
because the joining of the parameterizations apparently is not optimal, so the parameters are
very sensitive.
Table 5.7 shows the results of all ve optimization studies.

5.2 Results and discussion

47

vM,max [MPa]

U [J/m3 ]

Utot [kJ]

Area [m2 ]

Std.

6.73

10.35

192.61

525

N =1

4.44

9.85

186.57

525

N =2

4.14

9.84

186.49

525

N =3

4.02

9.84

186.44

525

N =4

3.91

9.84

186.43

525

N =5

3.86

9.84

186.42

525

Table 5.7: Comparison of key values for optimized llets


The table shows that with each terms added the von Mises maximum stress is reduced as well as
the strain energy. The reduction of the stress from the standard llet to the parameterization
with ve terms is 74% while the reduction from four terms to ve terms is only 1.3%. Figure
5.8 shows the von Mises stress for the best optimization, N 05. The distribution shows a slight
improvement compared to Figure 5.4.

48

5 Optimizing the shape of a fillet

(a) von Mises surface stress in 2D

(b) von Mises surface stress in 3D

(c) The von Mises stress as a function of the arc length


for s2 . The blue curve is the original design and the
green is the optimized design

Figure 5.8: Optimized llet with N = 5, and optimization parameters p1 = 40.00, p2 =


7.60, q1 = 21.33, q2 = 5.27, q3 = 2.46, q4 = 1.03, and q5 = 0.39
In [2] an analysis of a similar bar has been made with the use of the parameter-free approach.
Le et al. obtained identical results regarding the stress image, see Figure 5.9. Riehl also
obtained similar results with the parameter-free approach [14]. The dierent between the
model analyzed in this paper and Riehls and Les models is that they have a larger degree of
freedom plus they are maximizing the von Mises stress while reducing the volume as well.

5.2 Results and discussion

49

Figure 5.9: The obtained optimized result from [2]


Therefore they get a curve in lower region of the model. In order to get the same curved results
for boundary s3 for this model, the boundaries have to be reparameterized plus the volume
constraint should be stricter. This will not be looked into in this thesis. In Appendix C all of
the plots, tabels and logs of the optimization can be found.

50

5.3

5 Optimizing the shape of a fillet

Modeling instructions

The following will describe how to create the model. From the File menu, choose New
NEW
1 In the New window, click the Model Wizard button

MODEL WIZARD
1 In the Model Wizard window, click the 2D button
2 In the Select Physics tree, select Mathematics>Deformed Mesh>Deformed Geometry (dg).
3 Click the Add button
4 In the Select Physics window, select Structural Mechanics>Solid Mechanics (solid).
5 Click the Add button
6 In the Select Physics tree, select Mathematics>Optimization and Sensitivity>Optimization
(opt).
7 Click the Add button.
8 Click the Study button
9 In the tree, select Preset Studies for Selected Physics>Stationary
10 Click the Done button

GLOBAL DEFINITIONS

Parameters
1 On the Home toolbar, click Parameters
2 In the Parameters settings windows, locate the Parameters section
3 Click Load from le
4 Browse to nd the le called fillet_shape_optimization_parameters.txt and doubleclick it to load the parameters

GEOMETRY 1

Rectangle 1

5.3 Modeling instructions

51

1 In the Model Builder window, right-click Geometry 1 and choose Rectangle


2 In the Rectangle settings window, locate the Size section
3 In the Width edit eld, type d
4 In the Height edit eld, type c
5 Locate the Position section
6 In the r eld, type b-d
7 In the z eld, type a-c
8 Click the Build All Objects button

Bzier Polygon 1
1 In the Model Builder window, right-click Geometry 1 and choose Bzier Polygon
2 In the Bzier Polygon settings window, locate the Polygon Segments section
3 Find the Added segments subsection. Click the Add Linear button
4 Find the Control points subsection. In row 1, set r to b-d and z to a-c
5 In row 2, set r to b-d+radius and z to a-c
6 Find the Added segments subsection. Click the Add Linear button
7 Find the Control points subsection. In row 1, set r to b-d+radius and z to a-c
8 In row 2, set r to b-d and z to a-c+radius
9 Find the Added segments subsection. Click the Add Linear button
10 Find the Control points subsection. In row 1, set r to b-d and z to a-c+radius
11 In row 2, set r to b-d and z to a-c
12 Click the Build All Obecjts button
13 Click the Zoom Extents button on the Graphics toolbar

Dierence 1
1 In the Model Builder window, right-click Geometry 1 and choose Boolean Operations>Dierence
2 In the Dierence settings window, locate the Objects to add section

52

5 Optimizing the shape of a fillet

3 Activate the Object to add window by clicking Activate, and then click on the rectangle
(Rectangle 1)
4 In the Dierence settings window, locate the Objects to subtract section
5 Activate the Object to subtract window by clicking Activate, and then click on the
Bzier polygon (Bzier Polygon 1)
6 Click the Build All Objects button

Rectangle 2
1 In the Model Builder window, right-click Geometry 1 and choose Rectangle
2 In the Rectangle settings window, locate the Size section
3 In the Width edit eld, type b
4 In the Height edit eld, type a
5 Click the Build All Objects button

Dierence 2
1 In the Model Builder window, right-click Geometry 1 and choose Boolean Operations>Dierence
2 In the Dierence settings window, locate the Objects to add section
3 Activate the Object to add window by clicking Activate, and then click on the new
rectangle (Rectangle 2)
4 In the Dierence settings window, locate the Objects to subtract section
5 Activate the Object to subtract window by clicking Activate, and then click on the
Dierence domain created before (Dierence 1)
6 Click the Build All Objects button

MATERIALS

Add material
1 Go to the Add Material window
2 In the tree, select Built-In>Structural Steel
3 In the Add material window, click Add to Component and choose Component 1

5.3 Modeling instructions

53

SOLID MECHANICS (SOLID)

Roller 1
1 On the Physics toolbar, click Boundaries and choose Roller
2 Select Boundary 2 only

Fixed Constraint 1
1 On the Physics toolbar, click Points and choose Fixed Constraint
2 Select Point 1 only (the point in the lower left corner)

Boundary Load 1
1 On the Physics toolbar, click Boundaries and choose Boundary Load
2 Select Boundary 3 only.
3 In the Boundary Selection window, locate the Force section
4 Under Load type, change it to Total force
5 Let the r component remain 0, but change the z component to P

DEFORMED GEOMETRY (DG)

Free Deformation 1
1 On the Physics toolbar, click Domains and choose Free Deformation
2 Select Domain 1.

Prescribed Mesh Displacement 2


1 On the Physics toolbar, click Boundaries and choose Prescribed Mesh Displacement
2 Select Boundary 4 only.
3 In the Prescribed Mesh Displacement settings window, locate the Prescribed Mesh
Displacement section

54

5 Optimizing the shape of a fillet

4 In the dZ eld type k*p1*s

Prescribed Mesh Displacement 3


1 On the Physics toolbar, click Boundaries and choose Prescribed Mesh Displacement
2 Select Boundary 5 only.
3 In the Prescribed Mesh Displacement settings window, locate the Prescribed Mesh
Displacement section
4 In the dR eld type k*p2*s
5 In the dZ eld type k*(p1*(1-s)+q1*sin(pi*s))

Prescribed Mesh Displacement 4


1 On the Physics toolbar, click Boundaries and choose Prescribed Mesh Displacement
2 Select Boundary 6 only.
3 In the Prescribed Mesh Displacement settings window, locate the Prescribed Mesh
Displacement section
4 In the dR eld type k*p2*(1-s)

MESH 1

Free Quad 1
1 In the Model Builder window, under Component 1 (comp1) right-click Mesh 1 and
choose Free Quad
2 In the Free Quad settings window, locate the Domain Selection section
3 From the Geometric entity level list, choose Domain
4 Select Domain 1

Size
1 In the Model Builder window, under Component 1 (comp1)>Mesh 1 click Size
2 In the Size settings window, locate the Element size section
3 Under Predened, select Extra ne from the list

5.3 Modeling instructions

55

4 Click the Build All button

STUDY 1
Before starting the actual optimization it can be a good idea to check the model by solving for
the default parameters. In this way you have a good reference point when doing the optimization later.

Solver 1
1 On the Study toolbar, click Show Default Solver
2 In the Model Builder window, expand the Study 1>Solver Congurations node
3 In the Model Builder window, expand the Solver 1 node, then click Stationary Solver
1
4 In the Stationary Solver settings window, locate the General section
5 From the Linearity list, choose Nonlinear
6 On the Home toolbar, click Compute

RESULTS

von Mises Stress


The default plot in the main window shows the von Mises stress surface distribution in the
beam. Note that stress reaches its maximum near the xed constraint and is practically zero
where we apply the force. This is as expected.
Right now the deformation is being displayed as well for the stress plot, to disable this do the
following
1 In the Model Builder window, locate Results>Stress (solid)
2 Right-click Stress (solid) and click Rename, rename it to von Mises stress, solution
1
3 Expand the von Mises stress, solution 1 node, then the Surface 1 node
4 Right-click Deformation 1 and click delete. The plot should automatically be replotted
without showing the deformation
5 Repeat the procedure for the 3D plot

ADD STUDY
1 To add a new study for the optimization, go to the Home toolbar and click Add Study

56

5 Optimizing the shape of a fillet

2 Go to the Add Study window


3 Find the Studies subsection. In the tree, select Preset Studies>Frequency Domain
4 In the Add study window, click Add study
5 On the Home toolbar, click Add Study to close the Add Study window

STUDY 2

Optimization area constraint


1 On the Physics toolbar, click Optimization
2 Locate the Domains button, and click Integral Inequality Constraint
3 In the Integral Inequality Constraint window, select Domain 1
4 Locate the Constraint section and under Constraint expression type 1
5 Locate the Quadrature settings section and expand it
6 Make sure that Multiply by 2r isnt checked
7 Locate the Bounds section, dont change the Lower Bound, but edit the Upper Bound,
type 525 m2
8 The Integral Inequality Constraint will automatically be added to the optimization in
Study 2

Optimization
1 On the Study toolbar, click Optimization. This will add the Optimization module to
Study 2
2 In the Optimization settings window, locate the Optimization Solver section
3 From the Method list, choose SNOPT
4 In the Optimality tolerance edit eld, type 1e-4
5 In the Maximum number of objective evaluations edit eld, type 200
6 Locate the Objective Function section. In the table, enter following settings:
Expression

Description

comp1.solid.Ws_tot

Total elastic strain energy

5.3 Modeling instructions

57

7 Locate the Control Variables and Parameters section. Click Load from File
8 Browse to nd the le called beam_shape_optimization_control_parameters.txt
9 Locate Output While Solving section and make sure that Plot is checked

Solver 2
1 On the Study toolbar, click Show Default Solver
2 In the Model Builder window, expand the Study 2>Solver Congurations>Solver
2>Optimization Solver 1 node, then click Stationary 1
3 In the Stationary settings window, locate the General section
4 In the Relative tolerance edit eld, type 1e-6
5 From the Linearity list, choose Automatic
6 Right-click Study 2 and press the Compute button

RESULTS

Plots
The plots from solution 1 can be duplicated relatively easy thus avoiding the same procedure
all over again.
1 In the Model Builder window under Results, locate the von Mises stress, solution 1
2 Right-click it and choose Duplicate
3 Right-click the new plot group and rename it to von Mises stress, solution 2
4 In the 2D Plot Group window, locate the Data section
5 In the drop down menu change it from Solution 1 to Solution 2
6 Click Plot
7 Follow the same procedure for the von Mises stress 3D plot

Probes
It is possible to see the parameter values for each iteration by using probes. In addition its
also possible to show the values of stresses, displacement and the total elastic strain energy.
1 In the Model Builder window under Component 1, locate the Denitions menu
2 Right-click it and choose Probes>Domain Probe

58

5 Optimizing the shape of a fillet

3 The Domain Probe window will open, locate the Expression section. The expression will
by default be set to solid.disp, change this to solid.mises, which is the von Mises stress
4 Right-click Domain Probe 1 and click Rename
5 Rename the probe to von Mises
6 Repeat step 1-5 for the following parameters: strain energy, total strain energy, p1, p2, and
q1.

Area Probe
1 In order to create an Area Probe, rst right-click Denitions, choose Component Couplings>Integration
2 The Integration window will open, select Domain 1
3 Now create a new Domain Probe using the steps from above. Rename it Area
4 In the Expression eld type intop1(1)

Adapative Mesh Renement


1 Expand Study 1 and locate Step 1: Stationary, click it
2 Locate Study Extensions and expand it
3 Go to the bottom and check Adaptive mesh renement
4 Locate Stationary Solver 1 and expand it
5 Click Adaptive Mesh Renement
6 Locate the General section
7 Change Maximum number of renements from 2 to 3
8 Compute both studies again

CHAPTER

6
Conclusion

Throughout this thesis shape optimization has been investigated. The strengths and weaknesses of a number of dierent shape optimization methods have been discussed. Shape optimization in COMSOL has been implemented on three classic shape optimization problems
and has resulted in solutions similar analytical results and to what others have obtained. Although COMSOL has improved their software for shape optimization there are still obstacles
to tackle. First and foremost it is critical to have the mathematical knowledge of how to create
well-connected linear combinations. Furthermore it is important that the guess for the linear
combinations is good seeing as the solution is only as good as the guess.
And even though the parameterization is well-connected in COMSOL, there is still a lot of
work with tweaking both the boundaries for the optimization parameters, but also for nding
the right scaling factors for the linear combinations.

6.1 Future work


There are still a number of aspects to be investigated in COMSOL with regards to shape
optimization. It could be of great interested to implement Bzier curves and B-splines in the
parameterization as they oer a great degree of freedom with few design variables. Another
interesting aspect is to work further with 3D optimization, COMSOL oers great possibilities
for 3D structures.

60

APPENDIX

A
Cantilever Beam

A.1 Standard
1
2
3
4
5
6
7
8
9
10
11
12
13
14

============================================================
Stationary Solver 1 in Solver 1 started at 8-maj -2014 18:13:56.
Nonlinear solver
Number of degrees of freedom solved for: 19268.
Nonsymmetric matrix found .
Scales for dependent variables :
Displacement field ( Material ) (comp1 .u): 2.8e -05
Material coordinates ( Geometry ) ( comp1 .XY): 10
Iter
ErrEst
Damping
Stepsize #Res #Jac #Sol
LinErr
1
2.7e -11
1.0000000
0.63
2
1
2 1.5e -08
2
6.4e -16
1.0000000
2.7e -11
3
2
4
3e -08
Stationary Solver 1 in Solver 1: Solution time: 1 s
Physical memory : 877 MB
Virtual memory : 5213 MB

LinRes
2.9e -11
4e -16

62

A Cantilever Beam

(a) von Mises stress

(b) von Mises Stress along the upper boundary

Figure A.1:

A.1 Standard

63

Figure A.2: The error of the solution as a function of iteration number for the nonlinear
solver

64

A Cantilever Beam

A.2 One summation


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

============================================================
Optimization Solver 1 in Solver 2 started at 22-maj -2014 11:42:41.
Optimization solver ( SNOPT)
Analytic gradient with the adjoint method .
Itns Major Minor
Step nPDE
Error Objective
2
0
2
1
2.99 1.331e+04
4
1
2
0.45
2
1.54 1.538e+04
7
2
3
0.25
4
0.589
1.09e+04
8
3
1
1.00
5
0.478 1.086e+04
9
4
1
1.00
6
0.179 1.088e+04
11
5
2
0.25
16
0.61 1.149e+04
Warning : Current point cannot be improved .
Optimization Solver 1 in Solver 2: Solution time: 63 s (1 minute , 3 seconds )
Physical memory : 867 MB
Virtual memory : 5200 MB

A.2 One summation

(a) von Mises Stress

65

(b) von Mises Stress along the upper boundary

Figure A.3:

66

A Cantilever Beam

(a) The error of the solution as a function of itera- (b) The error of the solution as a function of itertion number for the optimization solver
ation number for the nonlinear solver

Figure A.4:

78.45
160.26
67.00
72.26
75.37
73.01

1
2
3
4
5
6

2662
3076
2181
2171
2176
2298

U [J/m3 ]
13308
15381
10903
10855
10881
11490

Utot [J]
10.00
10.00
10.00
10.00
10.00
10.00

Area [m2 ]
-0.0266
-0.0308
-0.0218
-0.0217
-0.0218
-0.0230

Y -disp [m]
0.9214
-0.0467
0.5219
0.4552
0.4186
0.3340

p1 [-]

Table A.5: Values for each iteration during optimization

vM,max [MPa]

Iteration #
-0.4053
0.3416
0.1591
0.2114
0.2798
0.4445

q1 [-]
-0.4053
-0.3883
-0.7244
-0.7244
-0.7748
-0.9000

p2 [-]

A.2 One summation


67

68

A Cantilever Beam

A.3 Two summations


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

============================================================
Optimization Solver 1 in Solver 2 started at 22-maj -2014 11:17:17.
Optimization solver ( SNOPT)
Analytic gradient with the adjoint method .
Itns Major Minor
Step nPDE
Error Objective
3
0
3
1
3.23 1.315e+04
6
1
3
0.40
2
1.18 1.425e+04
10
2
4
0.21
4
0.608 1.088e+04
11
3
1
1.00
5
0.349 1.086e+04
12
4
1
1.00
6
0.094 1.086e+04
13
5
1
0.59
8
0.0624 1.085e+04
14
6
1
1.00
9
0.0493 1.084e+04
16
7
2
1.00
10
0.212 1.102e+04
18
8
2
0.29
12
0.239 1.082e+04
19
9
1
1.00
13
0.153 1.081e+04
20
10
1
1.00
14
0.01 1.081e+04
22
11
2
0.00
20
0.0472 1.081e+04
24
12
2
1.00
21
0.0492 1.081e+04
26
13
2
1.00
23
0.0489 1.081e+04
28
14
2
0.00
27
0.0493 1.081e+04
29
15
1
0.50
29
0.0493 1.081e+04
30
16
1
1.00
30
0.0493 1.081e+04
32
17
1
0.00
54
0.00687 1.081e+04
33
18
1
1.00
56
0.0306 1.081e+04
Warning : Current point cannot be improved .
Optimization Solver 1 in Solver 2: Solution time: 107 s (1 minute , 47 seconds )
Physical memory : 856 MB
Virtual memory : 5189 MB

A.3 Two summations

(a) von Mises Stress

69

(b) von Mises Stress along the upper boundary

Figure A.6:

70

A Cantilever Beam

(a) The error of the solution as a function of itera- (b) The error of the solution as a function of itertion number for the optimization solver
ation number for the nonlinear solver

Figure A.7:

79.27
127.94
70.22
73.54
74.59
73.91
73.20
87.82
70.99
68.41
68.08
68.19
68.21
68.25
68.21
68.21
68.21
68.27
68.16

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

2630
2850
2177
2172
2172
2171
2168
2204
2164
2161
2162
2161
2161
2161
2161
2161
2161
2161
2161

U [J/m3 ]
13150
14250
10884
10859
10862
10853
10839
11021
10821
10807
10807
10807
10807
10807
10807
10807
10807
10807
10807

Utot [J]
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00

Area [m2 ]
-0.0263
-0.0285
-0.0218
-0.0217
-0.0217
-0.0217
-0.0217
-0.0220
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216

Y -disp [m]
0.8488
0.0587
0.4797
0.4397
0.4281
0.4358
0.4444
0.5224
0.4722
0.5065
0.5112
0.5096
0.5093
0.5088
0.5093
0.5093
0.5093
0.5086
0.5100

p1 [-]

Table A.8: Values for each iteration during optimization

vM,max [MPa]

Iteration #
-0.3610
0.2539
0.1851
0.2338
0.2251
0.2322
0.2389
0.2883
0.2458
0.2168
0.2171
0.2146
0.2147
0.2151
0.2147
0.2147
0.2147
0.2134
0.2145

q1 [-]
-0.3891
-0.3819
-0.7153
-0.7374
-0.7147
-0.7314
-0.7485
-0.8894
-0.7852
-0.7826
-0.7876
-0.7828
-0.7827
-0.7827
-0.7827
-0.7827
-0.7827
-0.7802
-0.7832

p2 [-]
0.4011
-0.1867
0.0795
0.0272
0.0017
-0.0089
-0.1075
-0.9000
-0.3667
-0.5784
-0.6134
-0.5913
-0.5901
-0.5876
-0.5901
-0.5901
-0.5901
-0.5900
-0.5897

q2 [-]

A.3 Two summations


71

72

A Cantilever Beam

A.4 Three summations


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36

============================================================
Optimization Solver 1 in Solver 2 started at 22-maj -2014 11:02:24.
Optimization solver ( SNOPT)
Analytic gradient with the adjoint method .
Itns Major Minor
Step nPDE
Error Objective
4
0
4
1
3.23 1.268e+04
8
1
4
0.38
2
1.05 1.496e+04
13
2
5
0.18
4
0.61 1.102e+04
14
3
1
1.00
5
0.267 1.099e+04
15
4
1
1.00
6
0.0912 1.096e+04
16
5
1
1.00
8
0.244 1.089e+04
17
6
1
1.00
9
0.432 1.083e+04
18
7
1
1.00
10
0.216
1.08e+04
19
8
1
1.00
11
0.042 1.078e+04
20
9
1
1.00
12
0.0511 1.078e+04
21
10
1
1.00
13
0.00975 1.078e+04
22
11
1
1.00
14
0.00499 1.078e+04
23
12
1
1.00
15
0.00814 1.078e+04
24
13
1
1.00
17
0.00979 1.078e+04
25
14
1
1.00
19
0.0123 1.078e+04
26
15
1
1.00
20
0.0046 1.078e+04
27
16
1
1.00
22
0.0033 1.078e+04
28
17
1
1.00
23
0.00824 1.078e+04
29
18
1
1.00
25
0.00892 1.078e+04
30
19
1
1.00
26
0.00664 1.078e+04
31
20
1
1.00
28
0.00762 1.078e+04
32
21
1
1.00
29
0.00501 1.078e+04
33
22
1
1.00
31
0.00651 1.078e+04
34
23
1
1.00
32
0.00365 1.078e+04
35
24
1
1.00
34
0.00482 1.078e+04
36
25
1
1.00
36
0.00701 1.078e+04
37
26
1
0.19
38
0.00171 1.078e+04
Warning : Current point cannot be improved .
Optimization Solver 1 in Solver 2: Solution time: 89 s (1 minute , 29 seconds )
Physical memory : 854 MB
Virtual memory : 5185 MB

A.4 Three summations

(a) von Mises Stress

73

(b) von Mises Stress along the upper boundary

Figure A.9:

74

A Cantilever Beam

(a) The error of the solution as a function of itera- (b) The error of the solution as a function of itertion number for the optimization solver
ation number for the nonlinear solver

Figure A.10:

vM,max [MPa]

74.41
126.51
67.81
70.50
71.96
74.64
73.21
72.05
72.22
71.99
71.85
71.62
71.62
71.64
71.69
71.67
71.66
71.59
71.51
71.44
71.34
71.28
71.19
71.16
71.13
71.13
71.13

Iteration #

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27

12677
14964
11020
10987
10963
10893
10834
10795
10782
10782
10782
10781
10781
10781
10781
10781
10781
10781
10781
10781
10781
10781
10781
10781
10781
10781
10781

Utot [J]
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00

Area [m2 ]
-0.0254
-0.0299
-0.0220
-0.0220
-0.0219
-0.0218
-0.0217
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216

Y -disp [m]
0.8256
0.0514
0.5170
0.4821
0.4634
0.4297
0.4449
0.4545
0.4539
0.4565
0.4581
0.4611
0.4612
0.4609
0.4603
0.4606
0.4608
0.4617
0.4627
0.4636
0.4648
0.4657
0.4668
0.4671
0.4676
0.4675
0.4676

p1 [-]
-0.3456
0.2581
0.1267
0.1562
0.1938
0.2607
0.2577
0.2719
0.2648
0.2642
0.2633
0.2597
0.2597
0.2600
0.2602
0.2601
0.2601
0.2597
0.2592
0.2586
0.2579
0.2573
0.2565
0.2562
0.2558
0.2557
0.2558

q1 [-]

Table A.11: Values for each iteration during optimization

2535
2993
2204
2197
2193
2179
2167
2159
2156
2156
2156
2156
2156
2156
2156
2156
2156
2156
2156
2156
2156
2156
2156
2156
2156
2156
2156

U [J/m3 ]
-0.3725
-0.3557
-0.6580
-0.6618
-0.6930
-0.7540
-0.7725
-0.8246
-0.8064
-0.8094
-0.8094
-0.8070
-0.8070
-0.8073
-0.8068
-0.8069
-0.8069
-0.8071
-0.8074
-0.8075
-0.8076
-0.8076
-0.8076
-0.8076
-0.8076
-0.8074
-0.8076

p2 [-]
0.3840
-0.1920
0.1066
0.0631
0.0111
-0.1605
-0.2439
-0.5721
-0.4578
-0.4735
-0.4701
-0.4603
-0.4624
-0.4657
-0.4681
-0.4701
-0.4725
-0.4757
-0.4795
-0.4839
-0.4895
-0.4938
-0.4995
-0.5013
-0.5038
-0.5055
-0.5040

q2 [-]
-0.3084
-0.5738
-0.4775
-0.4523
-0.4041
-0.1813
-0.0127
0.5631
0.3615
0.3880
0.3796
0.3567
0.3572
0.3603
0.3599
0.3564
0.3517
0.3486
0.3445
0.3421
0.3386
0.3377
0.3362
0.3368
0.3375
0.3397
0.3378

q3 [-]

A.4 Three summations


75

76

A Cantilever Beam

A.5 Four summations


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55

============================================================
Optimization Solver 1 in Solver 2 started at 22-maj -2014 10:51:35.
Optimization solver ( SNOPT)
Analytic gradient with the adjoint method .
Itns Major Minor
Step nPDE
Error Objective
5
0
5
1
3.23
1.24e+04
10
1
5
0.36
2
1.22 1.546e+04
17
2
7
0.17
4
0.671 1.119e+04
18
3
1
1.00
5
0.843 1.107e+04
19
4
1
1.00
6
0.158 1.102e+04
20
5
1
1.00
8
0.234 1.103e+04
21
6
1
0.40
10
0.113 1.096e+04
22
7
1
1.00
11
0.33 1.082e+04
23
8
1
1.00
12
0.11
1.08e+04
24
9
1
1.00
13
0.0568
1.08e+04
25
10
1
0.10
16
0.0267 1.079e+04
26
11
1
1.00
17
0.0312 1.079e+04
27
12
1
1.00
18
0.0405 1.078e+04
28
13
1
1.00
19
0.0437 1.078e+04
29
14
1
1.00
20
0.0523 1.078e+04
30
15
1
1.00
21
0.0305 1.078e+04
31
16
1
1.00
22
0.0194 1.078e+04
32
17
1
1.00
23
0.0215 1.077e+04
34
18
2
1.00
24
0.0239
1.09e+04
36
19
2
0.17
26
0.0273 1.077e+04
37
20
1
1.00
27
0.0159 1.077e+04
38
21
1
1.00
28
0.0055 1.077e+04
39
22
1
1.00
29
0.00936 1.077e+04
40
23
1
1.00
31
0.0129 1.077e+04
41
24
1
1.00
32
0.00454 1.077e+04
42
25
1
1.00
34
0.00531 1.077e+04
43
26
1
1.00
35
0.00227 1.077e+04
44
27
1
1.00
37
0.00233 1.077e+04
45
28
1
1.00
39
0.00219 1.077e+04
46
29
1
1.00
41
0.00215 1.077e+04
47
30
1
1.00
43
0.00256 1.089e+04
48
31
1
0.00
48
0.00686 1.077e+04
49
32
1
1.00
50
0.00764 1.077e+04
50
33
1
1.00
51
0.00195 1.077e+04
51
34
1
1.00
52
0.00473 1.077e+04
52
35
1
0.24
56
0.00561 1.077e+04
53
36
1
0.09
60
0.00653 1.077e+04
54
37
1
1.00
61
0.00779 1.077e+04
55
38
1
1.00
63
0.0118 1.077e+04
56
39
1
0.00
67
0.00531 1.077e+04
57
40
1
1.00
69
0.00566 1.077e+04
58
41
1
1.00
70
0.00338 1.077e+04
59
42
1
1.00
72
0.00477 1.077e+04
60
43
1
0.14
78
0.00397 1.077e+04
61
44
1
1.00
80
0.00456 1.077e+04
62
45
1
1.00
82
0.00335 1.077e+04
63
46
1
1.00
83
0.0117 1.077e+04
64
47
1
0.01
90
0.00372 1.077e+04
Warning : Current point cannot be improved .
Optimization Solver 1 in Solver 2: Solution time: 162 s (2 minutes , 42 seconds )

A.5 Four summations

56
57

77

Physical memory : 854 MB


Virtual memory : 5176 MB

78

A Cantilever Beam

(a) von Mises Stress

(b) von Mises Stress along the upper boundary

Figure A.12:

A.5 Four summations

79

(a) The error of the solution as a function of itera- (b) The error of the solution as a function of itertion number for the optimization solver
ation number for the nonlinear solver

Figure A.13:

vM,max [MPa]

65.05
148.33
76.13
71.66
71.81
73.20
72.18
71.97
73.32
72.93
73.49
73.03
72.16
71.42
70.84
70.76
70.71
70.68
88.26
70.11
69.96
69.97
69.93
69.88
69.84
69.79
69.78
69.78
69.77
69.76

Iteration #

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

2480
3093
2238
2214
2204
2205
2191
2165
2159
2160
2159
2157
2157
2156
2156
2155
2155
2155
2181
2154
2154
2154
2154
2154
2154
2154
2154
2154
2154
2154

U [J/m3 ]
12399
15465
11189
11070
11022
11027
10957
10824
10797
10801
10794
10787
10784
10781
10778
10777
10775
10774
10904
10771
10771
10771
10771
10771
10771
10771
10771
10771
10771
10771

Utot [J]
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00

Area [m2 ]
-0.0248
-0.0309
-0.0224
-0.0221
-0.0220
-0.0221
-0.0219
-0.0217
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0216
-0.0218
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215

Y -disp [m]
0.7718
-0.0106
0.4946
0.4614
0.4592
0.4418
0.4545
0.4579
0.4424
0.4468
0.4404
0.4454
0.4556
0.4645
0.4718
0.4730
0.4745
0.4750
0.5062
0.4838
0.4855
0.4855
0.4861
0.4869
0.4873
0.4880
0.4881
0.4882
0.4883
0.4885

p1 [-]
-0.3231
0.2962
0.1725
0.1028
0.1384
0.2505
0.1875
0.2208
0.2640
0.2480
0.2657
0.2654
0.2605
0.2550
0.2493
0.2487
0.2498
0.2515
0.3132
0.2597
0.2563
0.2571
0.2568
0.2566
0.2561
0.2554
0.2553
0.2553
0.2552
0.2551

q1 [-]
-0.3482
-0.3421
-0.6942
-0.5748
-0.6189
-0.7497
-0.6815
-0.7441
-0.7934
-0.7733
-0.7923
-0.7958
-0.7995
-0.8019
-0.8031
-0.8039
-0.8078
-0.8102
-0.9142
-0.8284
-0.8259
-0.8270
-0.8272
-0.8276
-0.8274
-0.8272
-0.8271
-0.8271
-0.8271
-0.8271

p2 [-]
0.3590
-0.2303
0.1049
0.0974
0.0815
-0.0016
0.0305
-0.0996
-0.2081
-0.1770
-0.2208
-0.2749
-0.3351
-0.3991
-0.4641
-0.4804
-0.5170
-0.5240
-0.9000
-0.6028
-0.6033
-0.6065
-0.6104
-0.6154
-0.6176
-0.6213
-0.6210
-0.6207
-0.6191
-0.6170

q2 [-]
-0.2883
-0.5746
-0.4713
-0.4143
-0.3922
-0.2617
-0.2774
0.1191
0.3519
0.2518
0.3226
0.2935
0.2876
0.2994
0.3273
0.3377
0.3594
0.3546
0.2185
0.3291
0.3318
0.3312
0.3310
0.3312
0.3304
0.3294
0.3285
0.3276
0.3264
0.3252

q3 [-]
0.3590
0.5250
0.4471
0.4002
0.3796
0.2752
0.2893
-0.0105
-0.1804
-0.0999
-0.1481
-0.0937
-0.0583
-0.0424
-0.0491
-0.0629
-0.1113
-0.1211
-0.5791
-0.1865
-0.1703
-0.1793
-0.1836
-0.1909
-0.1887
-0.1853
-0.1858
-0.1865
-0.1877
-0.1889

q4 [-]

80
A Cantilever Beam

31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48

69.37
69.76
69.79
69.79
69.68
69.74
69.76
69.67
69.45
69.68
69.71
69.72
69.74
69.73
69.73
69.73
70.11
69.73

10888
10771
10771
10771
10771
10771
10771
10771
10771
10771
10771
10771
10771
10771
10771
10771
10772
10771

10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00

-0.0218
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215

0.5701
0.4885
0.4881
0.4881
0.4895
0.4888
0.4885
0.4896
0.4925
0.4896
0.4891
0.4890
0.4888
0.4889
0.4889
0.4889
0.4841
0.4889

0.2227
0.2551
0.2553
0.2553
0.2542
0.2547
0.2550
0.2537
0.2504
0.2537
0.2542
0.2544
0.2546
0.2544
0.2543
0.2543
0.2539
0.2543

Table A.14: Values for each iteration during optimization

2178
2154
2154
2154
2154
2154
2154
2154
2154
2154
2154
2154
2154
2154
2154
2154
2154
2154

-0.8647
-0.8271
-0.8269
-0.8269
-0.8269
-0.8269
-0.8269
-0.8263
-0.8248
-0.8263
-0.8265
-0.8266
-0.8266
-0.8265
-0.8265
-0.8265
-0.8211
-0.8265

-0.5753
-0.6170
-0.6172
-0.6172
-0.6165
-0.6169
-0.6170
-0.6166
-0.6155
-0.6166
-0.6168
-0.6169
-0.6169
-0.6169
-0.6169
-0.6169
-0.6179
-0.6169

0.2615
0.3252
0.3255
0.3255
0.3240
0.3247
0.3250
0.3232
0.3182
0.3232
0.3239
0.3241
0.3244
0.3241
0.3241
0.3241
0.3203
0.3240

-0.2161
-0.1889
-0.1888
-0.1888
-0.1892
-0.1890
-0.1889
-0.1893
-0.1903
-0.1893
-0.1891
-0.1891
-0.1890
-0.1891
-0.1891
-0.1891
-0.1889
-0.1891

A.5 Four summations


81

82

A Cantilever Beam

A.6 Five summations


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39

============================================================
Optimization Solver 1 in Solver 2 started at 22-maj -2014 10:57:45.
Optimization solver ( SNOPT)
Analytic gradient with the adjoint method .
Itns Major Minor
Step nPDE
Error Objective
6
0
6
1
3.23 1.242e+04
12
1
6
0.37
2
1.08 1.549e+04
20
2
8
0.18
4
0.657 1.122e+04
21
3
1
1.00
5
1.01 1.108e+04
22
4
1
1.00
6
0.197 1.103e+04
23
5
1
1.00
8
0.287 1.105e+04
24
6
1
0.38
10
0.0967 1.098e+04
25
7
1
1.00
11
0.283 1.084e+04
26
8
1
1.00
12
0.116
1.08e+04
27
9
1
1.00
13
0.0445 1.079e+04
29
10
2
1.00
14
0.0424 1.116e+04
31
11
2
0.14
17
0.0727 1.078e+04
32
12
1
1.00
18
0.0872 1.077e+04
33
13
1
1.00
19
0.117 1.077e+04
34
14
1
1.00
20
0.057 1.077e+04
35
15
1
1.00
21
0.0175 1.077e+04
36
16
1
1.00
22
0.00669 1.077e+04
37
17
1
1.00
23
0.00439 1.077e+04
38
18
1
1.00
24
0.00568 1.077e+04
39
19
1
1.00
25
0.00632 1.077e+04
40
20
1
1.00
26
0.0046 1.077e+04
41
21
1
0.21
28
0.00424 1.077e+04
42
22
1
1.00
29
0.0241 1.077e+04
43
23
1
1.00
30
0.0336 1.077e+04
44
24
1
1.00
31
0.0255 1.077e+04
45
25
1
1.00
32
0.00682 1.077e+04
46
26
1
1.00
34
0.0159 1.077e+04
47
27
1
1.00
35
0.00234 1.077e+04
48
28
1
1.00
37
0.00285 1.077e+04
49
29
1
1.00
39
0.00359 1.077e+04
Warning : Current point cannot be improved .
Optimization Solver 1 in Solver 2: Solution time: 104 s (1 minute , 44 seconds )
Physical memory : 857 MB
Virtual memory : 5185 MB

A.6 Five summations

(a) von Mises Stress

83

(b) von Mises Stress along the upper boundary

Figure A.15:

84

A Cantilever Beam

(a) The error of the solution as a function of itera- (b) The error of the solution as a function of itertion number for the optimization solver
ation number for the nonlinear solver

Figure A.16:

vM,max [MPa]

65.64
134.14
82.26
70.42
70.38
72.41
70.63
71.02
72.87
73.52
225.97
73.41
72.34
71.95
71.68
71.66
71.72
71.64
71.39
71.13
70.96
71.00
70.78
70.64
70.52
70.53
70.52
70.54
70.58
70.53

Iteration #

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

2483
3098
2245
2216
2205
2209
2195
2168
2159
2158
2231
2156
2155
2154
2153
2153
2153
2153
2153
2153
2153
2153
2153
2153
2153
2153
2153
2153
2153
2153

U [J/m3 ]
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00
10.00

Area [m2 ]
-0.0248
-0.0310
-0.0225
-0.0222
-0.0221
-0.0221
-0.0220
-0.0217
-0.0216
-0.0216
-0.0223
-0.0216
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215
-0.0215

Y -disp [m]
0.7995
0.0180
0.5117
0.4851
0.4851
0.4703
0.4807
0.4720
0.4470
0.4391
0.3787
0.4397
0.4521
0.4565
0.4591
0.4595
0.4589
0.4598
0.4629
0.4662
0.4685
0.4680
0.4711
0.4730
0.4748
0.4748
0.4750
0.4746
0.4742
0.4748

p1 [-]
-0.3334
0.2797
0.1546
0.0652
0.1011
0.2098
0.1463
0.1976
0.2664
0.2822
0.4351
0.2960
0.2825
0.2773
0.2784
0.2759
0.2766
0.2768
0.2779
0.2795
0.2803
0.2788
0.2761
0.2740
0.2717
0.2715
0.2706
0.2710
0.2713
0.2713

q1 [-]
-0.3594
-0.3377
-0.6799
-0.5431
-0.5894
-0.7179
-0.6469
-0.7240
-0.8034
-0.8172
-0.9700
-0.8360
-0.8294
-0.8274
-0.8341
-0.8308
-0.8313
-0.8328
-0.8379
-0.8434
-0.8467
-0.8439
-0.8424
-0.8412
-0.8397
-0.8393
-0.8384
-0.8385
-0.8385
-0.8389

p2 [-]

Table A.17: Values for each iteration during optimization

12417
15488
11224
11079
11027
11046
10976
10839
10795
10789
11155
10778
10773
10770
10767
10767
10767
10767
10766
10766
10766
10766
10766
10765
10765
10765
10765
10765
10765
10765

Utot [J]
0.3705
-0.2137
0.1079
0.1092
0.0945
0.0168
0.0497
-0.1001
-0.2568
-0.2939
-0.6990
-0.3729
-0.4089
-0.4452
-0.5453
-0.5244
-0.5191
-0.5302
-0.5635
-0.5947
-0.6130
-0.6005
-0.6042
-0.6085
-0.6144
-0.6142
-0.6147
-0.6128
-0.6095
-0.6063

q2 [-]
-0.2974
-0.5745
-0.4804
-0.4236
-0.4079
-0.3130
-0.3274
0.0409
0.3486
0.3786
0.7300
0.3928
0.3574
0.3605
0.4095
0.3988
0.4019
0.4062
0.4119
0.4113
0.4063
0.4000
0.3790
0.3684
0.3611
0.3620
0.3617
0.3628
0.3632
0.3618

q3 [-]
0.3705
0.3634
0.3753
0.3354
0.3164
0.2296
0.2499
-0.0246
-0.2487
-0.2591
-0.3766
-0.2145
-0.1410
-0.1160
-0.1003
-0.1083
-0.1238
-0.1336
-0.1525
-0.1673
-0.1746
-0.1664
-0.1648
-0.1674
-0.1727
-0.1736
-0.1756
-0.1740
-0.1711
-0.1666

q4 [-]
-0.1150
-0.4760
-0.3260
-0.2798
-0.2761
-0.2476
-0.2412
-0.0541
0.0948
0.1058
0.2503
0.1083
0.0915
0.0945
0.1220
0.1185
0.1228
0.1294
0.1439
0.1546
0.1585
0.1517
0.1447
0.1419
0.1399
0.1387
0.1367
0.1359
0.1341
0.1322

q5 [-]

A.6 Five summations


85

86

APPENDIX

B
Plate with a hole

B.1 Tensile ratio of 1


Standard plate
1
2
3
4
5
6
7
8
9
10
11
12
13
14

============================================================
Stationary Solver 1 in Solver 1 started at 19-jun -2014 12:48:43.
Nonlinear solver
Number of degrees of freedom solved for: 34708.
Nonsymmetric matrix found .
Scales for dependent variables :
comp1 .u: 6.1e -05
comp1 .XY: 10
Iter
ErrEst
Damping
Stepsize #Res #Jac #Sol
LinErr
1
5.5e -13
1.0000000
0.7
2
1
2 7.4e -11
2
2.1e -16
1.0000000
5.5e -13
3
2
4 4.2e -11
Stationary Solver 1 in Solver 1: Solution time: 2 s
Physical memory : 864 MB
Virtual memory : 5254 MB

LinRes
8.7e -14
3.4e -16

88

B Plate with a hole

Figure B.1: v. Mises stress

Figure B.2: The error of the solution as a function of iteration number for the nonlinear
solver

B.1 Tensile ratio of 1

89

Optimized plate
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29

============================================================
Optimization Solver 1 in Solver 2 started at 19-jun -2014 12:36:08.
Optimization solver (SNOPT )
Analytic gradient with the adjoint method .
Warning : New constraint force nodes detected : These are not stored .
Itns Major Minor
Step nPDE
Error Objective
2
0
2
1
0.0151
35.69
4
1
2
1.00
2
0.0126
35.88
6
2
2
0.06
4
0.00824
35.69
8
3
2
0.00
10
0.00462
35.69
10
4
2
1.00
12
0.00325
35.85
12
5
2
0.01
15
0.00313
35.69
13
6
1
0.03
17
0.00114
35.69
14
7
1
1.00
19
0.00136
35.69
15
8
1
1.00
20
0.000671
35.69
16
9
1
1.00
22
0.000951
35.69
17
10
1
0.15
24
0.000883
35.69
18
11
1
0.01
28
0.000118
35.69
19
12
1
1.00
30
0.000108
35.69
20
13
1
0.65
32
0.000105
35.69
21
14
1
1.00
33
0.000104
35.69
Number of optimization variables :
3.
Number of objective function evaluations :
57.
Number of Jacobian evaluations :
55.
Final objective function value : 35.69020753.
Warning : Requested accuracy could not be achieved .
Optimization Solver 1 in Solver 2: Solution time: 179 s (2 minutes , 59 seconds )
Physical memory : 910 MB
Virtual memory : 5265 MB

Iteration #

vM,max [MPa]

U [J/m3 ]

Utot [J]

Area [m2 ]

q1 [-]

q2 [-]

q3 [-]

1.00
2
3
4
5
6
7
8
9
10
11
12
13
14
15

2.11
2.94
2.16
2.08
2.68
2.13
2.09
2.08
2.08
2.08
2.08
2.08
2.08
2.08
2.08

4.08
4.10
4.08
4.08
4.10
4.08
4.08
4.08
4.08
4.08
4.08
4.08
4.08
4.08
4.08

35.69
35.88
35.69
35.69
35.85
35.69
35.69
35.69
35.69
35.69
35.69
35.69
35.69
35.69
35.69

87.43
87.44
87.43
87.43
87.48
87.43
87.43
87.43
87.43
87.43
87.43
87.43
87.43
87.43
87.43

0.01
0.56
0.11
0.05
0.20
-0.03
0.05
0.05
0.05
0.04
0.05
0.05
0.05
0.05
0.05

-0.02
-0.99
-0.12
-0.09
-1.00
-0.10
-0.10
-0.10
-0.09
-0.09
-0.09
-0.09
-0.09
-0.09
-0.09

0.01
0.22
-0.01
0.02
0.54
0.10
0.03
0.03
0.03
0.03
0.03
0.03
0.03
0.03
0.03

Table B.3: Values for each iteration during optimization

90

B Plate with a hole

Figure B.4: Surface v. Mises stress

Figure B.5: Surface v. Mises stress showing the whole plate

B.1 Tensile ratio of 1

91

Figure B.6: Graph comparing the v. Mises stress for the original shape with the optimized
design

Figure B.7: The error of the solution as a function of iteration number for the optimization
solver

92

B Plate with a hole

Figure B.8: The error of the solution as a function of iteration number for the nonlinear
solver

B.2 Tensile ratio of 2


Standard plate
1
2
3
4
5
6
7
8
9
10
11
12
13
14

============================================================
Stationary Solver 1 in Solver 1 started at 19-jun -2014 11:17:14.
Nonlinear solver
Number of degrees of freedom solved for: 34708.
Nonsymmetric matrix found .
Scales for dependent variables :
comp1 .u: 6.1e -05
comp1 .XY: 10
Iter
ErrEst
Damping
Stepsize #Res #Jac #Sol
LinErr
1
7.1e -13
1.0000000
0.68
2
1
2 5.3e -11
2
1e -15
1.0000000
7.1e -13
3
2
4 2.9e -11
Stationary Solver 1 in Solver 1: Solution time: 2 s
Physical memory : 1.07 GB
Virtual memory : 5.45 GB

LinRes
6.6e -14
5.4e -16

B.2 Tensile ratio of 2

93

Figure B.9: v. Mises stress

Figure B.10: The error of the solution as a function of iteration number for the nonlinear
solver

94

B Plate with a hole

Optimized plate
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

============================================================
Optimization Solver 1 in Solver 2 started at 19-jun -2014 11:57:41.
Optimization solver ( SNOPT)
Analytic gradient with the adjoint method .
Itns Major Minor
Step nPDE
Error Objective
2
0
2
1
0.892
102.3
3
1
1
1.00
2
0.649
98.56
4
2
1
0.64
3
0.617
96.6
5
3
1
1.00
4
0.077
97.06
6
4
1
1.00
5
0.0449
97.06
7
5
1
1.00
6
0.0235
97.05
8
6
1
1.00
7
0.00767
97.05
9
7
1
1.00
8
0.00385
97.05
10
8
1
1.00
9
0.000274
97.05
11
9
1
1.00
11
0.000305
97.05
12
10
1
0.07
14
3.39e -05
97.05
Number of optimization variables :
3.
Number of objective function evaluations :
16.
Number of Jacobian evaluations :
14.
Final objective function value : 97.05107473.
Optimality conditions satisfied .
Optimization Solver 1 in Solver 2: Solution time: 16 s
Physical memory : 712 MB
Virtual memory : 5048 MB

Iteration #

vM,max [MPa]

U [J/m3 ]

Utot [J]

Area [m2 ]

q1 [-]

q2 [-]

q3 [-]

1
2
3
4
5
6
7
8
9
10
11

5.20
4.25
3.35
3.35
3.29
3.27
3.28
3.28
3.28
3.28
3.28

11.69
11.25
11.03
11.10
11.10
11.10
11.10
11.10
11.10
11.10
11.10

102.32
98.56
96.60
97.06
97.06
97.05
97.05
97.05
97.05
97.05
97.05

87.53
87.58
87.61
87.44
87.43
87.43
87.43
87.43
87.43
87.43
87.43

0.62
1.42
2.70
3.03
2.98
2.96
2.98
3.00
3.00
3.00
3.00

0.23
0.48
0.64
0.61
0.56
0.46
0.42
0.40
0.40
0.40
0.40

-0.69
-1.37
-2.12
-2.18
-2.13
-2.09
-2.08
-2.08
-2.08
-2.08
-2.08

Table B.11: Values for each iteration during optimization

B.2 Tensile ratio of 2

95

Figure B.12: Surface v. Mises stress

Figure B.13: Surface v. Mises stress showing the whole plate

96

B Plate with a hole

Figure B.14: Graph comparing the v. Mises stress for the original shape with the optimized
design

Figure B.15: The error of the solution as a function of iteration number for the optimization
solver

B.3 Tensile ratio of 3

97

Figure B.16: The error of the solution as a function of iteration number for the nonlinear
solver

B.3 Tensile ratio of 3


Standard plate
1
2
3
4
5
6
7
8
9
10
11
12
13

Stationary Solver 1 in Solver 1 started at 19-jun -2014 11:06:38.


Nonlinear solver
Number of degrees of freedom solved for: 34708.
Nonsymmetric matrix found .
Scales for dependent variables :
comp1 .u: 6.1e -05
comp1 .XY: 10
Iter
ErrEst
Damping
Stepsize #Res #Jac #Sol
LinErr
1
6.9e -13
1.0000000
0.67
2
1
2 7.6e -11
2
5.7e -16
1.0000000
6.9e -13
3
2
4 3.8e -11
Stationary Solver 1 in Solver 1: Solution time: 2 s
Physical memory : 1.03 GB
Virtual memory : 5.45 GB

LinRes
8.8e -14
5.4e -16

98

B Plate with a hole

Figure B.17: v. Mises stress

Figure B.18: The error of the solution as a function of iteration number for the nonlinear
solver

B.3 Tensile ratio of 3

Optimized plate
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55

============================================================
Number of vertex elements : 5
Number of boundary elements : 192
Number of elements : 2121
Minimum element quality : 0.4294
Number of vertex elements : 5
Optimization Solver 1 in Solver 2 started at 19-jun -2014 03:18:29.
Optimization solver (SNOPT )
Analytic gradient with the adjoint method .
Warning : New constraint force nodes detected : These are not stored .
Itns Major Minor
Step nPDE
Error Objective
2
0
2
1
1.1
236.6
3
1
1
1.00
2
0.828
225.1
4
2
1
0.62
3
1.62
207.6
5
3
1
1.00
4
0.296
209.6
6
4
1
1.00
5
0.134
210
7
5
1
1.00
6
0.107
210
8
6
1
0.27
8
0.0319
210
9
7
1
1.00
9
0.0258
209.9
10
8
1
1.00
10
0.0033
209.9
12
9
2
1.00
11
0.00604
210.3
15
10
1
0.00
22
0.000981
209.9
16
11
1
0.00
26
0.00081
209.9
17
12
1
1.00
27
0.00286
210
18
13
1
0.01
31
0.000622
209.9
19
14
1
0.24
33
0.000438
209.9
20
15
1
1.00
34
0.000443
209.9
21
16
1
1.00
36
0.000618
209.9
22
17
1
0.20
38
0.000366
209.9
23
18
1
1.00
39
0.000501
209.9
24
19
1
1.00
40
0.000561
209.9
25
20
1
1.00
42
0.000719
209.9
26
21
1
0.00
46
0.000225
209.9
27
22
1
1.00
48
0.000232
209.9
28
23
1
1.00
50
0.00138
209.9
29
24
1
1.00
51
0.000972
209.9
30
25
1
1.00
52
0.000245
209.9
31
26
1
1.00
54
0.000248
209.9
32
27
1
1.00
56
0.000504
209.9
33
28
1
1.00
57
0.000228
209.9
34
29
1
1.00
58
0.000186
209.9
35
30
1
1.00
59
0.000776
209.9
36
31
1
0.05
63
6.46e -05
209.9
37
32
1
1.00
64
0.000142
209.9
38
33
1
0.07
67
1.23e -05
209.9
40
34
1
0.50
92
1.6e -05
209.9
41
35
1
0.25
95
7.98e -06
209.9
Number of optimization variables :
3.
Number of objective function evaluations :
120.
Number of Jacobian evaluations :
118.
Final objective function value : 209.9367235.
Warning : Requested accuracy could not be achieved .
Optimization Solver 1 in Solver 2: Solution time: 377 s (6 minutes , 17 seconds )
Physical memory : 1.09 GB
Virtual memory : 5.45 GB

99

100

B Plate with a hole

Iteration #

vM,max [MPa]

U [J/m3 ]

Utot [J]

Area [m2 ]

q1 [-]

q2 [-]

q3 [-]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36

8.82
7.46
4.88
4.92
4.77
4.88
4.53
4.50
4.48
5.78
4.48
4.48
4.72
4.49
4.49
4.49
4.48
4.49
4.49
4.49
4.49
4.49
4.49
4.49
4.49
4.49
4.49
4.49
4.49
4.49
4.48
4.49
4.48
4.49
4.49
4.49

27.03
25.71
23.57
23.95
24.02
24.00
24.01
24.01
24.01
24.04
24.01
24.01
24.01
24.01
24.01
24.01
24.01
24.01
24.01
24.01
24.01
24.01
24.01
24.01
24.01
24.01
24.01
24.01
24.01
24.01
24.01
24.01
24.01
24.01
24.01
24.01

236.65
225.14
207.62
209.63
210.02
210.01
209.96
209.93
209.94
210.34
209.94
209.94
209.97
209.94
209.94
209.94
209.94
209.94
209.94
209.94
209.94
209.94
209.94
209.94
209.94
209.94
209.94
209.94
209.94
209.94
209.94
209.94
209.94
209.94
209.94
209.94

87.54
87.59
88.10
87.53
87.44
87.49
87.43
87.43
87.43
87.48
87.43
87.43
87.44
87.43
87.43
87.43
87.43
87.43
87.43
87.43
87.43
87.43
87.43
87.43
87.43
87.43
87.43
87.43
87.43
87.43
87.43
87.43
87.43
87.43
87.43
87.43

0.62
1.37
3.67
5.20
5.11
4.51
5.01
5.13
5.12
5.03
5.12
5.12
4.94
5.12
5.12
5.12
5.12
5.12
5.12
5.12
5.12
5.12
5.12
5.12
5.12
5.12
5.12
5.12
5.12
5.12
5.12
5.12
5.12
5.12
5.12
5.12

0.30
0.61
1.10
1.35
1.23
0.68
1.00
0.72
0.74
2.00
0.74
0.75
0.52
0.74
0.74
0.75
0.75
0.75
0.75
0.75
0.74
0.75
0.75
0.75
0.75
0.75
0.75
0.75
0.75
0.75
0.75
0.75
0.75
0.75
0.75
0.75

-0.73
-1.40
-2.90
-3.24
-3.15
-2.82
-3.05
-3.01
-3.02
-3.34
-3.02
-3.02
-2.90
-3.02
-3.02
-3.02
-3.02
-3.02
-3.02
-3.02
-3.02
-3.02
-3.02
-3.02
-3.02
-3.02
-3.02
-3.02
-3.02
-3.02
-3.02
-3.02
-3.02
-3.02
-3.02
-3.02

Table B.19: Values for each iteration during optimization

B.3 Tensile ratio of 3

101

Figure B.20: Surface v. Mises stress

Figure B.21: Surface v. Mises stress showing the whole plate

102

B Plate with a hole

Figure B.22: Graph comparing the v. Mises stress for the original shape with the optimized
design

Figure B.23: The error of the solution as a function of iteration number for the optimization
solver

B.3 Tensile ratio of 3

103

Figure B.24: The error of the solution as a function of iteration number for the nonlinear
solver

104

APPENDIX

C
Fillet

C.1 Standard
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

============================================================
Number of vertex elements : 7
Number of boundary elements : 96
Number of elements : 1000
Minimum element quality : 0.893
Stationary Solver 1 in Solver 1 started at 24-jun -2014 00:18:20.
Nonlinear solver
Number of degrees of freedom solved for: 8388.
Nonsymmetric matrix found .
Scales for dependent variables :
comp1 .RZ: 32
comp1 .u: 1.2e -05
Iter
ErrEst
Damping
Stepsize #Res #Jac #Sol
LinErr
1
1.5e -14
1.0000000
0.67
2
1
2
2e -12
2
3.2e -16
1.0000000
1.5e -14
3
2
4 3.7e -11
Stationary Solver 1 in Solver 1: Solution time: 0 s
Physical memory : 821 MB
Virtual memory : 5224 MB

LinRes
1.4e -14
5.1e -16

106

C Fillet

Figure C.1: v. Mises stress in 2D

Figure C.2: v. Mises stress in 3D

C.2 One summation

107

Figure C.3: The error of the solution as a function of iteration number for the nonlinear
solver

C.2 One summation


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

============================================================
Optimization Solver 1 in Solver 2 started at 24-jun -2014 01:21:15.
Optimization solver (SNOPT )
Analytic gradient with the adjoint method .
Itns Major Minor
Step nPDE
Error Objective
2
0
2
1
0.569
1.92e+05
3
1
1
0.18
2
0.507 1.914e+05
4
2
1
0.19
3
0.326
1.89e+05
5
3
1
0.60
4
0.204
1.88e+05
6
4
1
1.00
5
0.0499
1.87e+05
7
5
1
1.00
6
0.0547 1.867e+05
9
6
2
1.00
7
0.0354 1.866e+05
10
7
1
1.00
8
0.0143 1.866e+05
11
8
1
1.00
9
0.00237 1.866e+05
12
9
1
1.00
10
0.000995 1.866e+05
13
10
1
1.00
11
5.62e -05 1.866e+05
Number of optimization variables :
3.
Number of objective function evaluations :
13.
Number of Jacobian evaluations :
11.
Final objective function value : 186574.0434.
Optimality conditions satisfied .
Optimization Solver 1 in Solver 2: Solution time: 12 s
Physical memory : 881 MB
Virtual memory : 5296 MB

108

C Fillet

Figure C.4: v. Mises stress in 1D

Figure C.5: v. Mises stress in 2D

C.2 One summation

109

Figure C.6: v. Mises stress in 3D

Figure C.7: The error of the solution as a function of iteration number for the nonlinear
solver

110

C Fillet

Figure C.8: The error of the solution as a function of iteration number for the optimization
solver

6.57
6.40
5.37
4.75
4.62
4.49
4.41
4.43
4.43
4.44
4.44

1
2
3
4
5
6
7
8
9
10
11

191.98
191.39
189.02
187.95
187.00
186.69
186.60
186.59
186.58
186.57
186.57

Ut ot [kJ]
10.30
10.25
10.06
9.97
9.88
9.85
9.85
9.85
9.85
9.85
9.85

U [J/m3 ]
524.99
524.99
524.78
524.46
524.90
525.00
524.99
524.99
525.00
525.00
525.00

Area [m2 ]
0.92
1.84
7.44
14.90
19.99
23.45
26.00
26.00
26.00
26.00
26.00

p1 [-]

Table C.9: Values for each iteration during optimization

vM,max [MPa]

Iteration #
-0.46
-0.93
-3.69
-7.32
-8.38
-8.55
-8.12
-7.79
-7.66
-7.60
-7.60

p2 [-]
-0.36
-0.70
-2.73
-4.15
-5.23
-7.37
-10.28
-10.90
-11.14
-11.24
-11.24

q1 [-]

C.2 One summation


111

112

C.3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27

C Fillet

Two summations

============================================================
Optimization Solver 1 in Solver 2 started at 24-jun -2014 01:25:27.
Optimization solver ( SNOPT)
Analytic gradient with the adjoint method .
Itns Major Minor
Step nPDE
Error Objective
3
0
3
1
0.569 1.919e+05
4
1
1
0.15
2
0.521 1.913e+05
5
2
1
0.17
3
0.29 1.886e+05
6
3
1
0.62
4
0.174 1.875e+05
7
4
1
1.00
5
0.0644 1.871e+05
8
5
1
1.00
6
0.0386 1.868e+05
9
6
1
1.00
7
0.0243 1.866e+05
10
7
1
1.00
8
0.0342 1.865e+05
11
8
1
1.00
9
0.0162 1.865e+05
12
9
1
1.00
10
0.01 1.865e+05
13
10
1
1.00
11
0.00133 1.865e+05
14
11
1
1.00
13
0.00252 1.865e+05
15
12
1
0.01
17
0.000688 1.865e+05
16
13
1
0.10
21
8.22e -05 1.865e+05
Number of optimization variables :
4.
Number of objective function evaluations :
23.
Number of Jacobian evaluations :
21.
Final objective function value : 186485.925.
Optimality conditions satisfied .
Optimization Solver 1 in Solver 2: Solution time: 18 s
Physical memory : 880 MB
Virtual memory : 5301 MB

C.3 Two summations

113

Figure C.10: v. Mises stress in 1D

Figure C.11: v. Mises stress in 2D

114

C Fillet

Figure C.12: v. Mises stress in 3D

Figure C.13: The error of the solution as a function of iteration number for the nonlinear
solver

C.3 Two summations

115

Figure C.14: The error of the solution as a function of iteration number for the optimization
solver

6.75
6.73
5.49
5.07
4.76
4.41
4.32
4.15
4.13
4.14
4.14
4.15
4.15
4.14

1
2
3
4
5
6
7
8
9
10
11
12
13
14

191.90
191.26
188.62
187.51
187.06
186.81
186.58
186.51
186.49
186.49
186.49
186.49
186.49
186.49

Ut ot [kJ]
10.29
10.24
10.02
9.93
9.89
9.87
9.85
9.84
9.84
9.84
9.84
9.84
9.84
9.84

U [J/m3 ]
525.00
524.99
524.83
524.82
524.83
524.88
525.00
524.99
525.00
525.00
525.00
525.00
525.00
525.00

Area [m2 ]
0.78
1.60
8.03
13.91
19.44
24.64
26.49
30.33
31.57
31.76
31.72
31.67
31.70
31.72

p1 [-]
-0.39
-0.79
-3.21
-5.30
-7.14
-8.49
-8.55
-8.25
-8.11
-8.06
-8.06
-8.08
-8.06
-8.06

p2 [-]

Table C.15: Values for each iteration during optimization

vM,max [MPa]

Iteration #
-0.31
-0.62
-3.62
-5.74
-7.27
-8.68
-9.75
-13.39
-14.64
-14.89
-14.85
-14.77
-14.84
-14.85

q1 [-]
0.53
0.99
1.14
1.79
0.92
-0.25
-0.69
-1.96
-2.12
-2.01
-1.97
-1.91
-1.97
-1.97

q2 [-]

116
C Fillet

C.4 Three summations

117

C.4 Three summations

Figure C.16: v. Mises stress in 1D

118

C Fillet

Figure C.17: v. Mises stress in 2D

Figure C.18: v. Mises stress in 3D

C.4 Three summations

119

Figure C.19: The error of the solution as a function of iteration number for the nonlinear
solver

120

C Fillet

Figure C.20: The error of the solution as a function of iteration number for the optimization
solver

6.84
6.86
5.43
5.09
4.90
4.64
4.49
4.23
4.05
3.98
3.99
4.01
4.02
4.02
4.03
4.02
4.02
4.02
4.02

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

191.89
191.23
188.88
187.57
187.00
186.81
186.64
186.56
186.50
186.48
186.45
186.45
186.44
186.44
186.45
186.44
186.44
186.44
186.44

Ut ot [kJ]
10.29
10.24
10.04
9.93
9.88
9.86
9.85
9.84
9.84
9.84
9.84
9.84
9.84
9.84
9.84
9.84
9.84
9.84
9.84

U [J/m3 ]
525.00
524.99
524.83
524.76
524.87
524.91
524.99
525.00
525.00
524.99
525.00
525.00
525.00
525.00
525.00
525.00
525.00
525.00
525.00

Area [m2 ]
0.71
1.55
7.78
14.53
19.43
23.44
25.50
28.60
31.92
34.73
35.35
35.33
35.24
35.14
34.86
35.09
35.05
35.01
35.07

p1 [-]
-0.40
-0.84
-3.26
-5.69
-7.20
-8.38
-8.66
-8.76
-8.52
-8.09
-7.88
-7.71
-7.65
-7.64
-7.50
-7.63
-7.63
-7.61
-7.63

p2 [-]

Table C.21: Values for each iteration during optimization

vM,max [MPa]

Iteration #
-0.33
-0.68
-2.98
-6.22
-7.29
-8.16
-8.95
-10.98
-13.89
-16.79
-17.64
-17.99
-18.02
-17.97
-18.02
-17.95
-17.91
-17.93
-17.93

q1 [-]
0.51
0.96
1.81
1.00
1.47
0.72
0.20
-1.05
-2.46
-3.57
-3.67
-3.52
-3.48
-3.47
-3.43
-3.46
-3.45
-3.45
-3.46

q2 [-]
0.28
0.44
-1.18
1.26
0.63
0.74
0.63
0.14
-0.55
-1.18
-1.25
-1.16
-1.13
-1.12
-1.10
-1.12
-1.13
-1.13
-1.12

q3 [-]

C.4 Three summations


121

122

C.5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36

C Fillet

Four summations

============================================================
Optimization Solver 1 in Solver 2 started at 24-jun -2014 01:03:00.
Optimization solver ( SNOPT)
Analytic gradient with the adjoint method .
Itns Major Minor
Step nPDE
Error Objective
5
0
5
1
0.521 1.919e+05
6
1
1
0.13
2
0.506 1.912e+05
7
2
1
0.17
3
0.399 1.888e+05
8
3
1
0.49
4
0.192 1.875e+05
9
4
1
1.00
5
0.0653 1.871e+05
10
5
1
1.00
6
0.138 1.868e+05
11
6
1
1.00
7
0.048 1.867e+05
12
7
1
1.00
8
0.0251 1.866e+05
13
8
1
1.00
9
0.0278 1.865e+05
14
9
1
1.00
10
0.022 1.865e+05
15
10
1
1.00
11
0.025 1.867e+05
16
11
1
0.38
13
0.0182 1.865e+05
17
12
1
1.00
14
0.0153 1.864e+05
18
13
1
1.00
15
0.018 1.864e+05
19
14
1
1.00
16
0.0107 1.864e+05
20
15
1
1.00
17
0.000933 1.864e+05
21
16
1
1.00
19
0.00347 1.864e+05
22
17
1
1.00
20
0.0013 1.864e+05
23
18
1
1.00
22
0.0031 1.864e+05
24
19
1
0.32
24
0.000521 1.864e+05
25
20
1
1.00
26
0.00098 1.864e+05
26
21
1
0.01
30
0.0004 1.864e+05
27
22
1
0.00
34
7.01e -05 1.864e+05
Number of optimization variables :
6.
Number of objective function evaluations :
36.
Number of Jacobian evaluations :
34.
Final objective function value : 186426.2261.
Optimality conditions satisfied .
Optimization Solver 1 in Solver 2: Solution time: 28 s
Physical memory : 879 MB
Virtual memory : 5299 MB

C.5 Four summations

123

Figure C.22: v. Mises stress in 1D

Figure C.23: v. Mises stress in 2D

124

C Fillet

Figure C.24: v. Mises stress in 3D

Figure C.25: The error of the solution as a function of iteration number for the nonlinear
solver

C.5 Four summations

125

Figure C.26: The error of the solution as a function of iteration number for the optimization
solver

7.01
7.10
5.66
5.31
5.18
4.96
4.78
4.57
4.18
4.04
3.95
3.88
3.90
3.91
3.92
3.92
3.91
3.91
3.92
3.91
3.91
3.91
3.91

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

191.86
191.17
188.84
187.46
187.13
186.83
186.67
186.61
186.54
186.50
186.66
186.45
186.44
186.43
186.43
186.43
186.43
186.43
186.43
186.43
186.43
186.43
186.43

Ut ot [kJ]
10.29
10.23
10.04
9.92
9.89
9.87
9.85
9.85
9.84
9.84
9.86
9.84
9.84
9.84
9.84
9.84
9.84
9.84
9.84
9.84
9.84
9.84
9.84

U [J/m3 ]
525.00
524.99
524.83
524.86
524.90
524.91
524.98
524.99
525.00
525.00
524.93
525.00
525.00
525.00
525.00
525.00
525.00
525.00
525.00
525.00
525.00
525.00
525.00

Area [m2 ]
0.63
1.47
7.60
13.48
18.07
22.70
25.01
26.90
30.08
31.46
37.63
34.59
35.80
36.79
37.58
37.75
37.87
38.03
38.25
38.07
37.99
38.04
38.07

p1 [-]
-0.36
-0.78
-3.18
-5.01
-6.43
-7.69
-8.23
-8.54
-8.75
-8.60
-7.60
-8.11
-7.94
-7.80
-7.73
-7.75
-7.87
-7.85
-7.77
-7.83
-7.84
-7.82
-7.83

p2 [-]
-0.30
-0.64
-3.06
-5.81
-7.81
-9.07
-9.71
-10.43
-12.16
-13.35
-19.39
-16.44
-17.73
-18.74
-19.50
-19.58
-19.44
-19.59
-19.91
-19.67
-19.58
-19.66
-19.67

q1 [-]

Table C.27: Values for each iteration during optimization

vM,max [MPa]

Iteration #
0.45
0.91
2.65
1.70
1.50
1.25
0.59
-0.07
-1.69
-2.37
-5.69
-3.64
-3.71
-4.04
-4.40
-4.47
-4.49
-4.53
-4.62
-4.54
-4.50
-4.54
-4.54

q2 [-]
0.25
0.35
-0.77
0.30
1.77
1.17
1.24
1.01
0.07
-0.54
-3.37
-1.69
-1.69
-1.76
-1.80
-1.83
-1.85
-1.86
-1.90
-1.87
-1.86
-1.87
-1.87

q3 [-]
0.46
0.75
-0.16
1.04
0.21
0.75
0.76
0.65
0.22
-0.11
-1.58
-0.75
-0.71
-0.64
-0.56
-0.57
-0.60
-0.60
-0.60
-0.60
-0.60
-0.60
-0.60

q4 [-]

126
C Fillet

C.6 Five summations

C.6 Five summations


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39

============================================================
Optimization Solver 1 in Solver 2 started at 24-jun -2014 00:57:39.
Optimization solver (SNOPT )
Analytic gradient with the adjoint method .
Itns Major Minor
Step nPDE
Error Objective
6
0
6
1
0.487 1.919e+05
7
1
1
0.12
2
0.494 1.911e+05
8
2
1
0.18
3
0.429 1.888e+05
9
3
1
0.49
4
0.164 1.875e+05
10
4
1
1.00
5
0.13 1.876e+05
11
5
1
0.44
7
0.0877 1.869e+05
12
6
1
1.00
8
0.0705 1.868e+05
13
7
1
1.00
9
0.037 1.866e+05
14
8
1
1.00
10
0.0204 1.866e+05
15
9
1
1.00
11
0.0247 1.866e+05
16
10
1
1.00
12
0.0477 1.865e+05
18
11
2
1.00
13
0.0358 1.867e+05
20
12
2
0.46
15
0.0186 1.864e+05
21
13
1
1.00
16
0.0069 1.864e+05
22
14
1
1.00
17
0.00557 1.864e+05
24
15
2
1.00
18
0.00301 1.864e+05
25
16
1
1.00
19
0.00166 1.864e+05
26
17
1
1.00
20
0.00122 1.864e+05
28
18
2
1.00
22
0.00488 1.864e+05
30
19
2
0.32
24
0.00105 1.864e+05
31
20
1
1.00
26
0.0016 1.864e+05
32
21
1
0.23
28
0.000186 1.864e+05
33
22
1
1.00
30
0.00141 1.864e+05
34
23
1
0.30
32
0.000146 1.864e+05
35
24
1
1.00
34
0.000281 1.864e+05
36
25
1
0.06
39
5.23e -05 1.864e+05
Number of optimization variables :
7.
Number of objective function evaluations :
41.
Number of Jacobian evaluations :
39.
Final objective function value : 186418.0779.
Optimality conditions satisfied .
Optimization Solver 1 in Solver 2: Solution time: 33 s
Physical memory : 860 MB
Virtual memory : 5283 MB

127

128

C Fillet

Figure C.28: v. Mises stress in 1D

Figure C.29: v. Mises stress in 2D

C.6 Five summations

129

Figure C.30: v. Mises stress in 3D

Figure C.31: The error of the solution as a function of iteration number for the nonlinear
solver

130

C Fillet

Figure C.32: The error of the solution as a function of iteration number for the optimization
solver

7.11
7.22
5.53
5.38
6.36
5.18
4.88
4.86
4.73
4.36
4.19
3.80
3.85
3.84
3.84
3.85
3.86
3.86
3.86
3.86
3.86
3.86
3.86
3.86
3.86
3.86

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

191.85
191.15
188.82
187.47
187.56
186.87
186.84
186.60
186.58
186.56
186.49
186.66
186.43
186.42
186.42
186.42
186.42
186.42
186.42
186.42
186.42
186.42
186.42
186.42
186.42
186.42

Ut ot [kJ]
10.29
10.23
10.04
9.92
9.92
9.87
9.87
9.85
9.85
9.85
9.84
9.86
9.84
9.84
9.84
9.84
9.84
9.84
9.84
9.84
9.84
9.84
9.84
9.84
9.84
9.84

U [J/m3 ]
525.00
524.99
524.81
524.85
524.83
524.91
524.86
525.00
525.00
524.98
525.00
524.90
525.00
525.00
525.00
525.00
525.00
525.00
525.00
525.00
525.00
525.00
525.00
525.00
525.00
525.00

Area [m2 ]
0.58
1.43
7.90
13.96
19.92
20.51
25.93
26.07
26.30
27.89
29.70
40.00
36.59
38.36
39.80
40.00
40.00
40.00
39.71
40.00
40.00
40.00
40.00
40.00
40.00
40.00

p1 [-]
-0.36
-0.82
-3.38
-5.29
-7.10
-7.34
-8.80
-8.64
-8.43
-7.90
-7.82
-6.55
-7.45
-7.60
-7.69
-7.69
-7.68
-7.65
-7.49
-7.60
-7.67
-7.61
-7.56
-7.60
-7.67
-7.60

p2 [-]
-0.31
-0.67
-3.06
-6.05
-8.09
-8.19
-9.59
-9.75
-10.30
-12.36
-13.69
-22.74
-19.04
-20.09
-20.99
-21.16
-21.20
-21.24
-21.31
-21.33
-21.22
-21.31
-21.41
-21.34
-21.22
-21.33

q1 [-]

Table C.33: Values for each iteration during optimization

vM,max [MPa]

Iteration #
0.43
0.91
2.72
1.92
0.60
0.87
0.43
0.16
-0.26
-1.54
-2.17
-6.44
-4.45
-4.81
-5.19
-5.28
-5.27
-5.27
-5.25
-5.28
-5.23
-5.27
-5.28
-5.27
-5.25
-5.27

q2 [-]
0.22
0.32
-0.56
0.42
1.66
1.61
0.99
1.10
1.00
0.36
-0.18
-4.01
-2.13
-2.31
-2.48
-2.49
-2.44
-2.44
-2.46
-2.46
-2.43
-2.46
-2.48
-2.46
-2.42
-2.46

q3 [-]
0.43
0.68
-0.03
0.46
2.39
0.89
1.07
1.01
0.87
0.37
0.13
-1.84
-0.97
-1.06
-1.11
-1.09
-1.03
-1.03
-1.01
-1.04
-1.04
-1.03
-1.04
-1.04
-1.02
-1.03

q4 [-]
0.32
0.45
-0.61
0.77
-0.77
0.32
0.91
0.80
0.62
0.18
0.09
-0.87
-0.41
-0.43
-0.42
-0.41
-0.38
-0.38
-0.40
-0.39
-0.38
-0.39
-0.40
-0.39
-0.37
-0.39

q5 [-]

C.6 Five summations


131

132

Bibliography
[1]

S. Arnout, M. Firl, and K.-U. Bletzinger, Parameter free shape and thickness optimisation
considering stress response, STRUCTURAL AND MULTIDISCIPLINARY OPTIMIZATION, vol. 45, no. 6, pp. 801814, 2012.

[2]

C. Le, T. Bruns, and D. Tortorelli, A gradient-based, parameter-free approach to shape


optimization, COMPUTER METHODS IN APPLIED MECHANICS AND ENGINEERING, vol. 200, no. 9-12, pp. 985996, 2011.

[3]

Y. Ohtake, A. Belyaev, and I. Bogaevski, Mesh regularization and adaptive smoothing,


COMPUTER-AIDED DESIGN, vol. 33, no. 11, pp. 789800, 2001.

[4]

J. A. Samareh, A survey of shape parameterization techniques, CASI, 1999.

[5]

Autodesk Inc., Multi-Point Constraints (Linear. http://download.autodesk.com/


us/algor/userguides/mergedProjects/setting_up_the_analysis/linear/loads_
and_constraints/multi-point_constraints_(linear).htm, 2014. [Online; accessed
16-June-2014].

[6]

S. D. Rajan, A. D. Belegundu, and J. Budiman, An integrated system for shape optimal


design, Computers and Structures, vol. 30, no. 1-2, pp. 337346, 1988.

[7]

P. Pedersen, L. Tobiesen, and S. Jensen, Shapes of orthotropic plates for minimum energy concentration, MECHANICS OF STRUCTURES AND MACHINES, vol. 20, no. 4,
pp. 499514, 1992.

[8]

S. Lewanowicz and P. Wozny, Generalized bernstein polynomials, BIT NUMERICAL


MATHEMATICS, vol. 44, no. 1, pp. 6378, 2004.

[9]

M. H. Straathof, Shape Parameterization in Aircraft Design: A Novel Method, Based on


B-Splines. Phd thesis, Delft Universty of Technlogy.

[10] COMSOL, Optimizing the Shape of a Horn. Version 4.4, COMSOL, 2013.
[11] COMSOL, COMSOL Multiphysics - reference manual. Version 4.4, COMSOL, 2013.
[12] J. Akin, What is a Fixed Support? Rice University, 2006.
[13] P. Pedersen, Optimal Desings - Structures and Materials - Problems and Tools. Technical
University of Denmark, 2003.
[14] S. Riehl, J. Friederich, M. Scherer, R. Meske, and P. Steinmann, On the discrete variant
of the traction method in parameter-free shape optimization, Comput. Methods Appl.
Mech. Engrg., 2014.

Das könnte Ihnen auch gefallen