TopOpt.jl Tutorials
Interactive, executable examples that walk through complete topology optimization workflows — from problem setup to visualization.
Density-based methods
BESO: Bi-directional Evolutionary Structural Optimization
2D compliance minimization on the HalfMBB beam with problem setup, FEA solver, sensitivity filtering, and BESO algorithm loop.
SIMP: Solid Isotropic Material with Penalization
3D compliance minimization on a cantilever with density filtering, Nonconvex.jl + MMA87, and Makie visualization.
GESO: Genetic Evolutionary Structural Optimization
2D compliance minimization with genetic algorithm — binary encoding, crossover, and mutation for global search.
Penalty ramp (1.0 → 5.0) for improved convergence on cantilever, Half MBB, L-beam, and tie-beam benchmarks.
TOBS: Topological Optimization of Binary Structures
Binary (0/1) topology optimization with sequential linearization and Cbc.jl branch-and-cut for 16,000+ variables.
Heat conduction
Heat Conduction: Conductivity Tree
Thermal compliance minimization with the classic branching tree benchmark — heat flux on top, fixed temperature at bottom.
Heat Sink with Temperature BCs
Asymmetric temperature BCs (T=100 left, T=0 right), distributed flux from top, and Zygote gradient verification.
Stress and buckling
Stress-constrained L-bracket with relaxed stress and p-norm/KS/ε-relaxation aggregation. Minimizes volume subject to a global stress constraint, reproducing the classic rounded-corner design.
Element-wise stress limits using Percival.jl for large-scale constrained optimization with continuation SIMP.
Buckling-Constrained Truss Optimization
Semidefinite programming (SDP) constraints for stability via NonconvexSemidefinite.jl. Enforces K + c·Kσ ≽ 0.
Advanced parametrization
Softmax parametrization for distributing 3+ candidate materials with mass constraints and MaterialInterpolation.
Neural Network Parametrization (IPOPT)
4-layer MLP parametrization with feasibility restoration and augmented-Lagrangian refinement using IPOPT.
Neural Network Parametrization (Adam)
6-layer MLP with Adam optimizer and continuation on penalty and constraint aggregation weight.
Truss optimization
Compliance minimization on bar structures with JSON-defined geometry, power-law penalization, and MMA87 optimizer.
Mixed-Integer Truss Optimization
Binary (0/1) truss design via Juniper.jl branch-and-bound with IPOPT relaxation — crisp layouts with no intermediate densities.
Problem types
Standard benchmarks: point load cantilever (2D/3D), Half MBB, L-beam, tie-beam, and INP file import from CAD.
Ground structure via JSON files, programmatic truss cantilever construction, and 2D vs 3D truss differences.