Saturday, July 19, 2014

FreeFem++ Topology Optimization Scripts

There are lots of open source topology optimization options out there (e.g. 99 line code, ToPy) that I've written about before. One that I haven't posted about yet is a collection of FreeFem++ scripts by Allaire, et al. that illustrate a variety of topology optimization approaches and problems. FreeFem++ is a partial differential equation solver based on the finite element method. FreeFem++problems are defined in scripts that use a high level language. FreeFem++ itself is written in C++.

Here's a list of the scripts they've shared for doing shape/topology optimization with FreeFem++:
parametric optimization of a plate with varying thickness
parametric optimization, minimization of a least-square criterion for an elastic plate with varying thickness (example of non-convergence under mesh refinement)
geometric shape optimization, compliance minimization of a cantilever
topology optimization, maximization of the rigidity of a two-phase elastic bar under torsion
topology optimization, Compliance minimization of a cantilever (with composite penalization)
topology optimization, compliance minimization of a cantilever with a structured mesh
topology optimization, compliance minimization of an arch with a structured mesh
compliance minimization for a cantilever by the level set method
There are some additional scripts that go along with the paper Structural Optimization with FreeFem++ posted as well. The scripts are very much in the educational spirit of the 99 line code. They are concise and well commented.

The several of the scripts I've tried work in the latest version of FreeFem++ that's packaged for Fedora (3.30).

No comments:

Post a Comment