A new generation 99 line Matlab code for compliance topology optimization and its extension to 3D

被引:2
作者
Federico Ferrari
Ole Sigmund
机构
[1] Technical University of Denmark,Department of Mechanical Engineering
来源
Structural and Multidisciplinary Optimization | 2020年 / 62卷
关键词
Topology optimization; Matlab; Computational efficiency; Acceleration methods;
D O I
暂无
中图分类号
学科分类号
摘要
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.
引用
收藏
页码:2211 / 2228
页数:17
相关论文
共 77 条
  • [31] Sigmund O(2011)On projection methods, convergence and robust formulations in topology optimization Struct Multidiscip Optim 43 767-505
  • [32] Ferrari F(2015)Design of materials using topology optimization and energy-based homogenization approach in matlab Struct Multidiscip Optim 52 1229-undefined
  • [33] Lazarov BS(2010)Volume preserving nonlinear density filter based on Heaviside functions Struct Multidiscip Optim 41 495-undefined
  • [34] Sigmund O(undefined)undefined undefined undefined undefined-undefined
  • [35] Guest JK(undefined)undefined undefined undefined undefined-undefined
  • [36] Prévost JH(undefined)undefined undefined undefined undefined-undefined
  • [37] Belytschko T(undefined)undefined undefined undefined undefined-undefined
  • [38] Hestenes MR(undefined)undefined undefined undefined undefined-undefined
  • [39] Li L(undefined)undefined undefined undefined undefined-undefined
  • [40] Khandelwal K(undefined)undefined undefined undefined undefined-undefined