Content uploaded by Yi Min Xie
Author content
All content in this area was uploaded by Yi Min Xie on Jun 15, 2021
Content may be subject to copyright.
Content uploaded by Yi Min Xie
Author content
All content in this area was uploaded by Yi Min Xie on May 10, 2021
Content may be subject to copyright.
1
Article published in
Computer Methods in Applied Mechanics and Engineering, Vol. 381, 113829, 2021
A Reaction Diffusion-based Level Set Method Using Body-fitted Mesh for Structural
Topology Optimization
Zicheng Zhuang, Yi Min Xie, and Shiwei Zhou*
Centre for Innovative Structures and Materials, School of Engineering, RMIT University, GPO
Box 2476, Melbourne 3001, Australia
* Corresponding author, E-mail address: shiwei.zhou@rmit.edu.au
Abstract
The level set method can express smooth boundaries in structural topology optimization
with the level set function’s zero-level contour. However, most applications still use
rectangular/hexahedral mesh in finite element analysis, which results in zig-zag interfaces
between the void and solid phases. We propose a reaction diffusion-based level set method
using the adaptive triangular/tetrahedral mesh for structural topology optimization in this work.
Besides genuinely expressing smooth boundaries, such a body-fitted mesh can increase finite
element analysis accuracy. Unlike the traditional upwind algorithm, the proposed method
breaks through the constraint of Courant–Friedrichs–Lewy stability condition with an updating
scheme based on finite element analysis. Numerical examples for minimum mean compliance
and maximum output displacement at specified positions, in both 2D and 3D, converge within
dozens of iterations and present elegant structures.
Keywords: Topology optimization, Adaptive triangular/tetrahedral mesh, Level set method,
Reaction-diffusion method
2
1 Introduction
Structural topology optimization aims to extremize the mechanical or physical properties
such as stiffness [1, 2], thermal conduction [3-5], or specified displacement [6, 7] under one or
more constraints via designing the layout of materials within a given domain. It was studied as
early as 1904 when Australian inventor Michell designed the lightest truss via theoretical
analysis [8]. However, this method was not used in engineering until the maturity of finite
element analysis in the 1980s. In the last few decades, several techniques like the
homogenization method [9], the solid isotropic microstructure with penalization (SIMP)
method [10, 11], the evolutionary structural optimization (ESO) method [2, 12], the bi-
directional evolutionary structural optimization (BESO) method [13, 14], the level set method
[15-17], and the phase-field method [18-20] have been developed and widely used in aerospace
[21, 22], bio-chemical [23, 24], mechanical [25, 26], and structural engineering [27, 28].
The pointwise method in structural topology optimization expresses the solid and void
materials using the local density ρ=1 and ρ=0 in a rectangular element. Although intuitive and
straightforward, this method possibly renders non-realistic material expressions like 0<ρ<1. It
also essentially results in zig-zag boundaries because the pixels cannot represent the smooth
curves in an arbitrary shape. The zero-level contour of the level set method can generate smooth
boundaries by interpolating the discrete level set value in structural topology optimization [29,
30]. However, the finite element analysis and level set function updating cannot directly follow
the piecewise linear boundary. Many researchers proposed various methods to solve this
problem, including the feature mapping methods that employ a continuous implicit equation to
describe the level set function [31, 32]. Alternatively, fancy numerical integration schemes or
additional analysis degrees of freedom (as in XFEM techniques [32, 33]) for a discrete set of
level set value can be employed. An interpolation procedure to materialize elements across
boundaries can also be used to avoid jagged boundaries [34, 35]. However, the sensitivity
analysis in XFEM is too complicated because of numerical integration over material
subdomains [32]. Also, the ersatz material with interpolated properties releases the 0/1
constraint and generates the gray-scale area.
Non-rectangular elements such as the polygon and the triangle in structural topology
optimization can express higher-quality boundaries, obtain flexibility in the automated
discretization [36], handle large deformations [37], and make optimized structures practical in
the manufacture [38]. The dynamic mesh adaption method [39], which includes the adaptive
mesh refinement method [40-42] and the adaptive moving mesh method [43, 44], was proposed
to represent the design domain to increase the accuracy. Liu and Korvink [45] increased the
adaptive mesh density around the material boundaries to improve boundary smoothness and
reduce the computational cost for excessive finite element analysis. Meanwhile, the zero-level
contour of the level set function still traverses numerous elements, which leads to artificial
material expression. Otomori et al. [46] have used the adaptive triangular mesh in the reaction
diffusion-based level set method to calculate electric potentials accurately for the electrostatic
optimization problem. However, the level set function is still updated based on the fixed
structured mesh. Recently, Kim et al. [41] presented a FreeFEM++ code for reaction-diffusion
equation-based topology optimization. Adaptive triangular mesh refinement and a gradual
decrease of the diffusion coefficient were employed to achieve a high quality of the material
boundary. Although the mesh around the boundaries is exceptionally refined, the phase-field
method used in their work cannot generate clear material boundaries like the level set method.
3
Christiansen et al. proposed the deformable simplicial complex method to ensure that the well-
formed mesh is generated in 2D minimum compliance problems [47], 3D structures [48], and
2D minimum stress design [49]. Although it does not involve a level set scheme, it uses the
body-fitted mesh for finite element analysis and shape representation. A meshfree method for
the numerical simulation of bubbles moving in an incompressible viscous fluid [50] seeks to
capture the moving interface. Nevertheless, the meshfree method still faces technical issues,
including the numerical integrations for meshfree weak-form methods and massive parameter
choices [51]. This method does not employ the reaction-diffusion equation to update the level
set function, making the meshfree method require hundreds of iterations to convergence.
Inspired by pioneering studies [52-54], we develop a reaction diffusion-based level set
(RDLS) method in the adaptive triangular/tetrahedral mesh to maximize the mean compliance
and minimize the output displacement at specified points. The geometric representation and
the finite element analysis employ the same body-fitted mesh. The distance from the element
to the nearest node on the boundaries determines the element edge length across the design
domain. As such, the extremely fine mesh around the contour can elegantly express the
smoothness of boundaries. Meanwhile, finite element analysis efficiency improves because the
coarser mesh is distributed in the region far away from the boundaries. Integrated with the
RDLS method, the body-fitted mesh can also precisely capture the material boundaries and
considerably improve material representation accuracy. Compared to the classic RDLS method
in the fixed rectangular/hexahedral mesh, the proposed method provides a more accurate
material representation for finite element analysis. On the other hand, the fictitious interface
energy term in the objective function makes it possible to update the level set function using
finite element analysis [55, 56]. Unlike the traditional upwind scheme [57-59], the restraint to
the time step due to the Courant–Friedrichs–Lewy (CFL) stability condition is invalid in the
RDLS method [60, 61]. Thus, the large time step can be used to reduce the number of iterations
[62]. The fictitious interface energy term, together with the interception of the level set function
in {-1,1} regularizes the level set function, making the level set function re-initialization
unnecessary [53]. Moreover, the diffusion coefficient can control the optimized structure’s
geometrical complexity [52]. Besides, the RDLS method weakens the dependency on initial
configurations [63] of the design domain.
Although the bidirectional method [64] can control the optimization direction to calculate
the Lagrange multiplier of the volume constraint by reducing or adding materials, it needs
hundreds of iterations towards convergence. Also, the volume fraction of the optimized
structures has a 1% margin of error to the prescribed value due to the artificial parameters
utilized in the augmented Lagrangian method [41]. This paper updates the Lagrange multiplier
by a bi-section method to increase the accuracy and boost the convergence, significantly
decreasing the volume error to 0.01%. Furthermore, the volume fraction can be user-defined,
reducing the iterations to converge than the traditional method.
The remainder of the paper is organized as follows. Section 2 describes the fundamental
theories of the RDLS method used for topology optimization. Section 3 introduces the adaptive
body-fitted mesh and level set function updating scheme. Numerical examples in two
dimensions (2D) demonstrate the proposed approach’s features for minimization of mean
compliance and the optimum design of compliant mechanisms in Section 4. Examples in three
dimensions (3D) are displayed in Section 5. Compared to the original RDLS algorithm and the
BESO algorithm [65, 66], elegant structures with smoother boundaries and better objective
function value can be obtained within dozens of iterations. The conclusion of this work is in
Section 6. The element matrices required for finite element analysis and reaction-diffusion
4
algorithm are derived in MATLAB using a symbolic calculation, whose codes are attached in
the appendix.
2. Reaction diffusion-based level set algorithm
2.1 Optimization problem statement
The structural topology optimization method considered in this paper intends to find the
optimal material distribution in a fixed bounded domain D⊂ℝn (n=2 or 3) to extremize the
performance of structures under volume constraints. The design domain D is composed of the
material domain Ω⊂D (the dark gray region in Fig. 1) occupied by an isotropic linear elastic
material and the void domain D\Ω (the white region in Fig. 1). The boundary
Γ
of the material
domain Ω comprises the Dirichlet boundary ΓD with fixed displacement u0, the non-
homogeneous Neumann boundary
Γ
N with imposed surface traction load g, and the
homogeneous Neumann boundary ΓH [67]. We assume that the Dirichlet boundary and the non-
homogeneous Neumann boundary are fixed in the optimization problem.
Fig. 1. Schematic of the optimization problem with the design domain D, material domain Ω,
void domain D\Ω, the Dirichlet boundary ΓD with the fixed displacement u0, the non-
homogeneous Neumann boundary
Γ
N with imposed surface traction load g, and the
homogeneous Neumann boundary ΓH.
In this work, the volume and surface loads are applied to the design domain D and non-
homogeneous Neumann boundary
Γ
N, represented by two arbitrary functions fa and fb,
respectively. According to Hooke’s law, the displacement field u complies with the equation
of elasticity, given as:
0
div( ( )) ( ) in
on
( ) ( ) on
( ) 0 on
a
D
bN
H
fD
f
Γ
Γ
Γ
−=
=
⋅=
⋅=
σu x, u
uu
σu n x, u
σun
(1)
5
where x represents a point located in design domain D, and n represents outward normal to the
boundary. The stress tensor σ(u) can be calculated based on Hooke’s law, given as:
2
()= :() 2 () tr(())
µ
= +
σuCεuεuεuΙ
1
μ
(2)
where the strain tensor ε(u)=0.5(∇u+(∇u)T), and C represents the fourth-order elasticity tensor.
μ1 and μ2 are the Lamé coefficients related to Young’s modulus E and Poisson’s ratio v. tr(ε(u))
represents the trace of the strain tensor ε(u).
In general, a typical optimization problem with an objective functional F(Ω) under a volume
constraint functional G can be defined as:
max
inf() () ()
subject to ( ) ( ) 0
N
a bN
D
d
D
F fd fd
G fdV
Γ
Ω
ΩΩΓ
ΩΩ
= +
= −≤
∫∫
∫
x, u x, u
x
(3)
Herein an unequal volume constraint G(Ω)≤0 is included to restrict the set of admissible shapes,
fd is the density function. Vmax represents the upper limit value of the volume. The void domain
has been defined as minimal density in this paper.
In order to transfer the above problem into a material distribution problem, a characteristic
function χΩ∈L2 is introduced, which is defined as below:
( ) = 1 if
( )= 0 if \D
Ω
Ω
χΩ
χΩ
∈
∈
xx
xx
(4)
Then the optimization problem can be expressed as:
max
inf ( ()) ( ) () ( ) ()
subject to ( ( )) ( ) 0
N
a bN
D
D
F f df d
G dV
Ω
ΩΩ Ω
Γ
χ
ΩΩ
χ χΩ χΓ
χ χΩ
= +
= −≤
∫∫
∫
x x, u x x, u x
xx
(5)
However, it should be noticed that the optimization problem described in Eq. (5) is ill-posed
because of the discontinuity of optimized configurations expressed by the characteristic
function. Hence, a fictitious interface energy term derived from the phase-field model [18] is
included in the objective function to relax the design domain as a regularization technique.
2.2 The level set model formulation
The level set method is regarded as a universal and effective method in computing and
analyzing the motion of the boundary Γ of the material region Ω [15]. The embedded level set
function φ(x): R3→R determines the structural boundary Γ using an isosurface of a scalar value
R [68]. As we can see, the boundaries Γ in Fig. 2(a) are implicitly represented by the zero-level
contour of a high-dimensional level set function φ(x) displayed in Fig. 2(b). These interfaces
separate the design domain into the solid material region Ω with φ(x)>0 and the void region
D\Ω with φ(x)<0.
6
Fig. 2. (a) The material distribution in the design domain D; (b) Level set function φ(x) cut by
the zero-level plane.
We capture the interface Γ between the material domain and the void domain as the zero-
level contour of the level set function φ by updating the embedded scalar function φ. Material
domain and void domain can also be identified according to the value of the scalar function φ
as follows:
( ) 0
( ) 0 \
( ) 0 \D
ϕΩ
ϕ ΩΩ
ϕΩ
= ∀ ∈∂
> ∀∈ ∂
< ∀∈
xx
xx
xx
(6)
where φ(x) is the value of the level set function that defines the characteristic function χφ. The
elements passing through the zero-level contour in the finite element scheme result in an
intermediate-density material expression, significantly affecting the material boundary
expression accuracy and smoothness.
For regularizing the optimization problem, upper and lower limits (1 and -1) on φ are
applied, and the characteristic function χφ can be defined as:
( ( )) 1 if 1 ( ) 0
( ( )) 0 if 0 ( ) 1
ϕ
ϕ
χϕ ϕ
χϕ ϕ
= ≥≥
= > ≥−
xx
xx
(7)
Compared to the conventional surface model, this level set model can easily represent the
complicated shapes with a clear and smooth boundary. A level set-based topology optimization
can be defined in Eq. (8) considering the fictitious interface energy term.
2
max
1
inf ( ( ), ) ( , , ( )) ( , , ( )) 2
s.t. ( ()) () 0
N
d a bN
DD
D
F f df d d
G dV
ϕ
ϕϕ ϕ
Γ
χ
ϕϕ
χϕϕ χϕ Ω χϕ Γ τ ϕ Ω
χϕ χϕ Ω
= + −∇
= −≤
∫∫ ∫
∫
xu xu
(8)
7
where 1/2
τ
|∇
ϕ
|2 is the fictitious interface energy term that can relax the design domain as a
regularization technique, which is also called diffusion term.
τ
is the diffusion coefficient
determining the degree of the optimized structure’s geometrical complexity. Fd represents the
objective functional with fictitious interface energy term. Then, Lagrange’s method of
undetermined multipliers can be expressed as follows:
max
inf ( (),) ( (), ) ( () )
dd D
F F dV
ϕϕ ϕ
ϕ
χϕϕ χϕϕ λ χϕ Ω
=+−
∫
(9)
where
F represents the Lagrangian and λ is the Lagrange multiplier of the volume constraint.
The optimization problems must meet the following criteria based on KKT (Karush-Kuhn-
Tucker) conditions [69]:
( ( ), ) , 0, 0, ( ( )) 0, ( ( )) 0
d
f
dF
F GG
d
ϕ
ϕϕ
χϕϕ ϕ λ χϕ λ χϕ
ϕ
= =≥≤ =
(10)
where
Ff is the Fréchet derivative of the regularized Lagrangian
Fd. According to previous
research [52], the level set function that perfectly satisfies the KKT conditions is hard to solve
directly. Thus, we introduce a fictitious time t and time evolutional equations to replace the
above optimization problem, implicitly obtaining the updated level set function’s candidate
solutions.
2.3 Time evolution equation
Conventionally, using the upwind scheme, the evolution of the level set boundary
concerning fictitious time t is tracked by solving Hamilton-Jacobi partial differential equation.
This method is based on the shape sensitivities [17], where a time evolution equation is
expressed as follows:
(,) ( ,) ( ,) 0 in
N
tVt t D
t
ϕϕ
∂+ ∇=
∂
xxx
(11)
where VN is the normal velocity function derived from a smoothed shape derivative of solid
domain Ω.
However, Allaire et al. [70] pointed out that this method is a shape optimization method,
making optimized configurations heavily dependent on the initial configurations. Besides, a re-
initiation procedure is necessary for each iteration. For accelerating convergence and avoiding
the re-initiation procedure, the time evolution of the boundary is tracked by solving the
reaction-diffusion equation instead of Eq. (11) in this paper. The variation of the level set
function is assumed to be proportional to the gradient of
Fd, as shown below:
(,)
dd
tFF
t
ϕα
∂′′
=−=−
∂
x
(12)
where α is a positive proportional coefficient, setting as α=1 based on previous work in [53].
The variation of level set function
ϕ
to the fictitious time t must equal the negative Gâteaux
derivative of the objective functionalFd to achieve the ideal objective functional. Thus, we
get:
8
22
(,) ( )
d
tFF F
t
ϕβ τϕ β τϕ
∂′′ ′
=− =− −∇ =− +∇
∂
x
(13)
It should be mentioned that F’ in the above equation denotes the gradient of Lagrangian F
without the fictitious interface energy term. β is a positive parameter to normalize the
sensitivity. Moreover, we assume that the boundary condition on the design domain exterior
boundaries is a Dirichlet boundary condition ΓD, given as:
2
(,) in
0 on
tFD
t
D
ϕβ τϕ
ϕ
∂
′
=− +∇
∂
∂
= ∂
∂
x
n
(14)
2.4 Reaction-diffusion equation
Yamada et al. proposed an effective scheme [53] to implement the reaction diffusion-based
method into the finite element framework of a fixed rectangular mesh, which delivers sufficient
smoothness and numerical stability. The parameter to normalize the sensitivity β can be defined
as:
D
D
d
Fd
Ω
βΩ
=′
∫
∫
(15)
Note that Eq. (13) is a reaction-diffusion equation that can ensure boundary smoothness.
Then, in order to obtain the appropriate value of ∂
ϕ
(x,t) /∂t, the time direction is utilized to
discretize Eq. (13), as shown below:
2
( ) () ( ( ) )
tt t tt F
t
ϕϕ
τϕ β
+∆ − ′
= ∇ +∆ −
∆
(16)
where ∆t is the step for fictitious time t. Next, Eq. (16) introduces a functional space
ψ
:
2
( ) ()
( ( )) ( )
tt t
tt F
tt
ϕϕ
τϕ ψ β ψ
+∆ ′
− ∇ +∆ = − +
∆∆
(17)
where
ψ
is the functional space mathematically defined by
1
( ) ( ) ( ) with 0 on HD D
ϕ
ψ ϕϕ
∂
=∈=∂
∂
xx n
(18)
where H1 is the Sobolev space of order one on D. By applying the Green’s formula method, Eq.
(17) can be expressed in the weak form as follows:
( ) ()
( ) ( )
T
DD D
tt t
dD t t dD F dD
tt
ϕϕ
ψτϕψβψ
+∆ ′
+ ∇ +∆ ∇ = − +
∆∆
∫∫ ∫
(19)
which can also be written as Eq. (20) in the finite element framework of the adaptive
triangular/tetrahedral mesh to update the level set function
ϕ
(t+∆t):
9
11
()
( ) ( ) ( )
ee
T
NE NE
TT
ee
VV
ee
t
dV t t F dV
tt
ϕ
τϕ β
= =
′
+ ∇ ∇ +∆ = − +
∆∆
∫∫
NN N N NN
(20)
where e represents the element number, Ve is the volume of element, and NE represents the
total number of elements, including solid elements and void elements. ∪e=1NE is the union set
of all elements, and N represents the shape function matrix of the adaptive
triangular/tetrahedral mesh. In the proposed method, the global stiffness matrix K and global
reaction-diffusion matrices NTNg, ∇TN∇Ng must be derived for the finite element analysis and
level set function updating scheme.
In the 2D conditions, the derivations of element stiffness matrix Ke and the element
matrices NTNe, ∇TN∇Ne calculated from the vertex coordinates are provided in Appendix A.
We utilize the symbolic calculation in MATLAB to derive the element matrices (Ke, NTNe, and
∇TN∇Ne) for a representative triangular element, which is applicable to general elements by
inputting their vertex coordinates. The code is attached in Appendix B. Combined with the
node coordinates, global stiffness matrix K, and global reaction-diffusion matrices NTNg,
∇TN∇Ng can be assembled by a similar method to previous literature [52]. The global matrices
T and R can be described as:
1
1
11
( ) =
() ()
= ( ) ( )
NE
TT T T
e eg g
e
NE
TT
eg
e
tt
tt
FF
tt
ττ
ϕϕ
ββ
=
=
= + ∇∇ + ∇∇
∆∆
′′
−+ = −+
∆∆
T NN N N NN N N
R NN NN
(21)
Herein we assume ∆t=0.1. Finally, we update the level set function at t+∆t as:
()tt
ϕ
+∆ =TR
(22)
3. Numerical implementation
3.1 2D Adaptive triangular mesh generation
The most attractive advantage of the level set-based topology optimization is the smooth
and clear material boundaries represented by the zero-level contour. In previous literature, the
discrete level set function value is usually interpolated into a non-body fitted mesh, which
generates zig-zag boundaries and affects the accuracy. In this work, an adaptive triangular mesh
[71] is employed to eliminate the ambiguous expression of material distribution in the 2D
conditions. Assuming the initial mesh obtained from the standard Delaunay algorithm as a truss
structure, the nodes will gradually move to the best location when the system gets into its
balanced state. This project improves this triangulation algorithm by including the points on
the zero-level set function’s contour into the node-set. In the meantime, the edge length should
be positively proportional to the distance to the nearest boundary to generate dense triangles
along the boundaries. In this paper, the body-fitted mesh is regenerated after the level set
function updating scheme to precisely capture the zero-level set contour.
10
Fig. 3. (a) Triangles with small angles generated from dense adjacent points; (b) the mismatch
between the contour and the mesh generated from sparse adjacent points; (c) the high-quality
mesh generated from evenly distributed adjacent points; (d) the high-quality body-fitted mesh
generated in the void domain of Fig. 2(a).
We use the contour function in MATLAB to capture the points on the zero-level contour.
However, as illustrated in Fig. 3(a), if the distance between neighboring points is too close, the
triangular elements around the boundaries will have a small internal angle, causing a singularity
problem in finite element analysis. If the distance between neighboring points is too far, the
generated adaptive mesh cannot precisely capture the boundary, as shown in Fig. 3(b). Thus, it
is necessary to create evenly distributed nodes on the contour by merging dense adjacent points
and inserting additional nodes between sparse adjacent points. The pseudocode in Algorithm 1
displays an idea to relocate the points on contour (mathematically represented as node-set C)
so that the adjacent points on the contour have the same distance. As shown in Fig. 3(c), when
these points are evenly distributed, the mesh quality can be significantly improved when
generating triangular mesh using the Delaunay triangulation method.
Algorithm 1 Reorganization of the nodes on the contour.
11
input: C, d
1
, d
2
Cd ← distance between neighboring points in C
for i = 1 : length(Cd)
if Cd(i) < d1
add Cmidpoint = (C(i)+C(i+1))/2 into C
remove C(i), C(i+1) from C
end if
if Cd(i) > d2
add Cmidpoint = (C(i)+C(i+1))/2 into C
end if
end for
output: C
Noted that d1 and d2 in Algorithm 1 represent the allowable minimal and maximal distance
between adjacent points in C, respectively.
After capturing mesh points on the contour, inspired by the study of Persson and Strang
[72], an adaptive triangular mesh can be generated based on mesh points (vertex nodes) and
triangulation. In their research, the node locations are found by solving equilibrium in a truss
structure. Based on these nodes, we iteratively reset the topology by the Delaunay algorithm.
The mesh generation procedure starts from regular-distributed nodes across the design domain.
Along with the fixed nodes on the contour, these nodes continually move to produce the good-
quality adaptive triangular mesh eventually. Divided up by the contour, the void and solid
domain can be determined directly without interpolation, represented by Mv and Ms,
respectively.
The mesh adaptivity depends on the element length (Lbar), which should be small around
the boundaries and large inside. Thus, it is positively proportional to the nearest distance
between the element centroid to the contour, mathematically represented as
min( , max( , ))
bar max min e
L L LL
γ
=
(23)
where γ is a positive coefficient, Le is the distance from the eth element centroid to the nearest
point on the contour. Lmax and Lmin represent the allowable maximal and minimal element edge
lengths. This method creates denser mesh around the boundaries and coarser mesh away from
the boundaries, saving the computational cost as the finite element analysis needs fewer
elements to obtain accurate deformation. Fig. 3(d) illustrates that this method can generate
high-quality adaptive triangular mesh for the void domain in Fig. 2(a). The algorithm can also
obtain the body-fitted mesh for the solid domain using the node-set C and the same method as
12
the void domain. We save the coordinates of each triangular element’s vertices for calculating
the stiffness matrix and shape function matrices.
3.2 Sensitivity interpolation
The adaptive body-fitted mesh generated in the design domain can achieve the accurate
level set function value in analysis and the smooth geometric representation at the same time.
We directly set zero as the level set value for the nodes captured on the contour. The denser
mesh density around the smooth zero level set can better describe the level set function than
the fixed rectangular mesh. The sensitivity analysis and the level set updating scheme are based
on the updated adaptive mesh, providing the smooth boundary without the post-processing
method like the pixelated results [29]. As the body-fitted mesh can directly determine the
updated material distribution without material interpolation, the finite element analysis is based
on the solid/void adaptive elements. We calculate the element sensitivity F’ according to the
objective functional, such as Eq. (30) and Eq. (36). As stated in Section 2.4, the level set
function and the sensitivity number on nodes are required to update the level set function in Eq.
(22) in the finite element framework. This paper adopts the triangulation-based cubic
interpolation scheme to calculate the sensitivity numbers from elements to nodes precisely.
Compared to the linear interpolation scheme that is only C0 continuous, C1 continuity is
guaranteed in the triangulation-based cubic scheme [73]. The scattered point set is triangulated
in this method. Each triangle from the original triangulation is further split into three small
triangles in the Clough-Tocher method. Then the cubic Bézier patch over the triangle is
constructed, as shown in Fig. 4(a). According to previous literature [73, 74], the interpolated
value φz at point Z can be calculated in triangle A1A2A3 as:
Z ,,
0 ,, 3
3
3!
(, , ) ! !!
l mn
lmn
lmn
lmn
o pq V op q
lmn
ϕ
≤≤
+ +=
=
∑
(24)
where Vl,m,n represent Bézier ordinates. (o,p,q) is the point Z’s barycentric coordinate. The
detailed derivations of Eq. (24) can be seen in the study of Amidror [73] and Peng et al. [74].
13
Fig. 4. (a) The cubic Bézier patch over the triangle A1A2A3; (b) sensitivity range extension
along the boundaries of a rectangular design domain.
The element sensitivity numbers obtained from the finite element analysis must be
interpolated to the nodes from the element centroid, as addressed above. However, to
effectively implement the triangulation-based cubic interpolation on the nodes around the
design domain’s outer boundary, an extension of the element sensitivity number range is
required. For instance, in a rectangular design domain, an extra round of sensitivity points is
added to ensure the interpolation accuracy with their value equal to the neighboring element
sensitivity points (pink) around the boundaries in the dark blue regions in Fig. 4(b).
3.3 3D Adaptive tetrahedral mesh generation
This section extends the proposed method into the 3D conditions to improve the practicality.
The adaptive tetrahedral mesh is adopted as a body-fitted mesh in the 3D condition to eliminate
the gray element appearance. We use the isosurface function in MATLAB to capture the points
around the zero-level surface to describe the smooth boundary. Inspired by the previous work
[72], we assume the initial mesh as a truss structure obtained from the standard Delaunay
algorithm. By fixing the points located around the material boundary, the nodes will gradually
move to the best location when the system gets into its balanced state. As illustrated in Fig. 5,
the material boundary between the solid and void domain (transparent) is clear and smooth
when we fix all nodes located on the zero isosurfaces. The generated tetrahedral mesh is
employed in the finite element analysis of the next iteration to increase accuracy and generate
smooth geometric representation without post-processing.
Fig. 5. The 3D adaptive tetrahedral mesh generated in the design domain.
The edge length of 3D tetrahedral elements in the design domain is uniform in this paper.
As displayed in Appendix C, the 3D tetrahedral element matrices Ke, NTNe, and ∇TN∇Ne, can
be obtained and saved in the format of the symbol in MATLAB. Same with the 2D problems,
the level set function is updated iteratively by applying Eq. (22). Section 5 displays the 3D
numerical examples using the body-fitted mesh.
3.4 The bi-section Lagrangian method
14
Another innovative method employed in this work is the bi-section scheme to achieve
volume constraint in the RDLS method. The Lagrange multiplier λ in F’ is calculated by the
bi-section method instead of the augmented Lagrangian method to increase the accuracy and
boost the convergence. The gap of optimized structure volume fraction to the prescribed value
can reduce to 0.01%. The volume fraction of each iteration can be user-defined so that
convergence can be achieved in fewer iterations than the conventional method. The pseudocode
listed in Algorithm 2 summarizes the approach to update the level set function based on the
reaction-diffusion equation. F’, Vmax, Ve, and x represent node sensitivity, volume constraint,
each element’s volume, and material distribution. λ1 and λ2 are the bottom and top values
defined in the bi-section method. Eq. (22) is employed to update the level set function
ϕ
to
ϕ
new
iteratively until meeting the volume constraint in this algorithm.
Algorithm 2 Reaction-diffusion based updating scheme.
input: F’,
ϕ
, V
max
, V
e
set λ1=0, λ2=109
while (λ2-λ1)/(λ1+λ2)>10-4
λ=(λ1+λ2)/2
(NTNg /∆t + τ ∇TN∇Ng)
ϕ
new = NTNg (β (-F’ -λ) +
ϕ
/∆t)
xnew ←
ϕ
new
if sum (xnew (Ve./sum(Ve))) > Vmax, λ1=λ; else λ2=λ
end if
end while
output:
ϕ
new
It is worth mentioning that there is no mesh generation procedure during the bi-section
scheme as it dramatically increases the computational cost. So, the objective function value
and the volume fraction of the optimized structure are calculated based on the current adaptive
triangular mesh. A new adaptive triangular/tetrahedral mesh is regenerated to capture the
updated level set function
ϕ
and material boundaries for the finite element analysis in the next
iteration. However, the mesh regeneration procedure will slightly change the volume fraction
by about ±0.5%. We can avoid this problem by adding a mesh regeneration procedure into the
bi-section scheme with the high computation costs. In this paper, to reduce the computational
cost and keep the accuracy simultaneously, two mesh regeneration procedures and level set
function updating schemes are included in one iteration to offset the volume change. The
proposed method can generate acceptable optimized configurations and convergence curves,
as displayed in Section 4.
4. 2D Numerical examples
15
In this section, a few benchmark examples demonstrate the proposed method’s efficiency,
beginning with mean compliance minimization problems and followed by optimum design
problems for compliant mechanisms. For clarity, black and white regions represent the solid
and void domain in the optimized configuration. The proposed method performs the
convergence check after the minimal iteration number. The optimization terminates if both
stopping criteria are satisfied: the optimized structure volume is within 0.1% with the
prescribed value Vmax. Meanwhile, the five previous iterations’ objective function values differ
by less than 1% in the mean compliance minimization problems and 2% in the optimum design
problems for compliant mechanisms. We use the mesh in the finite element analysis to present
the optimized results for all numerical examples in Sections 4 and 5.
4.1 Mean compliance minimization problems
The mean compliance is conversely set as an objective function to obtain a solid-void two-
phase design with maximum stiffness under a given volume constraint. For obtaining the
maximal-stiffness structure, the objective function, which is mean compliance, should remain
as small as possible. We assume that volume load f=0 is applied to the design domain D, u=0
on the Dirichlet boundary ΓD. The surface load g is applied to the non-homogeneous Neumann
boundary
Γ
N. So, apart from the fictitious interface energy term, the optimization problem in
Eq. (5) can be replaced as:
max
11 1
inf ( ()) () () ()
22 2
s.t. ( ()) () 0
NN
TT T
NN
D
D
F dd d
G dV
Ω
ΩΩ Ω Ω
ΓΓ
χ
ΩΩ
χ χΩ χΓ χΓ
χ χΩ
=⋅ +⋅ =⋅
= −≤
∫∫ ∫
∫
x fux gux gux
xx
(25)
where only volume constraint is considered, and its maximal value is Vmax. According to classic
literature [65], the static equilibrium equation of the structure can be expressed as:
=Ku g
(26)
where K is the global stiffness matrix provided in Section 2.4. The design domain is separated
into several adaptive elements in the finite element framework. Therefore, if the eth element is
removed from the structure, the global stiffness matrix will change by
*
e
∆= − −K K K= K
(27)
where K* is the global stiffness matrix without the eth adaptive element. Ke is the element
stiffness matrix of the eth adaptive element. It is assumed that the material removal or addition
does not affect the applied load g. Then, if we vary both sides of Eq. (26) and ignore the higher-
order term, the displacement change can be expressed as follows:
1−
∆=− ∆u K Ku
(28)
According to the above equations, the sensitivity number of the eth element for the mean
compliance in the finite element framework can be defined as:
1
11 1
22 2
TT T
e e ee
F
λ λλ
−
′= ∆+=− ∆ += +g u g K Ku u K u
(29)
where ue is the displacement vector of the eth element.
16
The first term of Eq. (29) is set to the opposite sign because of the definitions of element
sensitivity and the level set function sign [52]. Then the gradient of Lagrangian F in Eq. (21)
can be obtained as follows:
1
1
()
2
NE
T
e ee
e
F
λ
=
′=−+uKu
(30)
It is worth mentioning that the fictitious interface energy term’s sensitivity in the objective
function is displayed in Section 2.3. The conventional level set method cannot nucleate new
void regions within the 2D structures because the shape derivative used in its sensitivity
analysis has non-zero values only around the boundaries [70]. Topological derivative opens a
window to change the structural topology even using the upwind updating scheme in the
conventional level set method for 2D problems [75]. Later, both the parameterized level set
method [76] and the RDLS method [52] use this technique to create holes in 2D optimization.
Though we have not used the topological derivative in this work, we find the proposed method
has the hole-generation ability in the 2D scenarios mainly because the sensitivity value is
nontrivial across the design domain. From this aspect, the sensitivity used in this work is more
like the topological derivative to some extent. We find some matrix R members in Eq. (22)
become negative after adding the Lagrangian multiplier from the bi-section method. Since the
diagonal members of matrix T are positive, the level set function φ could become negative in
the whole design domain. Thus, the proposed method can create holes as the negative level set
function value represents void material. The conventional level set method re-initializes the
level set function after one or more iterations, preventing the level set function from changing
its signs inside the design domain. There is no re-initialization process in the RDLS method,
and therefore, it is also possible to create holes.
4.2 Cantilever beam with an initial perforated configuration
The first example is a short cantilever beam design to verify the feasibility of the RDLS
method using an adaptive triangular mesh. As shown in Fig. 6(a), the design domain is 80 mm
in length, 50 mm in width, 1 mm in thickness, and occupied by 50% solid material. Nodes on
the left side are fixed in both dimensions, and a 100 N downward concentrated force is imposed
at the center of the free end. Young’s modulus E, Poisson’s ratio υ, and diffusion coefficient
τ
are assumed to be 100 GPa, 0.3, and 5×10-4. The volume fraction reduction rate is 5% of the
current volume fraction per iteration. We use the initial configurations with holes for 2D
examples because its low volume fraction helps speed up the optimization process and increase
structural complexity. The initial level set function value on the ith node is defined as:
( ) ( )
sin / 8 cos / 8 0.1
ii i
xy
ϕ
=π +π +
(31)
where xi and yi represent the coordinates of the ith node. Thus, the initial configuration can be
illustrated in Fig. 6(b).
17
Fig. 6. The design domain and boundary conditions of (a) the cantilever beam and (b) its initial
configuration.
As we employ the RDLS method with an adaptive triangular mesh, Fig. 7(a) shows the
level set function value in the short cantilever beam when convergences using the proposed
method. Then we can obtain the final optimized structure by conducting the mesh generation
scheme for the last time according to the zero isosurface, as shown in Fig. 7(b).
Fig. 7. (a) The level set function value in the optimized structure of short cantilever beam; (b)
The generated body-fitted mesh according to the level set function.
As shown in Fig. 8(a), the zero-level contour boundary represented by red curves between
the void and solid domain is smooth and elegant using the proposed method. The finite element
analysis can precisely follow the smooth boundary (red curve) in the body-fitted mesh
framework without material interpolation. The high nodal density around the boundaries
improves the accuracy, while the low nodal density away from the boundaries reduces the
computational cost. The optimized structure’s mean compliance becomes 1.812 when
converged in 30 iterations. The volume fraction of the optimized result is 50.01% of the design
domain, which only has a 0.01% gap to the prescribed value. We compare the proposed method
with the soft-kill BESO method [65] and the RDLS method itself with a fixed mesh and the
18
same dimension. We employ the fixed rectangular mesh, the topological derivative, and the
augmented Lagrangian method in the RDLS method with a non-body fitted mesh. In that case,
the objective function value is 1.896, 4.43% larger than the proposed method. Converged in
104 iterations, the volume fraction of the optimized structure in Fig. 8(b) with a fixed mesh is
50.35% of the design domain, which is 0.35% larger than the prescribed value. As we can see
from Fig. 8(b), the finite element analysis cannot follow the linear boundary (red curve) in the
non-body fitted mesh framework. The mean compliance of the soft-kill BESO result in Fig.
8(c) is 1.864, which is 2.79% larger than the result obtained by the proposed method in this
work. The difference includes the extra accuracy caused by the high nodal density around the
boundaries and the flexibility of an adaptive triangular mesh.
Fig. 8. The optimized configurations of the cantilever beam using (a) RDLS method with an
adaptive mesh; (b) RDLS method with a fixed mesh; (c) BESO method with a fixed mesh.
4.3 Cantilever beam with an initial hole-free configuration
To justify the hole-creation ability, however, we provide a cantilever beam example starting
from a configuration with no hole. As we can see from Fig. 9, the optimized results at various
iterations show smooth holes generated inside the design domain. We find that the optimized
structure (Fig. 9(f)) is almost identical to the one starting from the perforated configuration
19
(Fig 8(a)). Its mean compliance (1.822) is also approximately equal to the one (1.812) of Fig
8(a). However, the large initial volume fraction (100%) of the hole-free configuration slows
the convergence process. Compared with the initial configuration in Fig. 6(b) with a low
volume fraction (59.73%), it takes 12 more steps to converge. Thus, we adopt the initial
configuration with holes for other 2D examples to improve the optimization efficiency.
Fig. 9. Cantilever beam optimization results starting form an initial configuration without any
hole at the (a) 1st; (b) 3rd; (c) 5th; (d) 12nd; (e) 16th; (f) 42nd iteration.
4.4 Messerschmitt-Bölkow-Blohm beam
As shown in Fig. 10(a), the second example is a classical Messerschmitt-Bölkow-Blohm
(MBB) beam with a 6:1 length-width ratio. A 100 N downward concentrated force is applied
to its bottom center. Young’s modulus E, Poisson’s ratio υ, and diffusion coefficient
τ
are
assumed to be 200 GPa, 0.3, and 5×10-4. The design domain, a thin rectangular, is fixed on
both the left and right corners of the bottom edge. The symmetric right half of the design
20
domain is 120 mm in length, 40 mm in width, and 1 mm in thickness. The volume fraction
constraint is 50% of the design domain. The initial level set function value on the ith node is
defined as:
( ) ( )
sin /10 cos / 10 0.1
ii i
xy
ϕ
=π +π +
(32)
creating an initial configuration as shown in Fig. 10(b) for the proposed method.
Fig. 10. The design domain and boundary conditions of (a) the MBB beam and (b) its initial
configuration.
After adding the symmetrical boundary condition, the right half optimized configuration is
displayed in Fig. 11(a) when converged after 36 iterations. The optimized result using the
RDLS method and the soft-kill BESO method [65] based on the fixed rectangular mesh with
the same load and boundary condition are displayed in Fig. 11(b) and Fig. 11(c) for comparison.
The mean compliance of the RDLS optimized structure with an adaptive triangular mesh is
1.141, while the RDLS and the BESO method result with a fixed rectangular mesh are 1.186
and 1.189, respectively. The mean compliance obtained by the proposed algorithm is smaller
than the BESO results by 4.04%. When we use the adaptive mesh in the RDLS method, the
mean compliance value is 3.79% smaller than the RDLS method with the fixed rectangular
mesh. The volume fraction of the optimized structure is 50.00% of the design domain,
benefiting from the bi-section method to constraint volume. This result is more accurate in
volume than the optimized result in Fig. 11(b) that employs the augmented Lagrangian method
(50.48%).
21
Fig. 11. The optimized configurations of the MBB beam using (a) RDLS method with an
adaptive mesh; (b) RDLS method with a fixed mesh; (c) BESO method with a fixed mesh.
In both examples, the ideal mean compliance can be obtained. The proper nodal density
distribution across the design domain can improve efficiency. These examples indicate that the
adaptive triangular mesh and the RDLS method can be combined to obtain smoother
boundaries and better stiffness performance. The convergence histories of two optimization
problems with the proposed method are plotted in Fig. 12 in different colors. The figure
illustrates that the mean compliance converges in less than 40 iterations. The volume fraction
of the optimized configurations can strictly approach the prescribed value (error<0.01%). The
effectiveness of the proposed algorithm in the mean compliance minimization problem can
also be ensured through the comparison to other classic optimized results [77]. In conclusion,
the efficiency and robustness of the proposed RDLS method can be guaranteed in the mean
compliance minimization problems. We display more detailed comparisons between the
proposed method and the other two methods in Table 1.
22
Fig. 12. Convergence histories of mean compliance and volume fraction starting from the
initial configuration displayed in Fig. 6(b) and Fig. 10(b).
4.5 Optimum design problem for compliant mechanisms (inverter problem)
Compliant mechanisms are flexible structures that attain mobility by triggering elastic
deformation rather than hinges, bearings, and sliders in rigid-body mechanisms [7]. The
optimal design problem for a compliant mechanism should aim to obtain sufficient mobility
and safety against failure. Apart from the fictitious interface energy term, the output deflection
behavior is the objective function in this paper, which can be described as:
max
( ( ))
s.t. ( ()) () 0
out
D
Maximize F u
G dV
Ω
Ω
χ
ΩΩ
χ
χχ
=
= Ω− ≤
∫
x
xx
(33)
where uout is the displacement at the output port. Based on previous literature [78], the
sensitivity of the objective functional Fc’ can be obtained if the input load vector is design
independent:
2
T
c
F
λ
′=−∆ +u Ku
(34)
where u2 is defined as the displacement solution to the adjoint load problem. According to Eq.
(28) and Eq. (34), we can define the sensitivity number of the eth element in the finite element
framework:
2
T
e e ee
F
λ
′= +u Ku
(35)
23
where u2e is the displacement vector of the eth element in the adjoint load problem, Ke is the
element stiffness matrix of the eth element obtained in Appendix A. Similar to the mean
compliance minimization problem, the first term of Eq. (35) is set to the opposite sign, and we
can obtain the gradient of Lagrangian F in Eq. (21) as follows:
2
1
()
NE
T
e ee
e
F
λ
=
′=−+u Ku
(36)
This section applies the RDLS algorithm using the adaptive triangular mesh to the optimum
design problem for compliant mechanisms, inspired by the classic literature [53, 79, 80]. An
inverter problem is shown in Fig. 13(a) to verify the proposed method’s feasibility in the
compliant mechanisms optimum design problem. The design domain is 100 μm in length, 100
μm in width, and 1 μm in thickness, fixed on both the top and bottom corners of the left edge.
The design domain is occupied by 20% solid material in the inverter problem. Young’s
modulus E, Poisson’s ratio υ, and diffusion coefficient
τ
are prescribed to 100 GPa, 0.3, and
5×10-5. The initial level set function value on the ith node is defined as:
( ) ( )
sin 4 / 25 cos 4 / 25 0.5
ii i
xy
ϕ
=π +π +
(37)
which creates an initial configuration as shown in Fig. 13(b) for the proposed method. The
volume fraction reduction rate is 10% of the current volume fraction per iteration in this section.
We apply an input force fin=0.1 N horizontally on the left edge center. Meanwhile, the output
displacement uout at the right edge center is the objective function in this optimization problem.
Two artificial springs with a stiffness of 0.01 N/μm are attached to the input port and output
port to avoid the singularity problem.
Fig. 13. The design domain and boundary conditions of (a) the inverter mechanism and (b) its
initial configuration.
The displacement at the output port, which is the objective function, should be as large as
possible to attain more mobility. As can be seen from the optimized structure in Fig. 14(a), the
material boundaries are smooth and precise, like the examples of the mean compliance
24
minimization problem. Meanwhile, high nodal density is maintained around the zero-level
contour of the level set function, which increases the accuracy of the topology optimization.
Using the RDLS method and an adaptive triangular mesh, the convergence can be reached in
41 iterations with an objective function value of 0.7757. The volume fraction of the optimized
configuration is strictly constrained to 20.00% of the design domain using the bi-section
method. Compared to the soft-kill BESO method [66, 81] with a fixed rectangular mesh, which
obtained the result of 0.7670, the objective function increases by 1.13%. This improvement
indicates that the proposed method can slightly improve inverter mechanism mobility. The
optimized configuration of the RDLS method with fixed mesh and the soft-kill BESO method
displayed in Fig. 14(b) and Fig. 14(c). The objective function value of the RDLS method with
a fixed mesh is 0.7603, which is smaller than the proposed method by 2.03%. When we use
the conventional augmented Lagrangian method in the RDLS method with a fixed mesh, the
volume fraction of the optimized structure is 21.10%, which has a slight gap to the prescribed
value.
25
Fig. 14. The optimized configurations of the inverter using (a) RDLS method with an adaptive
mesh; (b) RDLS method with a fixed mesh; (c) BESO method with a fixed mesh [66].
4.6 Optimum design problem for compliant mechanisms (gripper problem)
As illustrated in Fig. 15(a), the second optimum design problem of compliant mechanisms
is a gripper. The design domain is 100 μm in length, 100 μm in width, and 1 μm in thickness
with a gap which is 25 μm in length, 26 μm in height, and 1 μm in thickness. The input force
fin=0.1 N is applied horizontally to the left edge center. We fix the top and bottom corners of
the left edge. The output ports are located on the top and bottom corners of the gap’s right edge.
The workpiece can be gripped in this gap in practice, replaced by two artificial springs with a
26
stiffness of 0.1 N/μm attached to the output ports in this work. An external spring with a
stiffness of 0.1 N/μm is also attached to the input port to avoid structural discontinuity. For the
gripper problem, the final volume fraction constraint is prescribed 25% of the design domain.
The initial level set function value on the ith node is defined in Eq. (37), which creates the initial
pattern is shown in Fig. 15(b) for the proposed method. Young’s modulus E and Poisson’s ratio
υ are 100 GPa and 0.3. The diffusion coefficient
τ
is 2.6×10-4 for the adaptive mesh and 1×10-
3 for the fixed mesh in the RDLS method.
Fig. 15. The design domain and boundary conditions of (a) the gripper mechanism and (b) its
initial configuration.
In the gripper example, a specific region must remain void throughout the whole
optimization process, named the passive region. Inspired by the previous algorithm [77], we
find the passive region before the optimization. Several points on the passive region boundaries
are fixed to reduce the elements traversed by the passive region boundaries in the mesh
generation part. The elements located in the passive domain are assigned to the void set Mv.
We directly give the minimal density to the passive region elements during the level set
function updating scheme. The volume of elements in passive regions is also subtracted from
the total volume when calculating the volume fraction of the optimized configurations.
27
Fig. 16. The optimized configurations of the gripper using (a) RDLS method with an adaptive
mesh; (b) RDLS method with a fixed mesh; (c) BESO method with a fixed mesh [66].
After 19 iterations, the optimized structure with a 25.00% volume fraction is obtained using
the RDLS method and an adaptive triangular mesh, displayed in Fig. 16(a). It should be
mentioned that the material distribution does not entirely capture the zero-level contour in the
passive region. We directly assign all the elements located in the passive region to the void set.
With the smooth boundaries generated, the objective function value is 9.833×10-3. For
comparison, the optimized configurations of the RDLS method with a fixed mesh and the
BESO method are displayed in Fig. 16(b) and Fig. 16(c). The objective function value obtained
using the RDLS method with a fixed mesh is 9.372×10-3, which is 4.92% smaller than the
28
proposed method value. The objective function value obtained using the BESO method is
9.180×10-3 [66], which is 7.11% smaller than the value from the proposed method. The low
nodal density is maintained in the regions away from the moving boundary, significantly
reducing the computational cost. The volume fraction of the optimized structure is 25.18% of
the design domain when we use fixed mesh and the augmented Lagrangian method in the
RDLS method, which has a 0.18% gap to the prescribed value.
Fig. 17. Convergence histories of output displacement and volume fraction starting from the
initial configuration displayed in Fig. 13(b) and Fig. 15(b).
The convergence histories of inverter and gripper examples using the proposed method are
plotted in Fig. 17 in different colors. This figure illustrates that the output displacement can
reach convergence in less than 45 iterations. The optimized configuration volume fraction is
strictly approaching the prescribed value (error<0.01%). Meanwhile, larger objective function
values representing more mobility by triggering elastic deformation are obtained from these
compliant mechanisms. Furthermore, the material boundaries are smooth and elegant, avoiding
the gray-scale problem. From the inverter and gripper examples, we can conclude that the
proposed method’s stability and effectiveness can be guaranteed in the compliant mechanism
optimum design problems.
For clarity, we organize all the configurations and data of the 2D benchmark examples
obtained in Section 4 and display them in Table 1. This table demonstrates the robustness and
effectiveness of the proposed method by showing the gaps in the objective function value from
previous methods. The proposed method can approach convergence in fewer iterations and
generate better objective function in minimal mean compliance problems and optimum design
problems of compliant mechanisms. The precise volume fraction control and fast convergence
are obtained compared to the conventional RDLS method that uses the fixed rectangular mesh
and the augmented Lagrangian method. The optimized configurations obtain decent
29
mechanical performance and attractive material boundaries by eliminating the zig-zag
boundaries, which adequately achieve the level set method’s advantages.
Table 1. Optimization result comparison between the RDLS method with an adaptive mesh,
the RDLS method with a fixed mesh, and the soft-kill BESO method
30
5. 3D Numerical examples
This section extends the proposed method into the 3D condition to improve the practicality.
Two 3D benchmark examples demonstrate the RDLS method’s efficiency using the adaptive
tetrahedral mesh. For clarity, we use the blue regions to represent the solid domain and make
the void domain transparent in the 3D optimized configuration. In both 3D numerical examples,
we assume that Young’s modulus E and Poisson’s ratio υ are 1 GPa and 0.3, respectively. The
volume fraction reduction rate is 10% of the current volume fraction per iteration. The
convergence criteria for 3D problems are similar to the 2D problems in Section 4. We display
a mean compliance minimization problem and a compliant mechanism optimum design
problem in this section. Unlike the hole-generation capacity in the 2D scenario, structural
boundaries can easily merge to create holes in the 3D design domain. Thus, the 3D examples
in this section start from the fully solid configurations with a 100% volume fraction.
5.1 Mean compliance minimization problem
We display a 3D mean compliance minimization problem to verify the feasibility of the
proposed method. Fig. 18(a) displays the design domain that is 30 mm in length, 30 mm in
width, and 30 mm in thickness. The volume constraint and the diffusion coefficient
τ
employed
are 20% and 1×10-10, respectively. The design domain is fixed on the four corners of the bottom
surface. We apply a 1 N downward concentrated load to the top surface center. The initial
configuration with no hole inside the design domain is displayed in Fig. 18(b).
Fig. 18. The design domain and boundary conditions of (a) a 3D compliance minimization
problem and (b) its initial configuration.
Fig. 19(a) displayed the optimized structure with a smooth and clear boundary using the
proposed method. The optimization is converged in 37 iterations when the objective function
value is 3.197. The optimized result with the body-fitted mesh is compared to the fixed
31
hexahedral mesh with the same dimension, as shown in Fig. 19(b). The mean compliance of
the fixed-mesh structure is 3.267, which is 2.19% larger than the smooth structure. We use the
same mesh for finite element analysis and shape representation in the proposed method to
increase the accuracy of finite element calculations and generate smooth boundaries without
post-processing in the 3D condition. Fig. 19(c) is the optimization result at the fifth iteration,
which shows that structural boundaries can merge to create holes inside the design domain in
the 3D scenario.
Fig. 19. The optimized configurations of the 3D mean compliance minimization problem using
the RDLS method (a) with an adaptive tetrahedral mesh; (b) with a fixed hexahedral mesh; (c)
the optimization result at the fifth iteration with an adaptive tetrahedral mesh.
5.2 Optimum design problem for compliant mechanisms
The optimal design problem for a 3D compliant mechanism should aim to obtain sufficient
mobility and safety against failure. The output deflection behavior should be as large as
32
possible to attain mobility in the proposed method. This section displays a 3D inverter
mechanism example in Fig. 20(a) to demonstrate the proposed method’s effectiveness and
robustness as an extension of the 2D inverter example. The design domain is 60 mm in length,
12 mm in width, and 20 mm in thickness. The upward input force fin=1 N is applied vertically
on the bottom surface center. The output ports are located in the center of the top surface. The
artificial springs with stiffness 0.01 N/mm are attached to the input and output ports to avoid
structural discontinuity. The design domain is fixed on the four corners of the bottom surface.
We assume that the volume constraint and the diffusion coefficient
τ
employed are 30% and
5×10-4, respectively. The initial configuration with no hole inside the design domain is
displayed in Fig. 20(b).
Fig. 20. The design domain and boundary conditions of (a) a 3D optimum design problem for
compliant mechanism and (b) its initial configuration.
We display the optimized structure using the RDLS method with an adaptive tetrahedral
mesh and a non-body fitted mesh in Fig. 21(a) and Fig. 21(b), respectively. The optimization
in Fig. 21(a) is converged in 24 iterations with its objective function value as 3.220. The precise
and smooth boundary increases the proposed algorithm’s accuracy. The body-fitted mesh
structure’s objective function value is 3.14% better than the optimized structure with a fixed
hexahedral mesh, which is 3.122. From the mean compliance minimization problem and the
33
optimum design problem for compliant mechanisms examples shown in this section, we can
guarantee the proposed method’s stability and effectiveness in the 3D condition.
Fig. 21. The optimized configurations of the 3D optimum design problem for compliant
mechanism using the RDLS method (a) with an adaptive tetrahedral mesh; (b) with a fixed
hexahedral mesh.
6. Conclusions
This work proposes a level set-based topology optimization method that integrates a
reaction diffusion-based updating scheme with the body-fitted mesh. It aims to generate smooth
boundaries, improve material representation accuracy, accelerate convergence, and achieve
better objective function values. We develop an adaptive triangular/tetrahedral mesh generator
to provide dense mesh around the boundaries and coarse mesh away from the boundaries,
34
increasing the flexibility and efficiency of topology optimization. Also, we use the bi-section
Lagrangian method to strictly control the volume fraction of optimized configurations, meet
the volume constraint, and accelerate convergence. Numerical examples for minimum mean
compliance and compliant mechanism problems justify its effectiveness and robustness in
expressing complex geometrical configurations, more closely approaching optimum, and
converging within dozens of iterations. In summary, the work shows the importance of
maintaining the original level set boundary instead of interpolating it to the fixed structured
elements in the level set-based topology optimization. The proposed method will facilitate fluid
and optic optimization problems, which demand smooth boundaries to calculate their physical
performances correctly.
Acknowledgments
This project was supported by the Australian Research Council (DP200102190, FL190100014).
Reference
[1] K. Suzuki, N. Kikuchi, A homogenization method for shape and topology optimization,
Comput. Methods Appl. Mech. Engrg., 93 (1991) 291-318.
[2] Y.M. Xie, G.P. Steven, A simple evolutionary procedure for structural optimization,
Computers & Structures, 49 (1993) 885-896.
[3] Q. Li, G.P. Steven, O.M. Querin, Y.M. Xie, Shape and topology design for heat conduction
by Evolutionary Structural Optimization, International Journal of Heat and Mass Transfer, 42
(1999) 3361-3371.
[4] T. Gao, W.H. Zhang, J.H. Zhu, Y.J. Xu, D.H. Bassir, Topology optimization of heat
conduction problem involving design-dependent heat load effect, Finite Elements in Analysis
and Design, 44 (2008) 805-813.
[5] J. Lundgren, A. Klarbring, J.-E. Lundgren, C.-J. Thore, Topology optimization of periodic
3D heat transfer problems with 2D design, Structural and Multidisciplinary Optimization, 60
(2019) 2295-2303.
[6] S. Nishiwaki, M.I. Frecker, S. Min, N. Kikuchi, Topology optimization of compliant
mechanisms using the homogenization method, International Journal for Numerical Methods
in Engineering, 42 (1998) 535-559.
[7] X. Zhang, B. Zhu, Topology Optimization of Compliant Mechanisms, Springer Singapore,
2018.
[8] A.G.M. Michell, The limits of economy of material in frame structures, Philosophical
Magazine, 8 (1904) 589–597.
[9] M.P. Bendsoe, N. Kikuchi, Generating optimal topologies in structural design using a
homogenization method, Comput. Methods Appl. Mech. Engrg., 71 (1988) 197–224.
[10] M.P. Bendsøe, Optimal shape design as a material distribution problem, Structural
Optimization, 1 (1989) 193-202.
[11] F. Ferrari, O. Sigmund, A new generation 99 line Matlab code for compliance topology
optimization and its extension to 3D, Structural and Multidisciplinary Optimization, 62 (2020)
2211-2228.
[12] Y.M. Xie, G.P. Steven, Shape and layout optimization via an evolutionary procedure, in:
Proceedings of the International Conference on Computational Engineering Science, Hong
Kong, 1992.
35
[13] X. Huang, Y.M. Xie, M.C. Burry, A new algorithm for bi-directional evolutionary
structural optimization, JSME International Journal Series C Mechanical Systems, Machine
Elements and Manufacturing, 49 (2006) 1091-1099.
[14] Y.M. Xie, Z.H. Zuo, X. Huang, J.H. Rong, Convergence of topological patterns of optimal
periodic structures under multiple scales, Structural and Multidisciplinary Optimization, 46
(2012) 41-50.
[15] J.A. Sethian, A. Wiegmann, Structural boundary design via level set and immersed
interface methods, Journal of Computational Physics, 163 (2000) 489–528.
[16] G. Allaire, F. Jouve, A.-M. Toader, A level set method for shape optimization, Comptes
Rendus Mathematique, 334 (2002) 1125–1130.
[17] M.Y. Wang, X. Wang, D. Guo, A level set method for structural topology optimization,
Comput. Methods Appl. Mech. Engrg., 192 (2003) 227–246.
[18] A. Takezawa, S. Nishiwaki, M. Kitamura, Shape and topology optimization based on the
phase field method and sensitivity analysis, Journal of Computational Physics, 229 (2010)
2697-2718.
[19] S. Zhou, M.Y. Wang, Multimaterial structural topology optimization with a generalized
Cahn–Hilliard model of multiphase transition, Structural and Multidisciplinary Optimization,
33 (2007) 89-111.
[20] M.Y. Wang, S. Zhou, Phase Field: A variational method for structural topology
optimization, Computer Modeling in Engineering & Sciences, 6 (2004) 547-566.
[21] J. Zhu, W. Zhang, L. Xia, Topology optimization in aircraft and aerospace structures
design, Archives of Computational Methods in Engineering, 23 (2016) 595-622.
[22] M.K. Leader, T.W. Chin, G. Kennedy, High resolution topology optimization of aerospace
structures with stress and frequency constraints, in: Proc. 2018 Multidisciplinary Analysis and
Optimization Conference, American Institute of Aeronautics and Astronautics, 2018.
[23] Z.-L. Zhao, S. Zhou, X.-Q. Feng, Y.M. Xie, Morphological optimization of scorpion
telson, Journal of the Mechanics and Physics of Solids, 135 (2020) 1-15.
[24] K. Cai, B.S. Chen, H.W. Zhang, Topology optimization of continuum structures based on
a new bionics method, International Journal for Computational Methods in Engineering
Science and Mechanics, 8 (2007) 233-242.
[25] V. Abhishek, S. Amandeep, J. Ramkumar, Topology optimization of mechanical
structures in stair climbing assistive technology, Nanomaterials and Energy, 8 (2019) 167-177.
[26] S. Nishiwaki, E.C.N. Silva, K. Matsui, K. Terada, K. Izui, M. Yoshimura, Structural
topology optimization of mechanical resonators, actuators and sensors, IUTAM Symposium
on Topological Design Optimization of Structures, Machines and Materials, (2006) 291-299.
[27] G. Kazakis, I. Kanellopoulos, S. Sotiropoulos, N.D. Lagaros, Topology optimization aided
structural design: Interpretation, computational aspects and 3D printing, Heliyon, 3 (2017) 1-
33.
[28] K. Jj, D.K. Tsavdaridis, V. Toropov, Applications of topolgy optimisation in structural
engineering: High-rise buildings & steel components, Jordan Journal of Civil Engineering, 9
(2015) 335-357.
[29] X. Huang, On smooth or 0/1 designs of the fixed-mesh element-based topology
optimization, Advances in Engineering Software, 151 (2021) 1-12.
[30] P.-S. Tang, K.-H. Chang, Integration of topology and shape optimization for design of
structural components, Structural and Multidisciplinary Optimization, 22 (2001) 65-82.
[31] J. Liu, Y. Ma, 3D level-set topology optimization: a machining feature-based approach,
Structural and Multidisciplinary Optimization, 52 (2015) 563-582.
[32] F. Wein, P. Dunning, J. Norato, A Review on Feature-Mapping methods for Structural
Optimization, Structural and multidisciplinary optimization, (2020) 1-42.
36
[33] T. Belytschko, R. Gracie, G. Ventura, A Review of Extended/Generalized Finite Element
Methods for Material Modelling, Modelling and Simulation in Materials Science and
Engineering, 17 (2009) 1-31.
[34] N.P. van Dijk, K. Maute, M. Langelaar, F. van Keulen, Level-set methods for structural
topology optimization: a review, Structural and Multidisciplinary Optimization, 48 (2013) 437-
472.
[35] S. Kambampati, C. Jauregui, K. Museth, H.A. Kim, Large-scale level set topology
optimization for elasticity and heat conduction, Structural and Multidisciplinary Optimization,
61 (2020) 19-38.
[36] A.L. Gain, G.H. Paulino, L.S. Duarte, I.F.M. Menezes, Topology optimization using
polytopes, Comput. Methods Appl. Mech. Engrg., 293 (2015) 411-430.
[37] G. Allaire, C. Dapogny, P. Frey, A mesh evolution algorithm based on the level set method
for geometry and topology optimization, Structural and Multidisciplinary Optimization, 48
(2013) 711-715.
[38] C.R. de Lima, G.H. Paulino, Auxetic structure design using compliant mechanisms: A
topology optimization approach with polygonal finite elements, Advances in Engineering
Software, 129 (2019) 69-80.
[39] K.E. Jensen, A MATLAB script for solving 2D/3D minimum compliance problems using
anisotropic mesh adaptation, Procedia Engineering, 203 (2017) 102-114.
[40] S. Zhang, A.L. Gain, J.A. Norato, Adaptive mesh refinement for topology optimization
with discrete geometric components, Comput. Methods Appl. Mech. Engrg., 364 (2020) 1-21.
[41] C. Kim, M. Jung, T. Yamada, S. Nishiwaki, J. Yoo, FreeFEM++ code for reaction-
diffusion equation–based topology optimization: for high-resolution boundary representation
using adaptive mesh refinement, Structural and Multidisciplinary Optimization, 62 (2020) 439-
455.
[42] S. Wang, E. de Sturler, G.H. Paulino, Dynamic adaptive mesh refinement for topology
optimization, arXiv preprint, arXiv: 1009.4975. (2010) 1-23.
[43] L. Noël, M. Schmidt, C. Messe, J.A. Evans, K. Maute, Adaptive level set topology
optimization using hierarchical B-splines, Structural and Multidisciplinary Optimization, 62
(2020) 1669-1699.
[44] S. Micheletti, S. Perotto, L. Soli, Topology optimization driven by anisotropic mesh
adaptation: Towards a free-form design, Computers & Structures, 214 (2019) 60-72.
[45] Z. Liu, J.G. Korvink, Adaptive moving mesh level set method for structure topology
optimization, Engineering Optimization, 40 (2008) 529-558.
[46] M. Otomori, T. Yamada, K. Izui, S. Nishiwaki, J. Andkjær, Topology optimization of
hyperbolic metamaterials for an optical hyperlens, Structural and Multidisciplinary
Optimization, 55 (2017) 913-923.
[47] A. Christiansen, M. Nobel-Jørgensen, N. Aage, O. Sigmund, A. Bærentzen, Topology
optimization using an explicit interface representation, Structural and Multidisciplinary
Optimization, 49 (2014) 387-399.
[48] A. Christiansen, A. Bærentzen, M. Nobel-Jørgensen, N. Aage, O. Sigmund, Combined
shape and topology optimization of 3D structures, Computers & Graphics, 46 (2014) 25-35.
[49] H. Lian, A. Christiansen, D. Tortorelli, O. Sigmund, N. Aage, Combined shape and
topology optimization for minimization of maximal von Mises stress, Structural and
Multidisciplinary Optimization, 55 (2017) 1541-1557.
[50] L. Mai-Cao, T. Tran-Cong, A meshless numerical approach based on Integrated Radial
Basis Functions and level set method for interfacial flows, Applied Mathematical Modelling,
38 (2014) 5743-5766.
[51] Y.T. GU, Meshfree methods and their comparisons, International Journal of
Computational Methods, 02 (2005) 477-515.
37
[52] M. Otomori, T. Yamada, K. Izui, S. Nishiwaki, Matlab code for a level set-based topology
optimization method using a reaction diffusion equation, Structural and Multidisciplinary
Optimization, 51 (2014) 1159-1172.
[53] T. Yamada, K. Izui, S. Nishiwaki, A. Takezawa, A topology optimization method based
on the level set method incorporating a fictitious interface energy, Comput. Methods Appl.
Mech. Engrg., 199 (2010) 2876-2891.
[54] D. Qu, C. Zhao, X. Li, H. Zhang, Topological optimization of multi - material structures
based on level set method, IOP Conference Series: Materials Science and Engineering, 274
(2017) 1-7.
[55] H.K. Seong, H. Shin, J. Yoo, T. Yamada, S. Nishiwaki, Reaction-diffusion equation based
topology optimization combined with the modified conjugate gradient method, Finite Elements
in Analysis and Design, 140 (2018) 84-95.
[56] J.S. Choi, T. Yamada, K. Izui, S. Nishiwaki, J. Yoo, Topology optimization using a
reaction–diffusion equation, Comput. Methods Appl. Mech. Engrg., 200 (2011) 2407-2420.
[57] G.-S. Jiang, D. Peng, Weighted ENO schemes for Hamilton--Jacobi equations, SIAM
Journal on Scientific Computing, 21 (1999) 2126-2143.
[58] S. Osher, J.A. Sethian, Fronts propagating with curvature-dependent speed: Algorithms
based on Hamilton-Jacobi formulations, Journal of Computational Physics, 79 (1988) 12-49.
[59] S. Osher, F. Santosa, Level set methods for optimization problems involving geometry
and constraints: I. Frequencies of a two-density inhomogeneous drum, Journal of
Computational Physics, 171 (2001) 272-288.
[60] C.A.D. Moura, C.S. Kubrusly, The Courant-Friedrichs-Lewy (CFL) Condition: 80 Years
After Its Discovery, Birkhäuser Basel, 2013.
[61] D. Dutykh, How to overcome the Courant-Friedrichs-Lewy condition of explicit
discretizations?, in, 2016.
[62] Z. Zhang, Y.M. Xie, Q. Li, S. Zhou, A reaction-diffusion based level set method for image
segmentation in three dimensions, Engineering Applications of Artificial Intelligence, 96 (2020)
1-13.
[63] M. Cui, H. Chen, J. Zhou, A level-set based multi-material topology optimization method
using a reaction diffusion equation, Computer-Aided Design, 73 (2016) 41-52.
[64] Q. Dongyue, L. Fanbing, Z. Chunhua, L. Xiuming, The bidirectional improvement of level
set method topology optimization, in: 2016 6th International Conference on Advanced Design
and Manufacturing Engineering (ICADME 2016), Atlantis Press, 2017, pp. 57-62.
[65] X. Huang, Y.M. Xie, Evolutionary Topology Optimization of Continuum Structures:
Methods and Applications, Wiley, Chichester, 2010.
[66] Y. Li, Topology optimization of compliant mechanisms based on the BESO method.
RMIT University, 2014.
[67] G. Allaire, F. Jouve, G. Michailidis, Thickness control in structural optimization via a
level set method, Structural and Multidisciplinary Optimization, 53 (2016) 1349-1382.
[68] T. Yamada, S. Yamasaki, S. Nishiwaki, K. Izui, M. Yoshimura, A study of boundary
settings in the design domain for structural optimization based on the level set method, in: Proc.
Mathematical Design, Joint Symposium of JSIAM Activity Groups, 2008, 487-505.
[69] S. Rojas-Labanda, O. Sigmund, M. Stolpe, A short numerical study on the optimization
methods influence on topology optimization, Structural and Multidisciplinary Optimization,
56 (2017) 1603-1612.
[70] G. Allaire, F. Jouve, A.-M. Toader, Structural optimization using sensitivity analysis and
a level-set method, Journal of Computational Physics, 194 (2004) 363-393.
[71] D.Q. Nguyen, R.P. Fedkiw, M. Kang, A boundary condition capturing method for
incompressible flame discontinuities, Journal of Computational Physics, 172 (2001) 71-98.
38
[72] P.-O. Persson, G. Strang, A simple mesh generator in MATLAB, SIAM Review, 46 (2004)
329-345.
[73] I. Amidror, Scattered data interpolation methods for electronic imaging systems: A survey,
Journal of Electronic Imaging, 11 (2002) 157-176.
[74] J. Peng, Y. Yu, W. Zhou, M. Chen, Using triangle-based cubic interpolation in generation
of object-adaptive fringe pattern, Optics and Lasers in Engineering, 52 (2014) 41-52.
[75] V.J. Challis, A discrete level-set topology optimization code written in Matlab, Structural
and Multidisciplinary Optimization, 41 (2010) 453-464.
[76] P. Wei, Z. Li, X. Li, M. Wang, An 88-line MATLAB code for the parameterized level set
method based topology optimization using radial basis functions, Structural and
Multidisciplinary Optimization, 58 (2018) 831-849.
[77] O. Sigmund, A 99 line topology optimization code written in Matlab, Structural and
Multidisciplinary Optimization, 21 (2001) 120-127.
[78] M.P. Bendsøe, O. Sigmund, Topology Optimization: Theory, Methods, and Applications,
Springer, Berlin, Heidelberg, 2004.
[79] A. Pereira, I. Menezes, C. Talischi, G.H. Paulino, An efficient and compact MATLAB
implementation of topology optimization: Application to compliant mechanisms, in: Proc.
XXXII Iberian Latin-American Congress on Computational Methods in Engineering, Ouro
Preto, MG -Brazil, 2011.
[80] O. Sigmund, On the design of compliant mechanisms using topology optimization,
Mechanics of Structures and Machines, 25 (1997) 493-524.
[81] X. Huang, Y. Li, S. Zhou, Y.M. Xie, Topology optimization of compliant mechanisms
with desired structural stiffness, Engineering Structures, 79 (2014) 13-21.
Appendix A. Element stiffness matrix and shape function matrices derivation for the
adaptive triangular mesh
Fig. A.1 (a) shows an adaptive triangular element whose vertices are marked as k (x1, y1), j
(x2, y2), and m (x3, y3) in the global x-y Cartesian coordinate system. The shape function of the
adaptive triangular element is dependent on the coordinates of its vertices. We introduce a local
ξ-η Cartesian coordinate system for calculating the matrices to make double integral easier.
The stiffness matrix and the shape function matrices of the triangle kjm can be derived by using
Jacobian matrix J from a fixed triangle. Its vertices are marked as k (ξ1, η1), j (ξ2, η2), and m (ξ3,
η3) in the ξ-η coordinate system, as shown in Fig. A.1(b).
39
Fig. A.1 (a) The node coordinates of an adaptive triangular element in the global x-y coordinate
system; (b) the node coordinates of a regular triangular element in the local ξ-η coordinate
system.
The shape function matrix N of the triangle kjm in the ξ-η coordinate system can be
expressed as follows:
[ ]
() ( )( )
123
1
, 1, 2, 3
2
i ii i
NNN
N ab c i
A
ξη ξ η
=
= ++ =
N
(A.1)
where the A, ai, bi and ci are based on the node coordinates in the ξ-η coordinate system:
1
11
21
11
( 1, 2, 3)
11
ii
jj
mm
jj j j
iii
mm m m
A
a b ci
ξη
ξη
ξη
ξη η ξ
ξη η ξ
=
= =−==
(A.2)
Then the Jacobian matrix J can be written as:
(, )
(, )
xy
xy
xy
ξξ
ξη
ηη
∂∂
∂∂
∂
= = ∂∂
∂
∂∂
J
(A.3)
where the elements of Jacobian matrix J can be expanded using the shape function displayed
above:
40
()()
( ) ( )
()()
33
11 2 2 3 3
11
33
11 2 2 3 3
11
33
11 2 2 3 3
11
3
1
11
22
11
22
11
22
1
2
ii i
i
ii
ii
ii i
i
ii
ii
ii i
i
ii
ii
i
i
i
ab c
N
xx x bx bx bx
AA
ab c
N
yy y by b y by
AA
ab c
N
xx x cx cx c x
AA
a
N
yyA
ξη
ξξ ξ
ξη
ξξ ξ
ξη
ηη η
ηη
= =
= =
= =
=
∂++
∂
∂= = = ++
∂∂ ∂
∂++
∂
∂= = = ++
∂∂ ∂
∂++
∂
∂= = = ++
∂∂ ∂
∂
∂
∂= =
∂∂
∑∑
∑∑
∑∑
∑
()( )
3
11 2 2 3 3
1
1
2
ii i
i
i
bc
y cy c y cy
A
ξη
η
=
++ = ++
∂
∑
(A.4)
It is assumed in this work that the ξ1=0, η1=0, ξ2=1, η2=0, ξ3=1, η3=1, and the value of A, ai, bi
and ci can be calculated as below:
231
1 23
312
231
12 3
312
11
22
33
111
1 b 1 b 0
111
111
0 1 1
111
1
11
1=
22
1
b
cc c
A
ηηη
ηηη
ξξξ
ξξξ
ξη
ξη
ξη
=−=−=−==−=
= = = =−= =
=
(A.5)
Thus, the Jacobian matrix J, the determinant det(J), and its inverse matrix J-1 can be expressed
as a function of the vertex coordinates in the x-y coordinate system:
12 12 11 12
23 23 21 22
11 22 21 12
1
(, ) []
(, )
det( )
1
=det( )
xy
xx yy JJ
xy
xx yy JJ
xy
xy
xy xy JJ J J
xy
yy
xx
x
yy
ξξ
ξη
ηη
ξξ
ξη ηξ
ηη
ξη
ηξ
ξη
η
−
∂∂
−+ −+
∂∂
∂
= = = =
−+ −+
∂∂
∂
∂∂
∂∂
∂∂ ∂∂ ∂∂
= =−=−
∂∂∂∂ ∂∂
∂∂
∂∂
∂∂
−
∂∂
∂∂
== ∂∂ ∂∂
−
∂∂ ∂
J
J
JJ
22 12
21 11
1
det( )
JJ
JJ
x
ξ
−
=
−
∂
J
(A.6)
Then, the shape function matrix N in the ξ-η coordinate system can be easily expressed as
follows:
( ) ( )
[ ]
12 3
1
1
NN N
ξ ξη η
ξξηη
=−=−=
=−−
N
(A.7)
The gradient of the shape function ∇N can be written as:
41
22 22 12 12
1
21 21 11 11
1
det( )
J JJ J
x
J JJ J
y
ξ
η
−
∂
∂
− +−
∂
∂
∇= = =
∂−−
∂
∂∂
N
N
NJ
NNJ
(A.8)
Next, the strain matrix B can be expressed as:
3
12
3
12
33
112 2
22 22 12 12
21 21 11 11
21 22 21 11 22 12 11 12
000
00 0
0 00
100 0
det( )
N
NN
xx x
N
NN
yyy
NN
NNNN
yxy xy x
J JJ J
J JJ J
J J JJ JJ J J
∂
∂∂
∂∂∂
∂
∂∂
=
∂∂∂
∂∂
∂∂∂∂
∂∂∂ ∂∂∂
−+ −
= −−
− −− + −
B
J
(A.9)
The elasticity tensor D for a plane stress problem is:
( )
2
10
10
11
00 2
v
Ev
vv
=
−
−
D
(A.10)
where E and υ represent Young’s modulus and Poisson’s ratio. The element stiffness matrix
Ke and the element matrices NTNe, ∇TN∇Ne are required in solving the reaction-diffusion
equation. We can calculate them using double integral with the absolute value of the Jacobian
matrix determinant |det(J)| as below:
1
00
1
00
1
00
det( )
det( )
det( )
TT
e
TT T
e
TT T
e
dxdy d d
dxdy d d
dxdy d d
ξ
ξ
ξ
ηξ
ηξ
ηξ
= =
= =
∇∇ =∇∇ = ∇∇
∫∫ ∫ ∫
∫∫ ∫ ∫
∫∫ ∫ ∫
K B DB B DB J
NN NN NN J
NN NN NN J
(A.11)
For an adaptive triangular element kjm, the element stiffness matrix Ke can be expressed as
the function of node coordinates in the x-y Cartesian coordinate system as follows:
42
1
00
11 21 31 41 51 61
21 22 32 42 52 62
31 32 33 43 53 63
41 42 43 44 54 64
51 52 53 54 55 65
61 62 63 64 65 66
12 21 13 31
det( )
5
182
T
e
a
a
dd
k k kk k k
kk k k kk
kk k kk k
kk k kk kk
k kk kk k
kk kk kk
xy x y xy x y x
k
ξ
ηξ
=
−− −
− −−
− −−
=
−− −
−−−
−−−
−−++
=
∫∫
K B DB J
23 32
2
12 21 13 31 2 3 32
22 2 2
11 2 3 2 3 2 3 2 3
22 2 2
22 2 3 2 3 2 3 2 3
22 2 2
33 1 3 1 3 1 3 1 3
22 2 2
44 1 3 1 3 1 3 1 3
55
()
7 7 14 20 20 40
7 7 14 20 20 40
7 7 14 20 20 40
7 7 14 20 20 40
y xy
xy x y xy x y xy xy
k x x xx y y y y
k y y yy x x xx
k x x xx y y yy
k y y yy x x xx
k
−
−−++ −
=+− ++−
=+− ++−
=+− ++−
=+− ++−
=
22 2 2
1 2 12 1 2 1 2
22 2 2
66 1 2 1 2 1 2 1 2
21 22 23 32 33
43 1 1 1 3 3 1 3 3
65 1 1 1 2 2 1 2 2
31 1 2 1 3 2 3 1 3 1
7 7 14 20 20 40
7 7 14 20 20 40
13 13 13 13
13 13 13 13
13 13 13 13
7 7 7 20 20
x x xx y y yy
k y y yy x x xx
k xy xy xy xy
k xy xy xy xy
k xy xy x y xy
k xx xx x x y y y
+− ++−
=+− ++−
=−−+
=−−+
=−−+
=−−− +
22
2 23 3 3
22
51 2 3 1 2 1 3 2 3 1 2 1 3 2 2
22
42 1 2 2 3 1 3 1 2 1 3 2 3 3 3
22
62 1 2 1 3 2 3 2 3 1 2 1 3 2 2
53 1 3 1 2 2 3
20 7 20
7 7 7 20 20 20 7 20
7 7 7 20 20 20 7 20
7 7 7 20 20 20 7 20
777
y yy x y
k x x xx xx y y yy yy x y
k y y y y yy xx xx x x y x
k y y yy y y x x xx xx y x
k xx xx xx
− ++
= + − + + − −−
= − − + − − ++
= − + + + − −−
=+−
22
13 1 2 2 3 1 1
22
641312231312 231 1
41 12 13 3 2 31 21 2 3 33
61 23 12 13 21 31 3 2 22
32 2 1 2 3 3 1
20 20 20 7 20
7 7 7 20 20 20 7 20
6 6 6 7 7 7 13
6 6 6 7 7 7 13
6667
yy yy y y x y
k y y yy y y xx xx x x y x
k xy xy xy xy xy xy xy
k xy xy xy xy xy xy xy
k xy xy xy
+ + − −−
= + − + + − −−
=−−−+− +
= +−+ −+−
=−−+
12 13 3 2 33
52 21 31 32 23 12 13 22
63 21 23 13 1 2 31 32 11
54 1 2 31 3 2 13 21 2 3 11
7 7 13
6 6 6 7 7 7 13
66 677713
66677713
xy xy xy xy
k xy xy xy xy xy xy xy
k x y x y xy xy xy x y xy
k xy xy xy xy xy x y xy
−−+
=−+ ++−−
=−+++− −
=+−++− −
(A.12)
The element shape function matrices NTNe, ∇TN∇Ne can be expressed as the function of
node coordinates in the x-y coordinate system as follows:
43
1
00
12 21 13 31 2 3 32
211
det( ) 1 2 1
24 112
TT a
e
a
nn
dd
nn xy x y xy x y x y x y
ξ
ηξ
= =
= −−++ −
∫∫
NN NN J
(A.13)
11 21 31
1
21 22 32
00
31 32 33
12 21 13 31 23 3 2
2
12 21 13 31 23 3 2
2 22 2
11 2 2 3 3 2 2 3 3
2 22
22 1 1 3 3 1
det( )
2( )
22
22
TT
ea
a
dn dn dn
d d dn dn dn dn
dn dn dn
xy x y xy x y x y x y
dn xy x y xy x y x y x y
dn x x x x y y y y
dn x x x x y
ξ
ηξ
∇∇ = ∇∇ =
−−++ −
=−−++ −
=− ++− +
=− ++−
∫∫
NN NN J
2
13 3
2 22 2
33 1 1 2 2 1 1 2 2
22
2113 132312 23123 3
22
31 2 3 2 3 1 2 1 3 1 2 1 3 2 2
22
32 1313122312 231 1
22
yy y
dn x x x x y y y y
dn xx y y x x xx y y yy x y
dn x x y y xx xx yy yy x y
dn xx yy xx x x yy y y x y
+
=− ++− +
= + + − + − −−
= + + − + − −−
= + + − + − −−
(A.14)
Appendix B. MATLAB symbolic calculation code for the 2D adaptive triangular mesh
function [Ke,NNe,dNdNe] = symcalculation2D()
syms r s %The ξ-η coordinate system
E0 = 1; nu = 0.3; %Young's modulus and Poisson's ratio
D = E0/(1-nu^2)*[1 nu 0; nu 1 0; 0 0 (1-nu)/2]; %Elasticity matrix
X = sym('X', [3,1]); Y = sym('Y', [3,1]); %The coordinate of the triangle vertices
J = [X(2)-X(1) Y(2)-Y(1); X(3)-X(2) Y(3)-Y(2)]; %Jacobian matrix
N = [1-r r-s s]; %Shape function matrix in ξ-η system
dN = 1/det(J)*[-J(2,2) J(2,2)+J(1,2) -J(1,2); J(2,1) -J(2,1)-J(1,1) J(1,1)]; % The gradient of
the shape function
Be = 1/det(J)*[-J(2,2) 0 J(2,2)+J(1,2) 0 -J(1,2) 0;
0 J(2,1) 0 -J(2,1)-J(1,1) 0 J(1,1);
J(2,1) -J(2,2) -J(2,1)-J(1,1) J(2,2)+J(1,2) J(1,1) -J(1,2)]; %Strain matrix
Ke = int(int(Be.'*D*Be,'s','0','r'),'r','0','1')*abs(det(J)); %Element stiffness matrix Ke
NNe = int(int(N.'*N,'s','0','r'),'r','0','1')*abs(det(J)); %Element matrix NTNe
dNdNe = int(int(dN.'*dN,'s','0','r'),'r','0','1')*abs(det(J)); %Element matrix ∇TN∇Ne
end
Appendix C. MATLAB symbolic calculation code for the 3D adaptive tetrahedral mesh
function [Ke, NNe, dNdNe] =symcalculationt3D()
E0 = 1; nu = 0.3; %Young's modulus and Poisson's ratio
f = E0*nu/(1+nu)/(1-2*nu); g = E0/(1+nu)/2;
syms L1 L2 L3 L4 %Volume Coordinates
X = sym('X', [4,3]); %The coordinate of the tetrahedral vertices
V6=det([ones(4,1) X(1:4,:)]); %Volume of the element
D = [ f+2*g f f 0 0 0
44
f f+2*g f 0 0 0
f f f+2*g 0 0 0
0 0 0 g 0 0
0 0 0 0 g 0
0 0 0 0 0 g]; %Elasticity matrix
for i=1:4
m=setdiff(1:4,i);
b(i)=(-1)^i*det([ones(3,1) X(m,[2 3])])/V6;
c(i)=(-1)^(i+1)*det([ones(3,1) X(m,[1 3])])/V6;
d(i)=(-1)^i*det([ones(3,1) X(m,[1 2])])/V6;
end
N = [L1 L2 L3 L4]; %Shape function matrix
dNL=[diff(N,L1); diff(N,L2); diff(N,L3); diff(N,L4)]; %The gradient of the shape function
for i=1:4
B(1:6,3*i-2:3*i)=[b*dNL(:,i) 0 0
0 c*dNL(:,i) 0
0 0 d*dNL(:,i)
c*dNL(:,i) b*dNL(:,i) 0
0 d*dNL(:,i) c*dNL(:,i)
d*dNL(:,i) 0 b*dNL(:,i)]; %Strain matrix
end
B = subs(B,'L4',str2sym('1-L1-L2-L3'));
KE=B.'*D*B;
Ke=int(int(int(KE,'L1','0',str2sym('1-L2-L3')),'L2','0',str2sym('1-L3')),'L3','0','1'); %Element
stiffness matrix Ke
N = subs(N,'L4',str2sym('1-L1-L2-L3'));
dNL = subs(dNL,'L4',str2sym('1-L1-L2-L3'));
BB = [b*dNL ; c*dNL ; d*dNL];
dNdNe = int(int(int(BB.'*BB,'L1','0',str2sym('1-L2-L3')),'L2','0',str2sym('1-
L3')),'L3','0','1'); %Element matrix ∇TN∇Ne
NNe = int(int(int(N.'*N,'L1','0',str2sym('1-L2-L3')),'L2','0',str2sym('1-
L3')),'L3','0','1'); %Element matrix NTNe
end