Skip to content

tcreusc/Swan

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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%