Skip to main content
Log in

A level set-based structural optimization code using FEniCS

  • EDUCATIONAL ARTICLE
  • Published:
Structural and Multidisciplinary Optimization Aims and scope Submit manuscript

Abstract

This paper presents an educational code written using FEniCS, based on the level set method, to perform compliance minimization in structural optimization. We use the concept of distributed shape derivative to compute a descent direction for the compliance, which is defined as a shape functional. The use of the distributed shape derivative is facilitated by FEniCS, which allows to handle complicated partial differential equations with a simple implementation. The code is written in the framework of linearized elasticity, and can be easily adapted to tackle other functionals and partial differential equations. We also provide an extension of the code for compliant mechanisms. We start by explaining how to compute shape derivatives, and briefly discuss the differences between the distributed and boundary expressions of the shape derivative. Then we describe the implementation in details, and show the application of this code to some classical benchmarks of topology optimization. The files are provided in Online Resource 1 to 3 and also available at http://antoinelaurain.com/compliance.htm. The main file is also given in the Appendix.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7

References

Download references

Acknowledgments

The author would like to thank the anonymous reviewers for their detailed comments and suggestions which have helped improve this paper significantly. The author acknowledges the support of FAPESP, process: 2016/24776-6, and of the Brazilian National Council for Scientific and Technological Development (Conselho Nacional de Desenvolvimento Científico e Tecnológico - CNPq), through the program “Bolsa de Produtividade em Pesquisa - PQ 2015”, process: 302493/2015-8.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Antoine Laurain.

Additional information

Responsible Editor: Gregoire Allaire

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Electronic supplementary material

Below is the link to the electronic supplementary material.

(PY 9.55 KB)

(PY 8.54 KB)

(PY 11.0 KB)

(PDF 112 KB)

Appendix: FEniCS code compliance.py

Appendix: FEniCS code compliance.py

figure a
figure b
figure c

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Laurain, A. A level set-based structural optimization code using FEniCS. Struct Multidisc Optim 58, 1311–1334 (2018). https://doi.org/10.1007/s00158-018-1950-2

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00158-018-1950-2

Keywords

Navigation