Abstract
This paper presents a MATLAB implementation of the material-field series-expansion (MFSE) topology optimization method. The MFSE method uses a bounded material field with specified spatial correlation to represent the structural topology. With the series-expansion method for bounded fields, this material field is described with the characteristic base functions and the corresponding coefficients. Compared with the conventional density-based method, the MFSE method decouples the topological description and the finite element discretization, and greatly reduces the number of design variables after dimensionality reduction. Other features of this method include inherent control on structural topological complexity, crisp structural boundary description, mesh independence, and being free from the checkerboard pattern. With the focus on the implementation of the MFSE method, the present MATLAB code uses the maximum stiffness optimization problems solved with a gradient-based optimizer as examples. The MATLAB code consists of three parts, namely, the main program and two subroutines (one for aggregating the optimization constraints and the other about the method of moving asymptotes optimizer). The implementation of the code and its extensions to topology optimization problems with multiple load cases and passive elements are discussed in detail. The code is intended for researchers who are interested in this method and want to get started with it quickly. It can also be used as a basis for handling complex engineering optimization problems by combining the MFSE topology optimization method with non-gradient optimization algorithms without sensitivity information because only a few design variables are required to describe relatively complex structural topology and smooth structural boundaries using the MFSE method.
Similar content being viewed by others
Abbreviations
- LOBPCG:
-
Locally optimal block preconditioned conjugate gradient
- MBB:
-
Messerschmitt-Bölkow-Blohm
- MFSE:
-
Material-field series-expansion
- MMA:
-
Method of moving asymptotes
- c(x a, x b):
-
Correlation function that describes the correlation between φ(xa) and φ(xb)
- C :
-
Correlation matrix
- E(x):
-
Interpolated material’s Young’s modulus
- l c :
-
User-specified correlation length
- J :
-
Objective function
- K :
-
System stiffness matrix
- N pt :
-
Number of the material-field points
- \(\overline V \) :
-
Specified material usage
- V solid :
-
Volume of the material
- x :
-
Spatial coordinate of a point within the structural design domain
- ε :
-
Truncation error in the material-field series expansion
- β :
-
Parameter that controls the steepness of the projection function
- η :
-
Vector form of the design variables
- η k :
-
Material-field series-expansion coefficients
- φ(x):
-
Bounded material field
- \(\tilde \varphi ({\boldsymbol{x}})\) :
-
Projected material field
- λ k :
-
Eigenvalues of the correlation matrix
- ψ k :
-
Eigenvectors of the correlation matrix
References
Bendsøe M P, Kikuchi N. Generating optimal topologies in structural design using a homogenization method. Computer Methods in Applied Mechanics and Engineering, 1988, 71(2): 197–224
Bendsøe M P. Optimal shape design as a material distribution problem. Structural Optimization, 1989, 1(4): 193–202
Rozvany G I N, Zhou M, Birker T. Generalized shape optimization without homogenization. Structural Optimization, 1992, 4(3–4): 250–252
Wang M Y, Wang X, Guo D. A level set method for structural topology optimization. Computer Methods in Applied Mechanics and Engineering, 2003, 192(1–2): 227–246
Allaire G, Jouve F, Toader A. Structural optimization using sensitivity analysis and a level-set method. Journal of Computational Physics, 2004, 194(1): 363–393
Xie Y M, Steven G P. A simple evolutionary procedure for structural optimization. Computers & Structures, 1993, 49(5): 885–896
Huang X, Xie Y M. Bi-directional evolutionary topology optimization of continuum structures with one or multiple materials. Computational Mechanics, 2009, 43(3): 393–401
Sigmund O, Maute K. Topology optimization approaches. Structural and Multidisciplinary Optimization, 2013, 48(6): 1031–1055
van Dijk N P, Maute K, Langelaar M, et al. Level-set methods for structural topology optimization: A review. Structural and Multidisciplinary Optimization, 2013, 48(3): 437–472
Huang X, Xie Y M. A further review of ESO type methods for topology optimization. Structural and Multidisciplinary Optimization, 2010, 41(5): 671–683
Sigmund O A. 99 line topology optimization code written in MATLAB. Structural and Multidisciplinary Optimization, 2001, 21(2): 120–127
Andreassen E, Clausen A, Schevenels M, et al. Efficient topology optimization in MATLAB using 88 lines of code. Structural and Multidisciplinary Optimization, 2011, 43(1): 1–16
Suresh K. A 199-line MATLAB code for Pareto-optimal tracing in topology optimization. Structural and Multidisciplinary Optimization, 2010, 42(5): 665–679
Otomori M, Yamada T, Izui K, et al. MATLAB code for a level set-based topology optimization method using a reaction diffusion equation. Structural and Multidisciplinary Optimization, 2015, 51(5): 1159–1172
Xia L, Breitkopf P. Design of materials using topology optimization and energy-based homogenization approach in MATLAB. Structural and Multidisciplinary Optimization, 2015, 52(6): 1229–1241
Challis V J. A discrete level-set topology optimization code written in MATLAB. Structural and Multidisciplinary Optimization, 2010, 41(3): 453–464
Liu K, Tovar A. An efficient 3D topology optimization code written in MATLAB. Structural and Multidisciplinary Optimization, 2014, 50(6): 1175–1196
Talischi C, Paulino G H, Pereira A, et al. PolyTop: A MATLAB implementation of a general topology optimization framework using unstructured polygonal finite element meshes. Structural and Multidisciplinary Optimization, 2012, 45(3): 329–357
Wei P, Li Z Y, Li X P, et al. An 88-line MATLAB code for the parameterized level set method based topology optimization using radial basis functions. Structural and Multidisciplinary Optimization, 2018, 58(2): 831–849
Luo Y, Bao J. A material-field series-expansion method for topology optimization of continuum structures. Computers & Structures, 2019, 225: 106122
Luo Y, Xing J, Kang Z. Topology optimization using material-field series expansion and Kriging-based algorithm: An effective nongradient method. Computer Methods in Applied Mechanics and Engineering, 2020, 364: 112966
Svanberg K. The method of moving asymptotes—A new method for structural optimization. International Journal for Numerical Methods in Engineering, 1987, 24(2): 359–373
Luo Y J, Zhan J J, Xing J, et al. Non-probabilistic uncertainty quantification and response analysis of structures with a bounded field model. Computer Methods in Applied Mechanics and Engineering, 2019, 347: 663–678
Guest J K, Prevost J, Belytschko T. Achieving minimum length scale in topology optimization using nodal design variables and projection functions. International Journal for Numerical Methods in Engineering, 2004, 61(2): 238–254
Knyazev A V, Argentati M E, Lashuk I, et al. Block locally optimal preconditioned eigenvalue xolvers (BLOPEX) in HYPRE and PETSc. SIAM Journal on Scientific Computing, 2007, 29(5): 2224–2239
Acknowledgements
The authors acknowledge the support of the National Key R&D Program of China (Grant No. 2017YFB0203604), the National Natural Science Foundation of China (Grant Nos. 11902064 and 11772077), and the Liaoning Revitalization Talents Program, China (Grant No. XLYC1807187). The authors are grateful to members of the iDEAS group for their testing of the code.
Author information
Authors and Affiliations
Corresponding author
Electronic supplementary material
Rights and permissions
About this article
Cite this article
Liu, P., Yan, Y., Zhang, X. et al. A MATLAB code for the material-field series-expansion topology optimization method. Front. Mech. Eng. 16, 607–622 (2021). https://doi.org/10.1007/s11465-021-0637-3
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11465-021-0637-3