DOE OSTI · code-27916
Matlab Code for Multiscale Topology Optimization
Abstract
This Matlab script implements a simple topology optimization algorithm that minimizes the compliance of a structure within a 3D prismatic design domain. It uses a simple linear elastic finite element solver to solve the equilibrium equations, and the optimality criterion (00) method to update the design iteratively. This functionality is identical to, or the simplest possible extension from 2D to 3D of, a 99-line Matlab code released in 2001 in a journal article by Sigmund. What is new in this code is our implementation of simple surrogate models for several truss micro-architectures, which converts this code to a multiscale design tool, whereas the original code is single-scale. The development of these surrogate models and their implementation is described in a journal article we intend to submit. We plan to include the full source code in an Appendix in this paper. The code’s primary function is as a pedagogical tool rather than as a finished software product. Sigmund’s 2001 paper describes the implementation line-by-line. We are including this updated version of the code to allow the reader to understand exactly what changes must be made to a “standard” topology optimization code to implement the surrogate models and thus multiscale design optimization.
Keep this discovery
Explore connections, maps & timelines
Watts, Seth. 2018-08-08. Matlab Code for Multiscale Topology Optimization. https://doi.org/10.11578/dc.20190716.7
Cite the original work for its findings. Save a collection to share your selection of sources.