FreeTO
What it is
FreeTO is free, open-source MATLAB code for initializing, optimizing, and post-processing free-form three-dimensional topology optimization problems. It accepts STL files describing a design domain and load-carrying subdomains, plus mesh controls and a target volume fraction. A structured hexahedral mesh is used to produce structures with smooth boundaries. SIMP is the documented default optimization method, and SEMDOT is also supported. Inputs can define supports, force magnitudes, up to nine additional load cases, and regions that must remain unchanged. Optimized topologies can be mirrored across as many as three specified symmetry planes. Outputs include compliance, volume fraction, density arrays, element counts, optimization histories, a topology display, and an optional STL file. Sample problems cover a GE bracket, airplane bracket, human hand model, and quadcopter. The repository includes an MIT license and uses other open-source codes, including intriangulation.m, modified top3D.m, SEMDOT.m, and phi2stl.m. Its current optimizer uses optimality criteria; the MMA implementation is commented out.
For and against
For
- Open-source MATLAB implementation
- Accepts STL design domains
- Supports SIMP and SEMDOT methods
- Handles multiple loads and symmetry planes
- Optional STL output
Against
- MMA implementation is commented out
- Uses optimality criteria in the repository version
- Requires MATLAB and listed supporting codes
The verdict
FreeTO provides a focused MATLAB workflow for free-form 3D topology optimization, with documented inputs, outputs, examples, and an MIT license. The unavailable MMA implementation is an important constraint for method selection.
Who it suits
FreeTO suits MATLAB users working on free-form 3D topology optimization with STL-based domains, specified loads, supports, and symmetry. It is also relevant to users who need modifiable open-source code under an MIT license.
On the record
- Citations
- The maker asks users who find the code helpful to cite an open-access paper linked from the repository.github.com · read 4 Oct 2026
- Dependencies
- The README says FreeTO uses other open-source codes, including intriangulation.m, modified top3D.m, SEMDOT.m, and phi2stl.m.github.com · read 7 Oct 2026
- Examples
- The repository includes sample problems for a GE bracket, an airplane bracket, a human hand model, and a quadcopter.github.com · read 7 Oct 2026
- Input
- The main function accepts STL files for the design domain and load-carrying subdomains.github.com · read 4 Oct 2026
- Input format
- The function takes STL files for the design domain and load-carrying subdomains, plus mesh control and a target volume fraction.github.com · read 7 Oct 2026
- License
- GitHub identifies the repository as open source and links an MIT license.github.com · read 7 Oct 2026
- Loads and constraints
- Inputs include support conditions, load magnitudes, up to nine additional load cases, and regions that should remain unchanged during optimization.github.com · read 7 Oct 2026
- Loads and supports
- Inputs can specify support conditions and force magnitudes, and the code documents up to nine additional load cases.github.com · read 4 Oct 2026
- Maker
- The repository owner profile identifies the maker as Osezua Ibhadode.github.com · read 7 Oct 2026
- Mesh and boundaries
- It performs 3D topology optimization through structured meshes with smooth boundaries.github.com · read 7 Oct 2026
- Optimization methods
- The README lists SIMP and SEMDOT as optimization method options, with SIMP as the default.github.com · read 7 Oct 2026
- Optimizer limit
- The repository version uses the optimality criteria method; the MMA implementation is commented out, and the README says users must request the relevant codes from Prof. Krista Svanberg by email.github.com · read 7 Oct 2026
- Optimizer limitation
- The repository uses the optimality criteria method; its MMA implementation is commented out, and the maker says users can request the required code from Prof. Krista Svanberg by email.github.com · read 4 Oct 2026
- Outputs
- Documented outputs include compliance, volume fraction, density arrays, optimization histories, a topology display, and an optional STL file.github.com · read 4 Oct 2026
- Purpose
- FreeTO is open-source MATLAB code for initializing, optimizing, and post-processing free-form 3D topology optimization problems.github.com · read 7 Oct 2026
- Results
- Outputs include topology compliance, volume fraction, density arrays, element counts, visual displays, and an optional STL file.github.com · read 7 Oct 2026
- Symmetry
- The code can mirror an optimized topology across up to three symmetry planes.github.com · read 7 Oct 2026