Page 1
FLUID FLOW TOPOLOGY OPTIMIZATION USING POLYGINAL ELEMENTS: STABILITY AND COMPUTATIONAL IMPLEMENTATION IN PolyTop
Anderson Pereira (Tecgraf/PUC-Rio)
Cameron Talischi (UIUC) - Ivan Menezes (PUC-Rio) - Glaucio Paulino (GATech)
ICCES'15 Reno, NV, USA, July 20-24, 2015
Page 2
ICCES'15
PolyTop Geometry & BC’s
PolyMesher‡ & PolyTop†
Polygonal element mesher and topology optimization implementation
in MATLAB PolyTop
† Talischi, C., Paulino, G.H., Pereira, A., and Menezes, I.F.M., “PolyTop: a Matlab implementation of a general topology optimization
framework using unstructured polygonal finite element meshes”, JSMO, 45:329–357, 2012. doi:10.1007/s00158-011-0696-x
Polygonal Mesh
INTRODUCTION
‡ Talischi, C., Paulino, G.H., Pereira, A., and Menezes, I.F.M., “PolyMesher: a general-purpose mesh generator
for polygonal elements written in Matlab”, JSMO, 45:309–328, 2012. doi:10.1007/s00158-011-0706-z
Page 3
ICCES'15
POLYGONAL FINITE ELEMENTS
Provide great flexibility in discretizing complex domains
Naturally exclude checkerboard layouts and one-node connections
Not biased by the standard FEM simplex geometry (triangles and quads)
Page 4
ICCES'15
POLYGONAL FINITE ELEMENTS
Q4 Elements Polygonal Elements
Provide great flexibility in discretizing complex domains
Naturally exclude checkerboard layouts and one-node connections
Not biased by the standard FEM simplex geometry (triangles and quads)
Page 5
ICCES'15
POLYGONAL FINITE ELEMENTS
POLYGONAL FINITE ELEMENTS
T6 Elements Polygonal Elements
Talischi, C. , Paulino, G.H., Pereira, A. and Menezes, I.F.M., “Polygonal Finite Elements
for Topology Optimization: A Unifying Paradigm”, IJNME, 82(6):671-698, 2010.
Provide great flexibility in discretizing complex domains
Naturally exclude checkerboard layouts and one-node connections
Not biased by the standard FEM simplex geometry (triangles and quads)
Page 6
ICCES'15
Comparison with the 88-line code*
* Andreassen E., Clausen A., Schevenels M., Lazarov B., Sigmund O., “Efficient topology optimization
in MATLAB using 88 lines of code”, JSMO, 43(1):1–16, 2011. doi:10.1007/s00158-010-0594-7
Mesh Size 90x30 150x50 300x100 600x200
11.9 31.5 135.5 764.1
10.9 33.0 252.2 3092.9
PolyTop
88-line
(time in sec for 200 optimization iterations)
CODE EFFICIENCY
PolyTop: Efficiency
Page 7
ICCES'15
CODE MODULARITY
PolyTop: Code Modularity and Flexibility
Page 8
ICCES'15
CODE MODULARITY
PolyTop: Code Modularity and Flexibility
• Material interpolation functions (e.g. SIMP, RAMP)
• Different optimizers (e.g. OC, MMA, SLP)
• Objective functions (e.g. Compliance, Compliant Mechanism)
• Different physics (?)
Page 9
ICCES'15
CODE MODULARITY
PolyTop: Code Modularity and Flexibility
• Material interpolation functions (e.g. SIMP, RAMP)
• Different optimizers (e.g. OC, MMA, SLP)
• Objective functions (e.g. Compliance, Compliant Mechanism)
• Different physics (?)
Page 10
ICCES'15
CODE MODULARITY
PolyTop: Code Modularity and Flexibility
• Material interpolation functions (e.g. SIMP, RAMP)
• Different optimizers (e.g. OC, MMA, SLP)
• Objective functions (e.g. Compliance, Compliant Mechanism)
• Different physics (?)
Example
(Compliant Mechanism):
Page 11
ICCES'15
• Material interpolation functions (e.g. SIMP, RAMP)
• Different optimizers (e.g. OC, MMA, SLP)
• Objective functions (e.g. Compliance, Compliant Mechanism)
• Different physics (?)
CODE MODULARITY
PolyTop: Code Modularity and Flexibility
Page 12
ICCES'15
Governing equations for Stokes flow
STABILITY OF POLYGONAL FEs
Stability is a critical issue concerning mixed FE formulations
and it is well-known that it is dictated by the INF-SUP condition
“It delineates the appropriate balance between the velocity and pressure approximations”
Page 13
ICCES'15
• Numerical instabilities such the “checkerboard” problem could appear in
mixed variational formulation (pressure-velocity) of the Stokes flow
problems.
velocity
checkerboard on
pressure Lid-driven cavity problem
Q4 elements
STABILITY OF POLYGONAL FEs
Page 14
ICCES'15
STABILITY OF POLYGONAL FEs
velocity
pressure
Lid-driven cavity problem
Polygonal elements
• Numerical instabilities such the “checkerboard” problem could appear in
mixed variational formulation (pressure-velocity) of the Stokes flow
problems.
Page 15
ICCES'15
STABILITY OF POLYGONAL FEs
INF-SUP Test: compute the stability parameter
~ bh
where: is the space of pressure modes
for a sequence of progressively finer meshes.
Page 16
ICCES'15
STABILITY OF POLYGONAL FEs
INF-SUP Test: compute the stability parameter
where: is the space of pressure modes
for a sequence of progressively finer meshes.
~ bh
Families of meshes:
Quadrilateral Hexagonal Random Voronoi Centroidal Voronoi (CVT)
Page 17
ICCES'15
STABILITY OF POLYGONAL FEs
Computed values † of the stability parameter
remains bounded away from
zero under mesh refinement for
polygonal meshes*
~ bh
~ bh
† Talischi, C., Pereira, A., Paulino, G.H., Menezes, I.F.M., and Carvalho, M.S.,
“Polygonal Finite Elements for Incompressible Fluid Flow”, IJNMF, 74(2):134-151, 2014.
Page 18
ICCES'15
PERFORMANCE AND ACCURACY
1 – Stokes flow on a unit square with known analytical solution
(smooth problem)
Quadrilateral Triangular (MINI)
Hexagonal
Random Voronoi Centroidal Voronoi (CVT)
Page 19
ICCES'15
PERFORMANCE AND ACCURACY
H1- error in Velocity L2- error in Pressure
Page 20
ICCES'15
“Given a level of error in pressure, the MINI elements require
almost two order of magnitude more DOFs than the CVT”
PERFORMANCE AND ACCURACY
H1- error in Velocity L2- error in Pressure
Page 21
ICCES'15
PERFORMANCE AND ACCURACY
Uniform triangular Centroidal Voronoi (CVT) generated by PolyMesher
Representative example of the family of meshes (a) uniform triangular (b) uniform quadrilateral and (c) centroidal Voronoi (CVT)
Representative example of the family of meshes (a) uniform triangular (b) uniform quadrilateral and (c) centroidal Voronoi (CVT)
Representative example of the family of meshes (a) uniform triangular (b) uniform quadrilateral and (c) centroidal Voronoi (CVT)
Uniform Quadrilateral
Representative example of the family of meshes for the L-shaped problem
2 – Stokes flow on an L-shaped domain with known analytical solution
(non-smooth problem)
Page 22
ICCES'15
PERFORMANCE AND ACCURACY
H1- error in Velocity L2- error in Pressure
Low order elements
Page 23
ICCES'15
PERFORMANCE AND ACCURACY
H1- error in Velocity L2- error in Pressure
High order elements
Page 24
ICCES'15
TOPOLOGY OPTIMIZATION FOR FLUIDS †
Governing BVP
Objective Function (“drag minimization problem”):
= inverse permeability function
(relates design to physics)
• since r is piecewise constant,
this is a discontinuous coefficient
• “porosity approach” *
* Borrvall, T., and Petersson, J., “Topology optimization of fluids in stokes flow”, IJNMF, 41, 1 (2003), 77–107
† Pereira, A., Talischi, C., Paulino, G.H., Menezes, I.F.M., and Carvalho, M.S., “Fluid Flow Topology Optimization in
PolyTop: Stability and Computational Implementation”, JSMO, 2015, doi: 10.1007/s00158-014-1182-z
Page 25
ICCES'15
CHANGES IN POLYTOP CODE
25
20
14
116
14
(13.0%)
(10.5%)
(7.5%)
(61.5%)
(7.5%)
18
9 L
ine
s
Main Loop
Update Scheme (OC)
FE Analysis
Plotting Results
Objective Function
& Constraint
25
20
14
133
14
(12.0%)
(10.0%)
(6.5%)
(65.0%)
(6.5%)
206 L
ines
Elasticity Problems Fluid Flow Problems
22 Lines Changed
11 Lines Deleted
28 Lines Added
Page 26
ICCES'15
NUMERICAL RESULTS
Page 27
ICCES'15
NUMERICAL RESULTS
Diffuser - Problem description
Page 28
ICCES'15
NUMERICAL RESULTS
Diffuser - Solution
Velocity Field Pressure Field Optimal solution
Page 29
ICCES'15
NUMERICAL RESULTS
Bend - Problem description
Page 30
ICCES'15
NUMERICAL RESULTS
Bend - Solution
Velocity Field Pressure Field Optimal solution
Page 31
ICCES'15
NUMERICAL RESULTS
Double Pipe
Problem description Optimal solution
Page 32
ICCES'15
NUMERICAL RESULTS
Double Pipe
Velocity Field Pressure Field
Page 33
ICCES'15
Problem description Optimal solution
NUMERICAL RESULTS
Fluid Mechanism
(maximize the y-velocity at a specific location)
Page 34
ICCES'15
Velocity field Pressure field
NUMERICAL RESULTS
Fluid Mechanism
(maximize the y-velocity at a specific location)
Page 35
ICCES'15
CONCLUDING REMARKS
Page 36
ICCES'15
• The general framework of PolyTop emphasizes a modular code structure
where the analysis routine, including sensitivity calculations with respect to
analysis parameters, and the optimization algorithm are kept separated from
quantities defining the design field.
• This separation in turn permits changing the topology optimization formulation,
including the choice of material interpolation scheme and the complexity control
mechanism (e.g. filters and other manufacturing constraints), without the need
for modifying the analysis function.
• Because polygonal finite elements (from the original PolyTop code) are again
employed for the fluid analysis, the basis function construction and element
integration routines also remain intact.
• The PolyTop code, originally written for compliance minimization in elasticity,
was easily extended to model the problem of minimizing dissipated power in
Stokes flow: only a few lines of codes were involved.
CONCLUDING REMARKS
Page 37
ICCES'15
QUESTIONS ?
Page 38
ICCES'15
Comparison with the 88-line code*
* Andreassen E., Clausen A., Schevenels M., Lazarov B., Sigmund O., “Efficient topology optimization
in MATLAB using 88 lines of code”, JSMO, 43(1):1–16, 2011. doi:10.1007/s00158-010-0594-7
CODE EFFICIENCY
† Design Volume
(OC Update Function)
Mesh Size 90x30 150x50 300x100 600x200
11.9 31.5 135.5 764.1 PolyTop
9.7 24.3 119.7 708.8 88-line†
(time in sec for 200 optimization iterations)
Page 39
ICCES'15
NUMERICAL RESULTS
Diffuser - Results
Diffuser Problem 2,500 elements 10,000 elements
# iterations objective # iterations objective
Present work (curved domain) 18 31.31 19 30.64
Present work (square domain) 19 31.34 19 30.70
Borwall and Petersson (2003) 29 30.59 33 30.46
Page 40
ICCES'15
NUMERICAL RESULTS
Bend - Results
Bend Problem 2,500 elements 10,000 elements
# iterations objective # iterations objective
Present work (curved domain) 36 10.11 31 9.77
Present work (square domain) 37 9.99 30 9.77
Borwall and Petersson (2003) 64 10.01 85 9.76
Page 41
MM&FGM 2014
13TH INTERNATIONAL SYMPOSIUM ON MULTISCALE, MULTIFUNCTIONAL
AND FUNCTIONALLY GRADED MATERIALS 41
GENERATION OF POLYHEDRAL MESH
Seed and its
reflection have a
common edge
A polygonal discretization can be obtained from the Voronoi
diagram of a given set of seeds and their reflections
‡ Talischi, C., Paulino, G.H., Pereira, A., and Menezes, I.F.M., “PolyMesher: a general-purpose mesh generator
for polygonal elements written in Matlab”, JSMO, 45:309–328, 2012. doi:10.1007/s00158-011-0706-z
Page 42
ICCES'15
STABILITY OF POLYGONAL FEs
Families of meshes:
Quadrilateral Hexagonal Random Voronoi Centroidal Voronoi (CVT)
† Beirão da Veiga, L. and Lipnikov, K., “A mimetic discretization of the Stokes
problem with selected edge bubles”, SIAM J Sci Comput, 32(2):875–893, 2010.
“For meshes consisting of convex polygons, the results by
Beirão da Veiga and Lipnikov† guarantees the satisfaction
of INF-SUP condition if every internal node in the mesh is
connected to at most three edges”