Skip to main content

NGSTrefftz is an add-on to NGSolve for Trefftz methods.

Project description

NGSTrefftz

an add-on to NGSolve for Trefftz methods

Binder Docker Image Version (latest semver) PyPI GitHub Workflow Status status docs

NGSTrefftz provides a framework to implement Trefftz finite element spaces for NGSolve, with several Trefftz spaces already implemented. Additionally, Trefftz-DG on tent-pitched meshes for the acoustic wave equation is implemented using meshes provided by ngstents. Furthermore, the package includes an implementation of the embedded Trefftz method.

Try it out!

You can try out some jupyter notebooks:

  • Launch the Binder here:
    Binder
  • Or run the docker locally (you need to have docker installed):
git clone https://github.com/PaulSt/NGSTrefftz
cd NGSTrefftz && docker build -t ngstrefftz_jupyter .
docker run -p 8888:8888 ngstrefftz_jupyter

Installing the package

You can either:

  • install using pip
pip install ngstrefftz
  • or build from source
git clone --recursive https://github.com/PaulSt/NGSTrefftz
mkdir ./NGSTrefftz/make && cd ./NGSTrefftz/make
cmake ../ && make install

Dependencies

  • if you are using pip to install the package you can install the newest ngsolve and other dependencies using
pip install ngsolve --pre
  • if you build the package from source the following software needs to be installed
    • cmake >= 3.1
    • gcc >= 9 or clang >= 10
    • lapack >= 3.9 (required to access the newest features)
    • ngsolve >= 6.2 (to access the newest features the nightly version of NGSolve works best)

News

⚠️ Oct, 2022: With v0.2.0 the git history has undergone a major cleanup, please make sure to clone the repo anew.

🚀 Oct, 2022: New and improved implementation of the embedded Trefftz method via EmbeddedTrefftzFES!

🚀 Aug, 2022: Three different pip-installer available, now using wheels!

🚀 Mar, 2022: NGSTrefftz now has a website!

⚠️ Feb, 2022: If you are using NGSolve nightly releases: NGSolve@eda758d breaks a dependency and NGSolve@3d52ecd produces import issue. Make sure to update ngstrefftz submodules and move to newest ngsolve version, at least NGSolve@5839a09.

🚀 Jan, 2022: NGSTrefftz is now available via pip!

🚀 Nov, 2021: NGSTrefftz now comes in a docker and with binder notebooks!

Papers using the code

  • Trefftz Discontinuous Galerkin discretization for the Stokes problem
    Philip L. Lederer, Christoph Lehrenfeld, Paul Stocker
    arXiv
  • Unfitted Trefftz discontinuous Galerkin methods for elliptic boundary value problems
    Fabian Heimann, Christoph Lehrenfeld, Paul Stocker, Henry von Wahl
    arXiv
  • Embedded Trefftz discontinuous Galerkin methods
    Christoph Lehrenfeld, Paul Stocker
    arXiv
  • A space-time quasi-Trefftz DG method for the wave equation with piecewise-smooth coefficients
    Lise-Marie Imbert-Gérard, Andrea Moiola, Paul Stocker
    arXiv
  • Tent pitching and Trefftz-DG method for the acoustic wave equation
    Ilaria Perugia, Joachim Schöberl, Paul Stocker, Christoph Wintersteiger
    arXiv

If you are using ngstrefftz in your academic work, please consider citing

Stocker, P., (2022). NGSTrefftz: Add-on to NGSolve for Trefftz methods. 
Journal of Open Source Software, 7(71), 4135, https://doi.org/10.21105/joss.04135

Project details


Download files

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

Source Distribution

ngstrefftz-0.3.2405.tar.gz (492.0 kB view details)

Uploaded Source

Built Distributions

ngstrefftz-0.3.2405-cp313-cp313-win_amd64.whl (663.9 kB view details)

Uploaded CPython 3.13 Windows x86-64

ngstrefftz-0.3.2405-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.13 manylinux: glibc 2.17+ x86-64

ngstrefftz-0.3.2405-cp313-cp313-macosx_10_15_universal2.whl (4.6 MB view details)

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

ngstrefftz-0.3.2405-cp312-cp312-win_amd64.whl (665.0 kB view details)

Uploaded CPython 3.12 Windows x86-64

ngstrefftz-0.3.2405-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

ngstrefftz-0.3.2405-cp312-cp312-macosx_10_15_universal2.whl (4.6 MB view details)

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

ngstrefftz-0.3.2405-cp311-cp311-win_amd64.whl (662.2 kB view details)

Uploaded CPython 3.11 Windows x86-64

ngstrefftz-0.3.2405-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

ngstrefftz-0.3.2405-cp311-cp311-macosx_10_15_universal2.whl (4.6 MB view details)

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

ngstrefftz-0.3.2405-cp310-cp310-win_amd64.whl (661.6 kB view details)

Uploaded CPython 3.10 Windows x86-64

ngstrefftz-0.3.2405-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

ngstrefftz-0.3.2405-cp310-cp310-macosx_10_15_universal2.whl (4.6 MB view details)

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

ngstrefftz-0.3.2405-cp39-cp39-win_amd64.whl (655.5 kB view details)

Uploaded CPython 3.9 Windows x86-64

ngstrefftz-0.3.2405-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

ngstrefftz-0.3.2405-cp39-cp39-macosx_10_15_universal2.whl (4.6 MB view details)

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

ngstrefftz-0.3.2405-cp38-cp38-win_amd64.whl (661.6 kB view details)

Uploaded CPython 3.8 Windows x86-64

ngstrefftz-0.3.2405-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

ngstrefftz-0.3.2405-cp38-cp38-macosx_10_15_universal2.whl (4.6 MB view details)

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

File details

Details for the file ngstrefftz-0.3.2405.tar.gz.

File metadata

  • Download URL: ngstrefftz-0.3.2405.tar.gz
  • Upload date:
  • Size: 492.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for ngstrefftz-0.3.2405.tar.gz
Algorithm Hash digest
SHA256 c79f8346a23dcf40991c71600384e63196835c22e54759ad82af22e4c655fc4e
MD5 dd421e49eff6cf438cd05a7c45fb0c64
BLAKE2b-256 26f0299bbcf370aaba96be4e97aa4b393c75241948e95c28a627511dfd154447

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2405-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2405-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 1c11f2c8e258653633d109ab63f3c906422aa780f4408935d8aa7db871680cb8
MD5 8e05a080d5a237ff81cb85b7f7566740
BLAKE2b-256 d73317e8baae4e56001e8160c7a764096b84ea2ded95d8d0065e32ff7374427b

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2405-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2405-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 66bbf728103f71dc99482f4b08b1adcd723e93f30c37447e7fb579c4b17b1a25
MD5 12aaeb726f939c3bc7bc8b1b121061ef
BLAKE2b-256 feafd7e9993666c6d96b009e4af408121e17010e15906aed8375ce772e42445c

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2405-cp313-cp313-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2405-cp313-cp313-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 5b3a37a737e38a70af57c96057c4f763ea2a1477e84db627f29b522023360323
MD5 6ace70bc98f271e6026e90eed0633ba8
BLAKE2b-256 ef861bd92835fb6c66ed31eac59bb1f0b69aa4918dc9cc705ed9a7e733c0191c

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2405-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2405-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 f1b12b9ea92b436457cc1ac52f8401e0e8e5d8c359589768b6a8fc41a52ffb37
MD5 6537cc1b4d4bfe787fdd0bf6544f0595
BLAKE2b-256 f21ef39570f13a6ea1c2c556ad73d2ecbfe1d19bd03da7180b41d7639d5c80ad

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2405-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2405-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e7a6f9795c7185ac828696e6029093f8ec40e17e8ec8a482ab0cfd7f66a23039
MD5 31f8c42dd693fd0ae8ca92e32bb7d23c
BLAKE2b-256 22124860bcefdedc913ea89fb28214ce0071565b5d21fc6134b14676b907ef56

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2405-cp312-cp312-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2405-cp312-cp312-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 b1b81375f8c9fdbc42bea74a53ea15119ad54bb98a01bb7e477977ec18194813
MD5 01f609dd84632193906b3cd87c37bb7c
BLAKE2b-256 9509090be76fe5e4523ef77ac5638e4cf360cd58d206540cf09aaae81942b55e

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2405-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2405-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 c680fc3e127a9d9e1e9edd6da471d5e9418b0a9197c487ea794d6fdf7fa119ad
MD5 70ae26729aba2d6f3be2df33116bdc57
BLAKE2b-256 432243b0e59ed05e1a3fd3cc233062aa9a540e93b85fe6b5adb9a3729eb15bed

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2405-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2405-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7f81d055d4fe04b890d97c284df6eb60a1faad950a8f3059db2934880e51557e
MD5 5b42e4a95934546d3b67c25288c164a0
BLAKE2b-256 a2db82f11cd1d2191be913355970f3685d7b47a3216c9bbbfbaa5ac1ed6ed5e5

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2405-cp311-cp311-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2405-cp311-cp311-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 35d3c2e41d03e0d1a71e1eb515f6dbdd48c40097003709acb7188aa92e4396aa
MD5 e6cf17984740e140e96e377d66bb8217
BLAKE2b-256 d864ac47d620528f9b0fce4b8821f89d99d497bbfca32152f664f8eafb297b49

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2405-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2405-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 6524d1e89ddc7a6da4a2fd588fa8356bcad2b9b1ea4399c91f55452a8393e208
MD5 2aec36c6ee3abd26207048096fcef3eb
BLAKE2b-256 d2de8015c4f652a7be3e9a34b107650caea99ad86068d0a2e1e89482c6ba12fa

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2405-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2405-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5d185adb87eccb7384b6e510c9b679f4754144386f4f224d6d90c799899b59ee
MD5 695540fb7be50a318b9d24bb58d1d3d0
BLAKE2b-256 a54785ab947350c309baadf69512d9b1fc759805ed2d5e2bbe76c39571bbe950

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2405-cp310-cp310-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2405-cp310-cp310-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 3329a45668e4c899dae26c33f7ff8c9525b681057d824782f9ef480f50bd2185
MD5 c634aa6526c34ce54789e5843141fdc8
BLAKE2b-256 47987bf93b1c0942458bbf442d06ffbf9eb33820d415832df37a38feeeaf283d

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2405-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2405-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 8bbf4dc406dad584e195f840da8f53257fa7081d5e3f36160e891f2bfbaa30dd
MD5 e20d89b70e75f36b92ba371eb0845534
BLAKE2b-256 7a1a4881e4df1b7e42ae048084f8b04fa1dee70370c1c79f9cb1979cbeebdee5

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2405-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2405-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d274840c66edaf61c5ebb26a342f6fa1d0d90927ecf2679e8b6a6a2385c017f8
MD5 463b42dee8bdec950af8a7da69dc1722
BLAKE2b-256 abfbe9a6d5c546a2c2e076430a91bb92f9607475948254d387116101c4fbdb83

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2405-cp39-cp39-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2405-cp39-cp39-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 82cc499792c90efc3f8b8472144804f931b2709f3aa76bfc9fe0bf82d62fabd1
MD5 b54dff4f9f16f53427d1c6fe64c8cf53
BLAKE2b-256 7a05535518e3626124112df44af9eee2264f2ce02f8540082a52ef238c36e741

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2405-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2405-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 2e53c0a958a99f1c2ea396694495a997e5b1002cdf677a03fec432b71a25e8bf
MD5 70569ab30aeadfdabd600b9a9c1f0728
BLAKE2b-256 5805f80dfee090b2ff7a11300785340a81f6d62b7601a38b12d69a28791f9cf4

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2405-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2405-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2b692e64d6930ab008c1094ceb81a5de7744f548c2dd1b67cb7f3ed6984a8478
MD5 930eda4df1af4aca8a9cbf246afc5e58
BLAKE2b-256 d5d2e88dd74a2736c1f9d86cd44027e89b49d66c4bb5f2794fd747e0a2a5b9e1

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2405-cp38-cp38-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2405-cp38-cp38-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 2d20943a25fe2bb5d4430469ef4a3fbbc8da85fef18682e039b9281befdbdde6
MD5 5c4e900e529b29e593a2daf3ef3fa111
BLAKE2b-256 9d20010b0793a399ec62e7c188d8022a050b64a8f07128a6a686fa104a0868b9

See more details on using hashes here.

Supported by

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