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.2506.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.2506-cp313-cp313-win_amd64.whl (829.5 kB view details)

Uploaded CPython 3.13Windows x86-64

xfem-2.1.2506-cp313-cp313-manylinux_2_28_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

xfem-2.1.2506-cp313-cp313-macosx_10_15_universal2.whl (2.3 MB view details)

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

xfem-2.1.2506-cp312-cp312-win_amd64.whl (829.5 kB view details)

Uploaded CPython 3.12Windows x86-64

xfem-2.1.2506-cp312-cp312-manylinux_2_28_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

xfem-2.1.2506-cp312-cp312-macosx_10_15_universal2.whl (2.3 MB view details)

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

xfem-2.1.2506-cp311-cp311-win_amd64.whl (835.3 kB view details)

Uploaded CPython 3.11Windows x86-64

xfem-2.1.2506-cp311-cp311-manylinux_2_28_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

xfem-2.1.2506-cp311-cp311-macosx_10_15_universal2.whl (2.3 MB view details)

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

xfem-2.1.2506-cp310-cp310-win_amd64.whl (834.4 kB view details)

Uploaded CPython 3.10Windows x86-64

xfem-2.1.2506-cp310-cp310-manylinux_2_28_x86_64.manylinux2014_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

xfem-2.1.2506-cp310-cp310-macosx_10_15_universal2.whl (2.3 MB view details)

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

xfem-2.1.2506-cp39-cp39-win_amd64.whl (848.4 kB view details)

Uploaded CPython 3.9Windows x86-64

xfem-2.1.2506-cp39-cp39-manylinux_2_28_x86_64.manylinux2014_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

xfem-2.1.2506-cp39-cp39-macosx_10_15_universal2.whl (2.3 MB view details)

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

File details

Details for the file xfem-2.1.2506.tar.gz.

File metadata

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

File hashes

Hashes for xfem-2.1.2506.tar.gz
Algorithm Hash digest
SHA256 97263cacf36e2ad6f648389e6114fe4fbeb87204b4c2c842f1e5dfb3f2418975
MD5 384a186d76f7baba84faf5307126f191
BLAKE2b-256 ea8828bdb4a1615b4667be753ff083b509de54500b05115caeda3cc002489107

See more details on using hashes here.

File details

Details for the file xfem-2.1.2506-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: xfem-2.1.2506-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 829.5 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for xfem-2.1.2506-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 6fd41bb4f1b9b42263ac8d7bc78b8cc2e9256632410b4533239d11abb30b39c6
MD5 aa9238c9c88061c83eed6e1cb4c796e0
BLAKE2b-256 baee8d2960abc6bd85501320e4ab20b61631c8619c75f5a1c4a5a830401d55d3

See more details on using hashes here.

File details

Details for the file xfem-2.1.2506-cp313-cp313-manylinux_2_28_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xfem-2.1.2506-cp313-cp313-manylinux_2_28_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 083faf803f3ea85a032db5d79901b0d90bf880b867205c55e039ac6a1cbd89d8
MD5 31356f42b87728696c923348ef836aa3
BLAKE2b-256 93ff95d33dabd1a04236a986973f1c99eb7d0288f4574d15b50349e2eb450c90

See more details on using hashes here.

File details

Details for the file xfem-2.1.2506-cp313-cp313-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for xfem-2.1.2506-cp313-cp313-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 e4851b56ebf7e2c6471c4fef6a7ae02a2174f3a32d94a26a1ed465e8a5934867
MD5 8ab82ec0d9b5e369904ddd6942a2dc3c
BLAKE2b-256 0e98c0c52398d55fe502d8e2f7f9cbebc0d36a48053e674a866d439d5482e27d

See more details on using hashes here.

File details

Details for the file xfem-2.1.2506-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: xfem-2.1.2506-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 829.5 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for xfem-2.1.2506-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 dcfb507886900b4fbb8ce3617cfab1b91cc2b8efeb6bed42048813a14ed4b483
MD5 8fc60dc9bc925456afedd3cc6017803e
BLAKE2b-256 8cccc4c767e799ef962b62b4697f1b6321a67679b9d72edcb227f919331625ca

See more details on using hashes here.

File details

Details for the file xfem-2.1.2506-cp312-cp312-manylinux_2_28_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xfem-2.1.2506-cp312-cp312-manylinux_2_28_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 21e28fbcca0f9a50037e2fd5dab29e39a639edee54d57e8b911b810c5417cc2a
MD5 a4f057aebcc80ee4a93ddb8a75a4e10f
BLAKE2b-256 6b07a5a39c603b7a54e59775163a7edab3ef4fb45e281ab5e3e64247145bc0b7

See more details on using hashes here.

File details

Details for the file xfem-2.1.2506-cp312-cp312-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for xfem-2.1.2506-cp312-cp312-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 ea081ec066ae22b6f13bdd80c61ef7ed788a388545cf2b9673610d01e3a1a803
MD5 2d5ab24324ef6a537a038b9426df98dd
BLAKE2b-256 5aa9711cf282d277e6d9b7dafe06f5217a06a08d24db74b324eb443edc87ea16

See more details on using hashes here.

File details

Details for the file xfem-2.1.2506-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: xfem-2.1.2506-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 835.3 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for xfem-2.1.2506-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 62e66fdb8eb740d306a274f163317193603bdcb51d7d39ec68d727396948e6de
MD5 3bff2481f28648bd20b7d9a305427592
BLAKE2b-256 ee0bb0f0fc9fb3ff364b6ef586623e63ca790d4e75c4266caa55a3344e2bebd1

See more details on using hashes here.

File details

Details for the file xfem-2.1.2506-cp311-cp311-manylinux_2_28_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xfem-2.1.2506-cp311-cp311-manylinux_2_28_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e97b7bd6bc4b6935844afa1c2ef090d3b7b780e1cb1a8726f4612fe21266ffaf
MD5 189f96bcdfa09625b28d68f848170f0a
BLAKE2b-256 cb9eaa5a333fc97c26124cfd10e96f19cacac2d8df82d04481cb549cdc220058

See more details on using hashes here.

File details

Details for the file xfem-2.1.2506-cp311-cp311-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for xfem-2.1.2506-cp311-cp311-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 10122d117ee82efb293f97512f380b20e343112fac86892dfce5dfbc28fb1a23
MD5 f5475a74d5754082d63137047cf07d96
BLAKE2b-256 73a875c1a946c22a8fc9f8141f356453d689c21e173f30f7d8234c4c63311c88

See more details on using hashes here.

File details

Details for the file xfem-2.1.2506-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: xfem-2.1.2506-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 834.4 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for xfem-2.1.2506-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 a810567cb888f634b06d0cfc6806ee4af53e9f05f01854649c92b15283c8baf7
MD5 36878f40ef215fd5a5af9d868fcf42ae
BLAKE2b-256 6de9528dd3f94199144f2ce7d2ea195c508471dfb66689af9185022d211709eb

See more details on using hashes here.

File details

Details for the file xfem-2.1.2506-cp310-cp310-manylinux_2_28_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xfem-2.1.2506-cp310-cp310-manylinux_2_28_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 82ef147656bba6a08434285ee7fe2a8ecd21aa95069f04291609cb06ead365cb
MD5 820770de13397c04a715518b84e06a4a
BLAKE2b-256 c75611c3f73743e7bbf915c04ce8062c90f6509d377b6b5a56ff77659174709c

See more details on using hashes here.

File details

Details for the file xfem-2.1.2506-cp310-cp310-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for xfem-2.1.2506-cp310-cp310-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 9584cfe0d7f9dfab550f581ad02f8449665a02c2fa9bf57ee1d6360ac00a4b0c
MD5 5fab68fc3ac235b93869578768560054
BLAKE2b-256 e424812316dccd6fb2280776cfb213a2e37410d5d2ad4d5e681f6f5227253a3b

See more details on using hashes here.

File details

Details for the file xfem-2.1.2506-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: xfem-2.1.2506-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 848.4 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for xfem-2.1.2506-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 cef629daa48c6641f0e67c7959427c02ad9dd37828450434a43bc8daf3b63953
MD5 54466435f366758ac6f54d0e13c73b13
BLAKE2b-256 d989d6f087910f5a45713f391c94392c604d0165918030c65f003ebbb36a0acf

See more details on using hashes here.

File details

Details for the file xfem-2.1.2506-cp39-cp39-manylinux_2_28_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xfem-2.1.2506-cp39-cp39-manylinux_2_28_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e25064f9f447f9e5dfae9f5b97077229be592dad9b12e0bb04983eece5e8ec5d
MD5 9baecfd829dd7a4f8e7e8a5a41513cb1
BLAKE2b-256 35ad9c06a0b5529288b116f8164c5c691093a2cd8d425c2c2723cf88deef61b7

See more details on using hashes here.

File details

Details for the file xfem-2.1.2506-cp39-cp39-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for xfem-2.1.2506-cp39-cp39-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 22bfd0d1273335004d763b97ba8ba984952d0aec3de9a7d902cc71b7a9a02d9f
MD5 ced4c0d8f5599431e05f3d532960c3e8
BLAKE2b-256 1fb84690d886156878aaf9324b2dc52b79a9693e6370c8d727ef0e3bae5e792a

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