Fenicsx_pml just released

I have just released fenicsx_pml.

This module is a complete refactor and serves as the official replacement for the legacy autogen_LC_PML repository.

Updates include:

  • Custom vectorized layer extrusion. Extrudes directly from gmsh meshes. The old geometry-only approach is gone.
  • Fully MPI-ready
  • Simplified math: I completely removed the need to calculate principal curvatures and principal directions.

There is a working demo for acoustic wave propagation (Helmholtz) included in the repo.

Regarding electromagnetics, the exact same coordinate stretching could be applied to the time-harmonic Maxwell’s equations. If you are an EM expert who actually enjoys assembling curl-curl operators in UFL, we can add another demo!

Repo: https://github.com/bayswiss/fenicsx_pml

Install:

git clone https://github.com/bayswiss/fenicsx_pml.git
cd fenicsx_pml
pip install .

P.S. report any bugs you may find, thank you!

6 Likes