Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

GitHub Workflow Status GitHub release (latest by date) jossstatus

PyPI PyPI - Implementation PyPI - Downloads

Docker Pulls badge

lite-badge

Documentation

A preliminary collection of documentation (demos, tutorials, mini API) can be found here and is also part of the i-tutorials of NGSolve, see here. A simple doxygen collection of NGSolve, ngsxfem and ngstrefftz C++ API can be found here.

About ngsxfem

ngsxfem is an add-on library to the finite element package Netgen/NGSolve which enables the use of unfitted finite element technologies known as XFEM, CutFEM, TraceFEM, Finite Cell, ... . ngsxfem is an academic software. Its primary intention is to facilitate the development and validation of new numerical methods for partial differential equations.

The features of ngsxfem

The main features of ngsxfem are:

  • Tools to work on a subset of the triangulation, the "active mesh" only
  • Numerical integration on geometries that are (implicitly) described through level set functions.
  • Higher order representation of level set geometries
  • Space-Time Finite Elements for the treatment of moving domain problems
  • All these features combined with the usual flexibility and power of NGSolve.

ngsxfem has been used in a variety of applications. In the document doc/feature-details.md (see also compiled pdf ) more details on the features is given and in doc/literature.md (see also literature ) an overview of the scientific literature where ngsxfem is used is provided.

Not all features of ngsxfem and NGSolve can directly be combined. Here is an overview of ngsxfem and NGSolve features and if they can directly be combined:

Features ⇲ CFE XFE DG Iso MLS ST Gh Ag Hex Tet MPI
CFE: CutFEM form. / / y y y y y y y y y
XFE: XFEM formulation / / y y n n y n y y y
DG: Discont. Galerkin y y / y n y y y y y n
Iso: isoparametric map y y y / n y y y y y y
MLS: multiple level set y n n n / n y y n y y
ST: space-time FEM y n y y n / y n y y y
Gh: Ghost penalty y y y y y y / / y y n
Ag: Agg. FEM y n y y y n / / y y n
Hex: quads / hexes y y y y n y y y / / y
Tet: trigs./tets y y y y y y y y / / y
MPI: MPI y y n y y y n n y y /

Some of the nos are work in progress and some have not been considered so far. If you need a certain combination to work, please contact us and we will see what we can do (MPI for Gh is planned for the not so far future).

Examples and Documentation

We provide two main sources with which to learn how to use ngsxfem:

  • At https://github.com/ngsxfem/ngsxfem-jupyter you can find tutorial-style jupyter notebooks for ngsxfem. These explain the core functionalities and usage of the tools provided by ngsxfem. You can run those tutorials interactively (without the need of a local installation) through binder.
  • In the demos-directory we provide several examples that demonstrate the usage of ngsxfem features. See demos/README.md for details.

Installation

We provide installation instructions for building/installing through pip and building/installing from sources in INSTALLATION.md. Further, a docker image is available which can be used to run ngsxfem through docker.

List of contributing authors

Major contributions:

  • Christoph Lehrenfeld (main author)
  • Fabian Heimann (cut integration, space-time, AggFEM)
  • Henry von Wahl (multiple levelsets, mac support, AggFEM)
  • Janosch Preuss (space-time)
  • Thomas Ludescher (multigrid)
  • Paul Stocker (CI, docu, builds, AggFEM)

Additional contributions:

  • Pedro Costa Klein (CI, docu)
  • Maximilian Zienecker (SIMD, CI)

Community guidelines

If you observe any problems with the software / examples / documentation / installation or want to contribute, you can get in touch with us through either:

Citing

If you use ngsxfem for academic work, please consider citing our publication:

C. Lehrenfeld, F. Heimann, J. Preuß and H. von Wahl
ngsxfem: Add-on to NGSolve for geometrically unfitted finite element discretizations
Journal of Open Source Software, 6(64), 3237,
https://doi.org/10.21105/joss.03237

Release files for xfem 2.1.2607.dev6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for xfem 2.1.2607.dev6
File Size Uploaded
xfem-2.1.2607.dev6.tar.gz 2.2 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for xfem 2.1.2607.dev6
File
xfem-2.1.2607.dev6-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
xfem-2.1.2607.dev6-cp313-cp313-manylinux_2_28_x86_64.manylinux2014_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
xfem-2.1.2607.dev6-cp313-cp313-macosx_10_9_universal2.whl CPython 3.13 CPython 3.13 macOS 10.9+ universal2 (ARM64, x86-64) Details
xfem-2.1.2607.dev6-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
xfem-2.1.2607.dev6-cp312-cp312-manylinux_2_28_x86_64.manylinux2014_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
xfem-2.1.2607.dev6-cp312-cp312-macosx_10_9_universal2.whl CPython 3.12 CPython 3.12 macOS 10.9+ universal2 (ARM64, x86-64) Details
xfem-2.1.2607.dev6-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
xfem-2.1.2607.dev6-cp311-cp311-manylinux_2_28_x86_64.manylinux2014_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
xfem-2.1.2607.dev6-cp311-cp311-macosx_10_9_universal2.whl CPython 3.11 CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64) Details
xfem-2.1.2607.dev6-cp310-cp310-manylinux_2_28_x86_64.manylinux2014_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
xfem-2.1.2607.dev6-cp310-cp310-macosx_10_9_universal2.whl CPython 3.10 CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64) Details

Total release size:24.7 MB

Release files / xfem-2.1.2607.dev6.tar.gz

Download URL xfem-2.1.2607.dev6.tar.gz
Size 2.2 MB
Tags Source
SHA-256 checksum
How to use checksums
92f0ede072ed1dc7c30a3800c7bece3bd928785d362fc1137d4ba50f2b41dafe
BLAKE2b-256 checksum
How to use checksums
118611a5b81cc846c8c18719432cce4c2ba3631fa34d87caed04175c7878c622
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / xfem-2.1.2607.dev6-cp313-cp313-win_amd64.whl

Download URL xfem-2.1.2607.dev6-cp313-cp313-win_amd64.whl
Size 947.3 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
573948fd796082b27901dd371d0b401f1dfd95c5a0fa7e5aedab4e592c81f3a8
BLAKE2b-256 checksum
How to use checksums
63a1821f8a8e36f3513392c7151eb6440dbb426aaedacb84532ffb7c2cadf66f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / xfem-2.1.2607.dev6-cp313-cp313-manylinux_2_28_x86_64.manylinux2014_x86_64.whl

Download URL xfem-2.1.2607.dev6-cp313-cp313-manylinux_2_28_x86_64.manylinux2014_x86_64.whl
Size 1.9 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
ddb6c42d5b2efbb15dbedc74188667b0aca459890736ef85dca6da741b4140fe
BLAKE2b-256 checksum
How to use checksums
56083f7895f2685004a0b542cfd1a85813d43907e46f4f558859d32b588b3cfb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / xfem-2.1.2607.dev6-cp313-cp313-macosx_10_9_universal2.whl

Download URL xfem-2.1.2607.dev6-cp313-cp313-macosx_10_9_universal2.whl
Size 3.0 MB
Tags CPython 3.13 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
6f2babe49ac4cd647097db5da5d16c04f8feaab38b4e1a354bd0d80a2c74ec97
BLAKE2b-256 checksum
How to use checksums
69a963b4ebeb014d7d4ddf0e41289e2441be9fd8c47b8607484b4ecccc0bfd41
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / xfem-2.1.2607.dev6-cp312-cp312-win_amd64.whl

Download URL xfem-2.1.2607.dev6-cp312-cp312-win_amd64.whl
Size 947.4 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
27a9b64076dc45c7423ddd8a6c9048524a1686e813cf62dc34413e664cd6628b
BLAKE2b-256 checksum
How to use checksums
4fbbf92143390adbea318a6c7fcbe18d170baf869491085b20bc79e5a64fd102
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / xfem-2.1.2607.dev6-cp312-cp312-manylinux_2_28_x86_64.manylinux2014_x86_64.whl

Download URL xfem-2.1.2607.dev6-cp312-cp312-manylinux_2_28_x86_64.manylinux2014_x86_64.whl
Size 1.9 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
fcb2087239d1b63e06863d6c317cf125ae7d5d1007ce95921dd6718c7214badf
BLAKE2b-256 checksum
How to use checksums
758ad9a17472ed8f514d8a0530e7375a12e55f3009d01c9a4c268b1d89930063
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / xfem-2.1.2607.dev6-cp312-cp312-macosx_10_9_universal2.whl

Download URL xfem-2.1.2607.dev6-cp312-cp312-macosx_10_9_universal2.whl
Size 3.0 MB
Tags CPython 3.12 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
03d9b0063b66d9655cc802809f6e6d88a7850a40a4a99b6d2fba647e2c3cbdbe
BLAKE2b-256 checksum
How to use checksums
13949483117f40f41369a7f92b4dc163a25bd0b485e1ad1aaa124b9329e8805e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / xfem-2.1.2607.dev6-cp311-cp311-win_amd64.whl

Download URL xfem-2.1.2607.dev6-cp311-cp311-win_amd64.whl
Size 948.0 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
d4f7bd976ba9abc6d23abac24856cf82e3a76306a83bda020ee45402e0e167ec
BLAKE2b-256 checksum
How to use checksums
7adbd60fa6ca41ebd408423a1fbeebcf182edb190677a595638e73bb697bfd10
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / xfem-2.1.2607.dev6-cp311-cp311-manylinux_2_28_x86_64.manylinux2014_x86_64.whl

Download URL xfem-2.1.2607.dev6-cp311-cp311-manylinux_2_28_x86_64.manylinux2014_x86_64.whl
Size 1.9 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
89f35faedc7501fe3bde30f9831beb6d0016f0534dd904041a6f94f03ed950a1
BLAKE2b-256 checksum
How to use checksums
b3f91322fcc860f30a0c50b4f97f463628664f04b3a821eb622a01e1f8221587
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / xfem-2.1.2607.dev6-cp311-cp311-macosx_10_9_universal2.whl

Download URL xfem-2.1.2607.dev6-cp311-cp311-macosx_10_9_universal2.whl
Size 3.0 MB
Tags CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
1a1ff3fcef210900339821af5f0430b9db72ca0600ab7b5d3743bcd472afcb07
BLAKE2b-256 checksum
How to use checksums
19d33355dc86cf5b68408e93a7c0ce974ba48ca5af409672b8349eb5b2526a5a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / xfem-2.1.2607.dev6-cp310-cp310-manylinux_2_28_x86_64.manylinux2014_x86_64.whl

Download URL xfem-2.1.2607.dev6-cp310-cp310-manylinux_2_28_x86_64.manylinux2014_x86_64.whl
Size 1.9 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
a249c42878722699d984815efb6a410c734c97fb5c0b01aea57f19f00d5ee92b
BLAKE2b-256 checksum
How to use checksums
3250511746fcd22a7aef0641c0559280e2f91dee346a4e9a39beb88ee6bbd10c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / xfem-2.1.2607.dev6-cp310-cp310-macosx_10_9_universal2.whl

Download URL xfem-2.1.2607.dev6-cp310-cp310-macosx_10_9_universal2.whl
Size 3.0 MB
Tags CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
65256afc42f155c7fad12044700e194a4157f5a8f877702a9f54bf119cef786b
BLAKE2b-256 checksum
How to use checksums
30cc73058e23bceebd830d25c49c0860eb990ed04c2bebd2237d51b51cacfcf7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

2.0

1 release file

0.9.3

1 release file

0.9.2

1 release file

0.9.1

2 release files

0.9

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page