PolyPlas: a Python implementation of a topology optimization framework for plasticity with unstructured polygonal finite elements - Alcazar, Emily; Russ, Jonathan B.; Paulino, Glaucio H. (Structural and multidisciplinary optimization, 2025)
We present PolyPlas, a Python implementation for a structural topology optimization framework considering von Mises plasticity with unstructured polygonal finite element meshes. The modular structure of this code is inspired by PolyTop—an early educational code for compliance minimization for linear elastic material. For the purpose of open-source access and extensibility, PolyPlas is fully realized in Python. The nonlinear forward problem is solved via a Newton Raphson procedure with backtracking line search for improved convergence stability. The path-dependent sensitivity analysis is conducted using the adjoint method and a detailed discussion on the path-dependent algorithm and implementation of the sensitivity analysis is included herein. Finally, several numerical examples are presented to illustrate the capabilities of PolyPlas in solving topology optimization problems considering von Mises plasticity, resulting in structures with high energy absorption. PolyPlas is wholly intended for educational purposes and to motivate further advancement in the field of topology optimization considering energy-dissipative phenomena.