Version française

A FreeFem++ Toolbox

for shape optimization (geometry and topology)

CMAP, Ecole Polytechnique, January 2008

We propose several FreeFem++ routines which allow the users to optimize the thickness, the geometry or the topology of elastic structures. All examples are programmed in two space dimensions (a 3-d version is under current development). These routines have been written by G. Allaire, B. Boutin, C. Dousset, O. Pantz.

Warning : Although they have been written and tested with great care, these FreeFem++ programs come with absolutely no warranty. Their authors decline any responsability linked to their use.

What is shape optimization ? In the context of solid mechanics it is also called structural optimization. It is the mathematical theory which makes possible the ``automatic'' optimization of mechanical structures. By ``automatic'' it is meant that these methods and algorithms can be implemented on a computer which can analyse and improve the designs of numerous successive configurations without any help from the engineer or designer. For more details on this topic we refer to the book "Conception optimale de structures" quoted below.

What is FreeFem++ ? FreeFem++ is a software for solving partial differential equations by the finite element method. It is a free software, written in C++, developed by F. Hecht, O. Pironneau, A. Le Hyaric, K. Ohtsuka, and it runs on several Unix, Windows and MacOS platforms. It can be freely downloaded here.

Useful links

  • To download the FreeFem++ software (as well as its user manual including many examples).
  • Web site of the shape optimization group at Ecole Polytechnique.
  • Web site web of the graduate course "Optimal design of structures" (MAP 562) at Ecole Polytechnique.
  • Book "Conception optimale de structures" published by Springer in the series "Mathématiques et Applications", volume 58, 2007, 280 p., 91 illus., ISBN-10: 3-540-36710-1, ISBN-13: 978-3-540-36710-9.
  • An article, by G. Allaire and O. Pantz, explaining how to use FreeFem++ for shape optimization Structural Optimization with FreeFem++, Structural and Multidisciplinary Optimization, 32, pp.173-181 (2006).
  • List of FreeFem++ computer programs

  • Parametric (or sizing) shape optimization
    optimal thickness of a plate non-existence of an optimal shape
  • Compliance minimization of an elastic plate with varying thickness  plate.edp
  • Minimization of a least-square criterion for an elastic plate with varying thickness (example of non-convergence under mesh refinement)  counterex.edp
  • Geometric shape optimization
    initial shape of a cantilever final shape of a cantilever
  • Compliance minimization of a cantilever  cantilever_en.edp
  • Topology optimization
    optimal shape of a cantilever optimal shape of a bridge
  • Maximization of the rigidity of a two-phase elastic bar under torsion  torsion_en.edp
  • Compliance minimization of a cantilever (with composite penalization)  cantilever.homog.edp
  • Compliance minimization of a cantilever with a structured mesh  cantilever.homog.struct.edp
  • Compliance minimization of an arch with a structured mesh  pont.homog.struct.edp
  • Level set method
    cantilever optimal shape
  • Compliance minimization for a cantilever by the level set method  levelset-cantilever.edp
  • Other FreeFem++ programs corresponding to the article of G. Allaire and O. Pantz, Structural Optimization with FreeFem++, SMO, 32, pp.173-181 (2006).
  • These computer programs (FreeFem++ scripts) are available in this directory (read first the "readme" file).