Skip to main content

(ngs)xfem is an Add-on library to Netgen/NGSolve for unfitted/cut FEM.

Project description

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

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xfem-2.1.2507.dev33.tar.gz (2.2 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

xfem-2.1.2507.dev33-cp313-cp313-win_amd64.whl (940.7 kB view details)

Uploaded CPython 3.13Windows x86-64

xfem-2.1.2507.dev33-cp313-cp313-manylinux_2_28_x86_64.manylinux2014_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

xfem-2.1.2507.dev33-cp313-cp313-macosx_10_9_universal2.whl (3.0 MB view details)

Uploaded CPython 3.13macOS 10.9+ universal2 (ARM64, x86-64)

xfem-2.1.2507.dev33-cp312-cp312-win_amd64.whl (940.8 kB view details)

Uploaded CPython 3.12Windows x86-64

xfem-2.1.2507.dev33-cp312-cp312-manylinux_2_28_x86_64.manylinux2014_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

xfem-2.1.2507.dev33-cp312-cp312-macosx_10_9_universal2.whl (3.0 MB view details)

Uploaded CPython 3.12macOS 10.9+ universal2 (ARM64, x86-64)

xfem-2.1.2507.dev33-cp311-cp311-win_amd64.whl (946.0 kB view details)

Uploaded CPython 3.11Windows x86-64

xfem-2.1.2507.dev33-cp311-cp311-manylinux_2_28_x86_64.manylinux2014_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

xfem-2.1.2507.dev33-cp311-cp311-macosx_10_9_universal2.whl (3.0 MB view details)

Uploaded CPython 3.11macOS 10.9+ universal2 (ARM64, x86-64)

xfem-2.1.2507.dev33-cp310-cp310-win_amd64.whl (944.5 kB view details)

Uploaded CPython 3.10Windows x86-64

xfem-2.1.2507.dev33-cp310-cp310-manylinux_2_28_x86_64.manylinux2014_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

xfem-2.1.2507.dev33-cp310-cp310-macosx_10_9_universal2.whl (3.0 MB view details)

Uploaded CPython 3.10macOS 10.9+ universal2 (ARM64, x86-64)

xfem-2.1.2507.dev33-cp39-cp39-win_amd64.whl (915.1 kB view details)

Uploaded CPython 3.9Windows x86-64

xfem-2.1.2507.dev33-cp39-cp39-manylinux_2_28_x86_64.manylinux2014_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

xfem-2.1.2507.dev33-cp39-cp39-macosx_10_9_universal2.whl (2.7 MB view details)

Uploaded CPython 3.9macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file xfem-2.1.2507.dev33.tar.gz.

File metadata

  • Download URL: xfem-2.1.2507.dev33.tar.gz
  • Upload date:
  • Size: 2.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for xfem-2.1.2507.dev33.tar.gz
Algorithm Hash digest
SHA256 d67177962832a97b5712f9b09d72a07c211ac2539c2caca80d8dac2e2287d2d1
MD5 95b19e4bbe73fb5fa08ee329193ba937
BLAKE2b-256 49a2cc003f1889a778cd77658de17a2df879e4e01ba8626f6498b5db94351e33

See more details on using hashes here.

File details

Details for the file xfem-2.1.2507.dev33-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for xfem-2.1.2507.dev33-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 fcb21d07dfe273afa3c28d1d0c1c8abcc084fbf1e99fc04f7d414a07c1539376
MD5 0410b213f06baaf9cee87089682a1e75
BLAKE2b-256 bf39cebf4971b75dd322bd63cf839ebea9d34f33a50372cbc87bef3fbf632d7f

See more details on using hashes here.

File details

Details for the file xfem-2.1.2507.dev33-cp313-cp313-manylinux_2_28_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xfem-2.1.2507.dev33-cp313-cp313-manylinux_2_28_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5f181d2bcaa0280bb0fbf3f5647b7ff227caf14f5e532254513a7f245160fa07
MD5 c138e1334e208a93857d40fafc7fda7d
BLAKE2b-256 9610dcf19aa8ef7ffdb9ba6ea59d6aa78abf7019a49dd5c3c151df4dfa1d5276

See more details on using hashes here.

File details

Details for the file xfem-2.1.2507.dev33-cp313-cp313-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for xfem-2.1.2507.dev33-cp313-cp313-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 7d13dc72aa9505608da9c3133eb045e125ff6d0fc239d9f96d75d22ab8815187
MD5 02730df567478e515fd11f35c45551b0
BLAKE2b-256 b542e8ae024e77bb6a691ef9b808555c4289865f695666f541c80f931d824b76

See more details on using hashes here.

File details

Details for the file xfem-2.1.2507.dev33-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for xfem-2.1.2507.dev33-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 49f8994cdeb64adb14b5b5bbf17488fecac0868af2b624a82b913f8d195dcf6a
MD5 eae6e1279abc2fae0791691dbd4dafe4
BLAKE2b-256 ac41ca1ba9f3bdf7d08c4045c92f2df8e6f1096f579ebe4dbc5ec05bb958b786

See more details on using hashes here.

File details

Details for the file xfem-2.1.2507.dev33-cp312-cp312-manylinux_2_28_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xfem-2.1.2507.dev33-cp312-cp312-manylinux_2_28_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e98141829d0f3da3c6e7b3c138eeef0c5bce22c9d7cb590ba1238dead2b230f5
MD5 772deb4e2ad5f2048fd2aee28af6eba6
BLAKE2b-256 073e28c624e4e7d27c3d23395b4f4d5a73a51eabe307f967ef26aee95f3bf106

See more details on using hashes here.

File details

Details for the file xfem-2.1.2507.dev33-cp312-cp312-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for xfem-2.1.2507.dev33-cp312-cp312-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 72ba459158c3f897add9c98f4500845d59e208cd2247a5bbf9f96cee8b61a913
MD5 65bce79acbd24322f51ba402124877c1
BLAKE2b-256 344848850e4eefb33a62870950ba3ad34fee442caf28be17549776d793030bcb

See more details on using hashes here.

File details

Details for the file xfem-2.1.2507.dev33-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for xfem-2.1.2507.dev33-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 ab44971b6c740098ac77560bbaf09203612716c423a8451291d76fd42976ba65
MD5 55375b83aecebc8b0e7a66be955cbac5
BLAKE2b-256 d2217b0f3ba0712f269d57dbae0f3564dea3b173a7af5dc69c41fc7c931ebd3a

See more details on using hashes here.

File details

Details for the file xfem-2.1.2507.dev33-cp311-cp311-manylinux_2_28_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xfem-2.1.2507.dev33-cp311-cp311-manylinux_2_28_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 aaba9a4c7eeafd42016116acc89815c37b1baa42996c92f656e5cfd36b45b340
MD5 01361e9aaab6536e6d800fe825847e14
BLAKE2b-256 967a0555abe222dbb08e9bc035b33febf54fdfdaac3be8a1ffb401da9e5199ed

See more details on using hashes here.

File details

Details for the file xfem-2.1.2507.dev33-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for xfem-2.1.2507.dev33-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 eee8e560cfd4ee13e7047e4f6396a0a9924af2d5e873ad14807cc10f9f27cdad
MD5 eafe2602398cd2aba010e307a1145a32
BLAKE2b-256 9a610cbab9a197fa056a4907b7ee08bf2ad0a85c290064032d9d4ad4a4ffb686

See more details on using hashes here.

File details

Details for the file xfem-2.1.2507.dev33-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for xfem-2.1.2507.dev33-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 1b877c7b86228f3e912033f66bf71152af14dbbe2a28840eabd9201e976e048c
MD5 753996ec367232bda98a136773112b42
BLAKE2b-256 c76a6c83ba1be2eb7d955842c4d5681aca9dc4f0102ea51228fb876cc832458d

See more details on using hashes here.

File details

Details for the file xfem-2.1.2507.dev33-cp310-cp310-manylinux_2_28_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xfem-2.1.2507.dev33-cp310-cp310-manylinux_2_28_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 441b847dcc66ff1065a4702f1bd270591162e5234c336b2680da8b9b6770f579
MD5 c93e23a45a82214a76475fd2f73d7b71
BLAKE2b-256 944281e18df2aa7428f2bcf31eb095fe4f160a7e47aad72cf139f08e8481aa16

See more details on using hashes here.

File details

Details for the file xfem-2.1.2507.dev33-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for xfem-2.1.2507.dev33-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 e4b8096f5d8944d10ee963a31ee323068ee1186512085b2323d60f360ed981af
MD5 b9e4cfc47732b406dbf3d087d09f39be
BLAKE2b-256 a398cc84d7a3c998213aa479bf775ee68e9c0708040e070ea675353a5047bb3c

See more details on using hashes here.

File details

Details for the file xfem-2.1.2507.dev33-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for xfem-2.1.2507.dev33-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 e2af7d55aa2bf91a05dba68626ef2b11b5e8474e55f95466455d7ce36f86219f
MD5 6c75a757f929ef696cd46cfd0ddbe8a6
BLAKE2b-256 04ffe158f560b8d5f7eeefc816d2f5a2c1d48210ced9b64b93cc8ae8879b3cd7

See more details on using hashes here.

File details

Details for the file xfem-2.1.2507.dev33-cp39-cp39-manylinux_2_28_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xfem-2.1.2507.dev33-cp39-cp39-manylinux_2_28_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bd1026c7b2d858c4a687f16bdabd7cf3848ccd0f8d550738cc93d2c9d4c7faa6
MD5 cfd6324f6f0685ec85495be00b09942a
BLAKE2b-256 0b8f83120d118518be68336861f3f5303e5758801512bc3fd0df62087e5340fd

See more details on using hashes here.

File details

Details for the file xfem-2.1.2507.dev33-cp39-cp39-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for xfem-2.1.2507.dev33-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 d3dd39e6f6f09aa5c29a54243253c147db2b2a791b3259c757d18a57eb1dea2c
MD5 ed1bdfc5b7255983fe622a6742512784
BLAKE2b-256 eca29713cd83c582352b5089c058fb87b2345e92ac9c31db188d855b308abcb3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page