A MATLAB Script for Solving 2D/3D Minimum Compliance Problems using Anisotropic Mesh Adaptation. (2017) - Jensen, Kristian Ejlebjerg
Abstract: We present a pure MATLAB implementation for solving 2D/3D compliance minimization problems using the density method. A filtered design variable with a minimum length is computed using a Helmholtz-type differential equation. The optimality criteria is used as optimizer and to avoid local minima we apply continuation of an exponent that controls the stiffness associated with intermediate design variables. We constrain the volume from above and use the implementation to show that optimizations with dynamic meshes can save significant amounts of computational time compared to fixed meshes without introducing mesh dependence for the mesh topology. This is despite the fact that the dynamic meshes cause oscillations of the objective function, particular for coarse meshes in 3D. The meshes are generated using anisotropic mesh adaptation based on local mesh modifications and we extent these modifications to preserve the information required for interpolating the design variables between meshes. We exploit symmetry boundaries in 3D, but not in 2D. Dirichlet boundary conditions are used to prevent non-zero filtered design variables on free boundaries. Mesh adaptation involves substantial book keeping, so the implementation totals some 5, 000 lines of MAT-LAB code, but the functions associated with the forward analysis, geometry/mesh setup and optimization are concise and well documented, so the implementation can be used as a starting point for research on related topics.