Researchers at the Centre for Innovative Structures and Materials have developed a series of topology optimisation software packages available for download.
BESO 2D
​
BESO2D is a standalone program for topology optimisation for 2D structures using the latest BESO algorithms. BESO2D comes with a free license and has been introduced in 'Chapter 10 Computer Program BESO2D' by Zuo, Z.H. in the book Evolutionary Topology Optimisation of Continuum Structures: Methods and Applications, Huang, X. and Xie, Y.M. Chichester, England, John Wiley & Sons, Ltd, 2010.
​
​
​
BESO in Python for general 3D topology optimisation
​
The following Python scripts are implementations of BESO for stiffness optimisation. The Python scripts take advantage of the advanced FEA capacities of the Abaqus* software and implement the Abaqus Scripting Interface (ASI).
These scripts are published in Zuo ZH, Xie YM (2015). A simple and compact Python code for complex 3D topology optimization. Advances in Engineering Software 85: 1-11. The source codes are explained in detail in this paper.
​​
Python scripts available:
-
BESO_Basic.py [PY 5KB] (Basic version of the Python code)
-
BESO_Adv_ML.py [PY 5KB] (Advanced version with multiple load case capacities)
-
BESO_Adv_NL.py [PY 5KB] (Advanced version with large deformation capacity)
-
PltResults.py [PY 2KB] (Script for automatic display of optimised solution generated by the above scripts)
​
An improved version of the BESO 3D Python script is given below, which is much faster for large models. Also provided are files of two example models (a 2D cantilever and a 3D bridge), created using Abaqus 2022. The new Python script was written by Mr Yulin Xiong and Dr Xin Yan in 2023, based on the script BESO_Basic.py above.
​
-
Improved BESO.py (Improved version of the Python code)
-
2D cantilever.cae (Abaqus CAE file for 2D cantilever example)
-
2D cantilever.jnl (Abaqus journal file for 2D cantilever example)
-
3D bridge.cae (Abaqus CAE file for 3D bridge example)
-
3D bridge.jnl (Abaqus journal file for 3D bridge example)
MATLAB Code
​
This is a simple MATLAB code for 2D topological stiffness optimisation. This code has been introduced in Chapter 4 of Evolutionary Topology Optimisation of Continuum Structures: Methods and Applications, by Huang, X. and Xie, Y.M., Chichester, England, John Wiley & Sons, Ltd, 2010.
​
​
* ABAQUS is a trademark of SIMULIA.
iBESO: An interactive topology optimization design tool
​
iBESO is a digital design tool that can generate innovative, lightweight, and efficient 2D structural designs. It is developed based on the interactive topology optimization method considering subjective preferences, SP-BESO. This technique allows designers to iteratively explore desired designs by alternately inputting quantified subjective preferences and performing topology optimization.
​
The software is published in Li, Z., Lee, T.U., Xie, Y.M., (2023). Interactive structural topology optimization with subjective scoring and drawing systems. Computer-Aided Design 160: 103532. The software is explained in detail in this paper.
​
Ameba Software
​
Ameba is a topology optimisation tool developed by Mike Xie’s team based on the BESO method. It is built on the Rhino Grasshopper platform. Users may, according to design requirements, apply different loading and boundary conditions to the initial design domain. Through an iterative computational process, Ameba will evolve the design domain into various shapes, and eventually reach an organic form that is structurally efficient.
​
​