A 99 line topology optimization code written in MATLAB®

The Matlab code presented in this page is intended for engineering education. Students and newcomers to the field of topology optimization can find the code here and download it. The code may be used in courses in structural optimization where students may be assigned to do extensions such as multiple load-cases, alternative mesh-independency schemes, passive areas, etc..


The code is here top.m (5K, Shift+click to save). This version of the code is optimized with respect to speed compared to the original version and was released on May 28th, 2002.

Save the program and start Matlab in the same directory. Run the program by writing for example:

>> top(30,10,0.5,3.0,1.5)

in the Matlab prompt.

A description of the code can be found in the paper "A 99 line topology optimization code written in MATLAB" (PDF) (160K) (Structural and Multidisciplinary Optimization 21(2), 2001, pp. 120-127) by Ole Sigmund.
The original publication is available at http://dx.doi.org/10.1007/s001580050176

Since October 15, 1999 the MATLAB code has been downloaded 64158 times by 20905 unique users and the article has been downloaded 253222 times by 41710 unique users.