Null space optimizer

nullspace_optimizer is a package implementing the null space algorithm for nonlinear constrained optimization based on the publication

[11] Feppon, F., Allaire, G. and Dapogny, C. Null space gradient flows for constrained optimization with applications to shape optimization (2020). ESAIM: COCV, 26 90 (Open Access). HAL preprint hal-01972915. (abstract) (bibtex)

nullspace

Some optimization trajectories obtained with the open-source implementation of our algorithm on a demonstrative test case.

The package is suitable for being used for topology optimization but it can also potentially be applied to rather general constrained optimization problems. See this page for a quick introduction to the algorithm.

PyMedit

PyMedit is a python package which allows to conveniently process triangle or tetrahedral meshes and solution files in the INRIA .mesh and .sol file formats.

Example_pymedit

A finite element mesh generated by PyMedit.

The library is interfaced with Mmg and advect and mshdist from the ISCD toolbox for convenient remeshing, advection or signed distance function computation in python.

PyFreeFEM

PyFreeFEM is a package which allows to interface FreeFEM scripts with python. PyFreeFEM parses special instructions added to a FreeFEM script and converts it into a proper .edp file executable by FreeFEM, which itself can be run from python. It also includes functions to read and write FreeFEM arrays or sparse matrices in the numpy format.