# An efficient 146-line 3D sensitivity analysis code of stress-based topology optimization written in MATLAB

arXiv: https://arxiv.org/abs/2104.01210 · HTML: https://mlsanity.com/paper/2104.01210/

## Key facts

- Cited by 3 papers in the map (data through 14 Oct 2026).
- First posted on arXiv 2 Apr 2021.

## Built on by (most cited first, 3 of 3)

- [Three-dimensional Deep Shape Optimization with a Limited Dataset](https://mlsanity.com/paper/2506.12326/) (2025)
- [KATOsuper: Surrogate-accelerated neural topology optimization with sensitivity-consistent Fourier neural operators](https://mlsanity.com/paper/2609.27216/) (2026)
- [Enhanced Data-driven Topology Design Methodology with Multi-level Mesh and Correlation-based Mutation for Stress-related Multi-objective Optimization](https://mlsanity.com/paper/2504.14790/) (2025)

## Abstract (arXiv)

This paper presents an efficient and compact MATLAB code for three-dimensional stress-based sensitivity analysis. The 146 lines code includes the finite element analysis and p-norm stress sensitivity analysis based on the adjoint method. The 3D sensitivity analysis for p-norm global stress measure is derived and explained in detail accompanied by corresponding MATLAB code. The correctness of the analytical sensitivity is verified by comparison with finite difference approximation. The nonlinear optimization solver is chosen as the Method of moving asymptotes (MMA). Three typical volume-constrained stress minimization problems are presented to verify the effectiveness of sensitivity analysis code. The MATLAB code presented in this paper can be extended to resolve different stress related 3D topology optimization problems. The complete program for sensitivity analysis is given in the Appendix and is intended for educational purposes only.
