All projects
Topology-optimised compliant mechanisms
A dual-language SIMP framework for synthesising displacement-amplifying flexures, with adjoint sensitivities derived from first principles.
- Jan – Jun 2025
- Solo project
- Python and MATLAB
Problem
A compliant mechanism that amplifies a small input displacement has no obvious parametric form to tune — the useful designs are the ones nobody would draw by hand. Topology optimisation finds them, but the textbook route costs a finite-difference sensitivity sweep per design variable per iteration, which makes the search impractically slow.
Approach
- Implemented SIMP density-based topology optimisation twice, in Python and in MATLAB, so each served as a check on the other.
- Derived the adjoint sensitivities from first principles rather than taking them from a reference implementation, which is what removes the per-variable finite-difference cost.
- Used optimality-criteria updates under an adaptive move-limit rule, tightening the limit as the design settles instead of fixing it up front.
- Validated the optimised designs against geometrically nonlinear FEA in COMSOL, not only the linear model the optimiser itself assumes.
- Printed the resulting flexures on an FDM machine and measured them.
Results
- 10× displacement amplification from the optimised flexure.
- Per-epoch convergence more than 60% faster than the finite-difference sensitivity baseline.
- Agreement within 5% between the optimiser, geometrically nonlinear COMSOL FEA and the FDM-printed prototypes.
My role and context
Solo project, January to June 2025. Written up as a manuscript in preparation, targeting Structural and Multidisciplinary Optimization.
Limitations and next steps
- The optimiser works on a linear-elastic model; the nonlinear check happens afterwards in COMSOL, so large-deflection effects do not steer the search.
- SIMP leaves grey intermediate densities that have to be thresholded before manufacture, and the threshold is chosen by hand.
- The printed prototypes were measured quasi-statically. Fatigue life and the rate dependence of the printed material are untested.
Links
Code to be released with the paper.