A new generation 99 line Matlab code for compliance topology optimization and its extension to 3D
- PDF / 5,217,558 Bytes
- 18 Pages / 595.224 x 790.955 pts Page_size
- 15 Downloads / 212 Views
EDUCATIONAL PAPER
A new generation 99 line Matlab code for compliance topology optimization and its extension to 3D Federico Ferrari1
· Ole Sigmund1
Received: 18 February 2020 / Revised: 2 May 2020 / Accepted: 10 May 2020 © Springer-Verlag GmbH Germany, part of Springer Nature 2020
Abstract Compact and efficient Matlab implementations of compliance topology optimization (TO) for 2D and 3D continua are given, consisting of 99 and 125 lines respectively. On discretizations ranging from 3 · 104 to 4.8 · 105 elements, the 2D version, named top99neo, shows speedups from 2.55 to 5.5 times compared to the well-known top88 code of Andreassen et al. (Struct Multidiscip Optim 43(1):1–16, 2011). The 3D version, named top3D125, is the most compact and efficient Matlab implementation for 3D TO to date, showing a speedup of 1.9 times compared to the code of Amir et al. (Struct Multidiscip Optim 49(5):815–829, 2014), on a discretization with 2.2 · 105 elements. For both codes, improvements are due to much more efficient procedures for the assembly and implementation of filters and shortcuts in the design update step. The use of an acceleration strategy, yielding major cuts in the overall computational time, is also discussed, stressing its easy integration within the basic codes. Keywords Topology optimization · Matlab · Computational efficiency · Acceleration methods
1 Introduction The celebrated top99 Matlab code developed by Sigmund (2001) has certainly promoted the spreading of topology optimization among engineers and researchers, and the speedups carried by its heir, top88 (Andreassen et al. 2011), substantially increased the scale of examples that can be solved on a laptop. On these footprints, several other codes have followed, involving extension to 3D problems (Liu and Tovar 2014; Amir et al. 2014), material design (Andreassen and Andreasen 2014; Xia and Breitkopf 2015), level– set parametrizations (Wang 2007; Challis 2010), use of advanced discretization techniques (Talischi et al. 2012;
Responsible Editor: Palaniappan Ramu Federico Ferrari
[email protected] Ole Sigmund [email protected] 1
Department of Mechanical Engineering, Technical University of Denmark, Nils Koppels All´e 404, 2800 Kongens Lyngby, Denmark
Suresh 2010; Sanders et al. 2018), or integration of TO within some finite element frameworks. With the evolution of TO and its application to more and more challenging problems, implementations in top88 may have become outdated. Also, Matlab has improved in the last decade. Hence, we believe it is time to present a new “exemplary” code collecting shortcuts and speedups, allowing to tackle medium-/large-scale TO problems efficiently on a laptop. Preconditioned iterative solvers, applied for example in Amir and Sigmund (2011), Amir et al. (2014), Ferrari et al. (2018) and Ferrari and Sigmund (2020), allow the solution of the state equation with nearly optimal efficiency (Saad 1992). Thus, the computational bottleneck has been shifted on other operations, such as the matrix assembly or the repeated appli
Data Loading...