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.2404.post157.dev53.tar.gz (492.4 kB view details)

Uploaded Source

Built Distributions

ngstrefftz-0.3.2404.post157.dev53-cp313-cp313-win_amd64.whl (664.1 kB view details)

Uploaded CPython 3.13 Windows x86-64

ngstrefftz-0.3.2404.post157.dev53-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.2404.post157.dev53-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.2404.post157.dev53-cp312-cp312-win_amd64.whl (665.1 kB view details)

Uploaded CPython 3.12 Windows x86-64

ngstrefftz-0.3.2404.post157.dev53-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.2404.post157.dev53-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.2404.post157.dev53-cp311-cp311-win_amd64.whl (662.4 kB view details)

Uploaded CPython 3.11 Windows x86-64

ngstrefftz-0.3.2404.post157.dev53-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.2404.post157.dev53-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.2404.post157.dev53-cp310-cp310-win_amd64.whl (661.7 kB view details)

Uploaded CPython 3.10 Windows x86-64

ngstrefftz-0.3.2404.post157.dev53-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.2404.post157.dev53-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.2404.post157.dev53-cp39-cp39-win_amd64.whl (655.6 kB view details)

Uploaded CPython 3.9 Windows x86-64

ngstrefftz-0.3.2404.post157.dev53-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.2404.post157.dev53-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.2404.post157.dev53-cp38-cp38-win_amd64.whl (661.8 kB view details)

Uploaded CPython 3.8 Windows x86-64

ngstrefftz-0.3.2404.post157.dev53-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.2404.post157.dev53-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.2404.post157.dev53.tar.gz.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2404.post157.dev53.tar.gz
Algorithm Hash digest
SHA256 36806268f503c4e02aa13cbe7398f7655bb9a16e6a01d4608719e0b1fe349410
MD5 9c9692e142999a48a490d0c4015453af
BLAKE2b-256 c5ea642fba13c2bc36ce8f57a8a9f5cb6acd2525b1a51f7bc64a1d9c570dc45f

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2404.post157.dev53-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2404.post157.dev53-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 a50beeffa4b2d7aa2afecd328782de0af64502ba2e450526e81703560ce355ab
MD5 76af7ee3a35776d5f77755759a813f4f
BLAKE2b-256 d7f93a8d27beed9d4d3172e96c01d0e229963ef708494c4bea901cbd87a1621c

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2404.post157.dev53-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2404.post157.dev53-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 96f71711e6ed21046a1f2730c77b20e643758112b24fe028349f187337f320ba
MD5 aa3f365c1ae64c3cc7aada8fd57e20c1
BLAKE2b-256 3cecab54dea947deb1c4a01856618364750b63d04424cd37a94dbfe68d3ed084

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2404.post157.dev53-cp313-cp313-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2404.post157.dev53-cp313-cp313-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 67c6ce6e07a0fee5876c87be0d8e00986f0a9f776cdb3207b34405e8e1f54720
MD5 d9650504af7dbe4837bc366bec246251
BLAKE2b-256 bcc03cc5df3dabdbc402f3a048dbe2e146e3ba53d0bc0f717483cc591d4dfa13

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2404.post157.dev53-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2404.post157.dev53-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 f36257958d90d3997a585ac2c78a767ca79b71d3c3cc708748a7275b449d37de
MD5 8cc6962f463e8ed2fe01f2de3cb73aad
BLAKE2b-256 23aa28e28333c7f2bc39f6a3d8a0a065564e935857313303d555c7659523c0d2

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2404.post157.dev53-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2404.post157.dev53-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a9f52814c7238eeff1e7bf6bf41b4bf0fbf0d64e77c91d63f2af547ca6c6d418
MD5 dfccad6cdab04e33954e6d5a4e503b15
BLAKE2b-256 b6a21728b607c3f9b3d996d4ca90dfde182febc50a54eda20cb62215b9cf4b02

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2404.post157.dev53-cp312-cp312-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2404.post157.dev53-cp312-cp312-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 2cf4b9d72cd6ba01870f308f88984856b2174908db896f941ae384ddc5a0d732
MD5 b6fed29ec49fc3ca42e226046944432a
BLAKE2b-256 83ee7422c1b6d6577046c8e8bde60001557403e4d9fab1b434a9a12bc1f0c3b9

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2404.post157.dev53-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2404.post157.dev53-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 ab7bd37755a4acb390ffd5d0f9e7a661839ae2465f8234ffd76a4a8c4694c262
MD5 97b605acbebda679fb4e637593d6498f
BLAKE2b-256 5d3f5b116ee1b8eb2cba4a61dad62a86224627be63b852de8e116d1d0cb1a982

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2404.post157.dev53-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2404.post157.dev53-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8ae64158f63ffb9fbe50eb4be187528d32992d22f017b4db8e83006bb7bd00e3
MD5 9dadea7975e87f8ec24094ae9fd8855b
BLAKE2b-256 d29d6dc25d000be19ffd7e9de1c5a2c31714410ab9ff137c613c305956005600

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2404.post157.dev53-cp311-cp311-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2404.post157.dev53-cp311-cp311-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 c947cf3d8fe780fc9e6cfb3ae66448718e2e4e2a6f829bf1d88a7c99b62363cf
MD5 172c1ad6075109c96fa3c3b1243bf154
BLAKE2b-256 5b86d5c260eae47dcfae250d328343f1921e92604542f33802f2525441ee80c0

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2404.post157.dev53-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2404.post157.dev53-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 2a2dfd82009fa7bd7a9ed3152b686fe4221958f23c942d7020288a4fbfb055f5
MD5 fb7e7a026944cc8a5bc4e517dfcc2ca8
BLAKE2b-256 b2ceafe5c6b5072bcfceab7b713720ab0c32e208212568f90880f1a1dba290d6

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2404.post157.dev53-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2404.post157.dev53-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8ec6c34e134c76576c378afe8f06ca15d4156bfad79267f77a69da93a72efb8b
MD5 2fada1772cf8dbcce64cab10ea46976c
BLAKE2b-256 95d24246686aeed2158faa06e32e91cd79200129e9303a88a1bc1d4d85a7717a

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2404.post157.dev53-cp310-cp310-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2404.post157.dev53-cp310-cp310-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 9f2c13814cefbcf14f1a8b194eac8b139c16fd2dcfea516c3ff77df049a07881
MD5 eaa88fcb6bbdc095ee3105fbc3709804
BLAKE2b-256 a33c313d2b1ef5faad432cee2638af5c8715285afd371e85eabc4937c707f8e4

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2404.post157.dev53-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2404.post157.dev53-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 e1c97fb7d5054b05bf2788182b5a76e714fdc531f374733731803853d7253c3f
MD5 4d20c5b971ddfbad671086ba528cdd7e
BLAKE2b-256 15c3dead7e4f5dd33ceed4e3afb1b3387ded5177d5f9f4c7fada83a925beda29

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2404.post157.dev53-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2404.post157.dev53-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a5f1f4d951be03d6403cd4fef0ba1e5d3cc55bacf34e800346b3a9a26e00e362
MD5 1f0bb817cbac64d959ab500ce435e796
BLAKE2b-256 8b17d71f4537f93ed17615fdc43a0f8314de9125cf0285f29e514e4222add6a0

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2404.post157.dev53-cp39-cp39-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2404.post157.dev53-cp39-cp39-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 c0689191e4be2f59823e46499efe374e1a83906b6f5f8075bd15287536875b6a
MD5 bce04fe9fad30073fd5cb7809b08c89a
BLAKE2b-256 c1005219bbc8c14a54a823978ca65e57e5e01fbe5bc260b7f97786238a7cab65

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2404.post157.dev53-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2404.post157.dev53-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 6f7ab1e1765b4b442f1b915ba75fee848d24202b67f993f72e8cd2c5c03991e8
MD5 f4aca3f7c0c957ed81d449415551f50e
BLAKE2b-256 bd55a2f91b3f802654115a2708ff9dc9ca716bf71ae0af0683f6f0b54f63dd8f

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2404.post157.dev53-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2404.post157.dev53-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f819117318ee17ebeb044bf2341d02d274875afb7d5539319cdb9de49b9dade4
MD5 d53645560a63ebb91ab3e8d2377b8b4c
BLAKE2b-256 cf70cc1cfbabf502317b807096ce468b6a2e7f2be40410e7ec8445595d0732e3

See more details on using hashes here.

File details

Details for the file ngstrefftz-0.3.2404.post157.dev53-cp38-cp38-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for ngstrefftz-0.3.2404.post157.dev53-cp38-cp38-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 f466b34a8929bc43ca2b8fc1140ac0174e32a22e858c3406f36ac51cb8c18ae6
MD5 0006ab1e46bca91e5dd28dcb99b69dd8
BLAKE2b-256 68617329cfb7c5035e8329372b33427bfeb4bf0ee120cd25eb2c050039cb035c

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