Skip to content

tcreusc/Swan

This branch is 7 commits ahead of, 3177 commits behind SwanLab/Swan:master.

Folders and files

NameName
Last commit message
Last commit date
May 31, 2022
Jun 29, 2021
Apr 7, 2022
May 27, 2022
Jun 29, 2021
Oct 12, 2021
May 12, 2022
May 4, 2022
Mar 9, 2022
May 31, 2022
Feb 10, 2022
Mar 6, 2022
Jun 29, 2021
May 31, 2022
Feb 12, 2022
May 2, 2022
May 4, 2022
Mar 3, 2022
May 31, 2022
Apr 20, 2022
Apr 20, 2022
May 2, 2022
Apr 20, 2022
Apr 20, 2022
Oct 1, 2021
Jun 29, 2021
Apr 20, 2022
Apr 20, 2022
May 2, 2022
Apr 20, 2022
Apr 20, 2022
Apr 19, 2022
Apr 20, 2022
May 2, 2022
Oct 1, 2021
May 5, 2022

Repository files navigation

Swan - Topology Optimization Laboratory

drawing

"It is not enough for code to work." ― Robert C. Martin

Swan is a Topology Optimization software developed in Matlab. Currently, it supports the resolution of 2D and 3D topology optimization problems with density or level-set as design variables. Swan aims to offer an adaptable framework that allows to implement new optimization techniques or functionalities fastly, thanks to its modular design.

Solution Minimization of compliance subject to volume for a 3D cantilever beam, using Level Set methods.

Current features

Swan currently supports the resolution of macro and micro* scale problems defined in terms of the following design variables:

  • Density
  • Level Set

*Note: 3D micro scale problems are not available yet.

Intermediate material properties are determined by the following implemented interpolation schemes:

  • SIMP
  • SIMP-ALL

Swan's modular design allows to combine several functions to define different optimization problems. Each function can be used as a cost or a constraint in the optimization problem. The functions that are currently implemented are:

  • Compliance
  • Volume
  • Perimeter
  • Non-self adjoint compliance (used to minimize/maximize displacements)
  • Homogenized elasticity matrix (used in micro scale problems)

In terms of optimization techniques, the following optimizers are implemented:

  • Density: Projected Gradient, MMA and IPOPT.
  • Level-set: SLERP, Projected SLERP and Hamilton-Jacobi

Unconstrained optimizers are combined with an Aumgmented Lagrangian to solve constrained problems.

Contact

For any inquiries, please contact us by opening an issue.

Current active developers are: Àlex Ferrer (@FerrerFerreAlex), Marc Núñez (@marcnunezc) and Oriol Trujillo (@Trujillo94)

Previous developers are acknowledged: Ferran De la Fuente, Nacho Izquierdo Pérez, Raül Rubio Serrano, Albert Torres Rubio

References

M. P. Bendsøe, Optimal shape design as a material distributionproblem, Structural optimization, vol. 1, no. 4, pp. 193–202, Dec1989. [Online]. Available: https://doi.org/10.1007/BF01650949

S. Amstutz, H. Andrä, A new algorithm for topology optimization using a level-set method, J. Comput. Phys. 216 (2) (2006) 573–588.

K. Svanberg, The method of moving asymptotes – a new method for structural optimization, International Journal for Numerical Methods in Engineering, 1987, 24, 359-373.

S. Amstutz, C. Dapogny, and A. Ferrer, A consistent relaxation of optimal design problems for coupling shape and topological derivatives, Numerische Mathematik, vol. 140, no. 1, pp. 35–94, Sep 2018. [Online]. Available: https://doi.org/10.1007/s00211-018-0964-4

G. Allaire, F. Jouve, A.-M. Toader, Structural optimization using sensitivity analysis and a level-set method, J. Comput. Phys. 194 (1)(2004) 363–393, http://dx.doi.org/10.1016/j.jcp.2003.09.032.

A. Wächter and L. T. Biegler, On the Implementation of a Primal-Dual Interior Point Filter Line Search Algorithm for Large-Scale Nonlinear Programming, Mathematical Programming 106(1), pp. 25-57, 2006

About

Topology Optimization Laboratory

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • MATLAB 99.5%
  • Objective-C 0.4%
  • Fortran 0.1%
  • Forth 0.0%
  • C 0.0%
  • Tcl 0.0%