Skip to main content

Spacetime tent facilities for solving hyperbolic equations

Project description

Spacetime Tents in NGSolve

This ngstents package is a c++ extension of the NGSolve finite element library, designed to ease experimentation with solvers based on spacetime tents for hyperbolic systems. A python front-end allows new equations (linear or nonlinear conservation laws) to be solved by easily defining required fluxes and numerical fluxes in a few lines of code.

Install

Binary installers are available for linux, mac, and windows (with python >= 3.9).

  • pip install ngstents

But note that the binaries are not generally kept up to date. The recommended option is to build from source (see below).

Build

If you built NGSolve from source, you can build and install ngstents. After cloning this repository, compile the c++ code here and install:

  • cd src
  • mkdir build && cd build
  • cmake -DNGSolve_DIR=<Path2YourNGSolveInstallCMake> ..
  • make install

Use

To start using this code, import the module after installation:

import ngstents

It contains classes named Tent and TentSlab used to partition spacetime into tents. It also has a submodule named conslaw which contains specific pre-programmed hyperbolic equations and also facilities to define and solve new hyperbolic systems using the python interface. Use python's help system to query for documentation on each object. The demo folder contains example scripts. The docs folder contains more documentation, explained next.

Documentation

Read the docs online. This documentation is generated from hands-on style tutorial notebooks in the docs folder.

Offline, to build and test the docs locally, navigate to the ngstents/docs folder and run these:

  • pip install -r requirements.txt
  • sphinx-build -b html . _build_docs

You can then open the docs from ngstents/docs/_build_docs/INDEX.html.

Check

If you extend the code, your new code changes can be cross-checked against a test suite provided in the 'tests' folder. For example, if you have pytest installed, move to the ngstents/tests folder and use pytest:

  • pytest .

Organization

  • src: c++ source code
  • py: python packaging files
  • doc: tutorials and explanations
  • demo: examples of applications
  • tests: test suite

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

ngstents-0.1.dev404.tar.gz (351.0 kB view details)

Uploaded Source

Built Distributions

ngstents-0.1.dev404-cp312-cp312-win_amd64.whl (768.3 kB view details)

Uploaded CPython 3.12 Windows x86-64

ngstents-0.1.dev404-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

ngstents-0.1.dev404-cp312-cp312-macosx_10_15_universal2.whl (3.8 MB view details)

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

ngstents-0.1.dev404-cp311-cp311-win_amd64.whl (765.4 kB view details)

Uploaded CPython 3.11 Windows x86-64

ngstents-0.1.dev404-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

ngstents-0.1.dev404-cp311-cp311-macosx_10_15_universal2.whl (3.8 MB view details)

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

ngstents-0.1.dev404-cp310-cp310-win_amd64.whl (765.4 kB view details)

Uploaded CPython 3.10 Windows x86-64

ngstents-0.1.dev404-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

ngstents-0.1.dev404-cp310-cp310-macosx_10_15_universal2.whl (3.8 MB view details)

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

ngstents-0.1.dev404-cp39-cp39-win_amd64.whl (763.9 kB view details)

Uploaded CPython 3.9 Windows x86-64

ngstents-0.1.dev404-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

ngstents-0.1.dev404-cp39-cp39-macosx_10_15_universal2.whl (3.8 MB view details)

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

ngstents-0.1.dev404-cp38-cp38-win_amd64.whl (765.2 kB view details)

Uploaded CPython 3.8 Windows x86-64

ngstents-0.1.dev404-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

ngstents-0.1.dev404-cp38-cp38-macosx_10_15_universal2.whl (3.8 MB view details)

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

File details

Details for the file ngstents-0.1.dev404.tar.gz.

File metadata

  • Download URL: ngstents-0.1.dev404.tar.gz
  • Upload date:
  • Size: 351.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.4

File hashes

Hashes for ngstents-0.1.dev404.tar.gz
Algorithm Hash digest
SHA256 eb5ace57890af43205d86028716ef54ab61f71da2254a1b9d67d5fc7720af8f8
MD5 c18f95ad9aa57eefbeda7b0da941002a
BLAKE2b-256 311e63b5d02c96b2d2677e80eaccca94d16929534a7e14ce00c1f1842766bcca

See more details on using hashes here.

File details

Details for the file ngstents-0.1.dev404-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for ngstents-0.1.dev404-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 cba00eb5e9644e05ecd5adf5f4ee39465fb898f5ace7870c3fb726293282d677
MD5 532a29349583c6db9b9cd4c407584f1c
BLAKE2b-256 c8550f9ada527986882186055853484e5cc53445a69735445f15a86a6c634f1d

See more details on using hashes here.

File details

Details for the file ngstents-0.1.dev404-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ngstents-0.1.dev404-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1593bac9508cf5eee9c29a25c55cbf4a9dc03e35c583d2d0f76ff09dd02c47c9
MD5 75808ca204d5579f45343985c4af79f5
BLAKE2b-256 1fba9bfbc00ccad823c9025780a368f2e7423263212357c2351770a502400302

See more details on using hashes here.

File details

Details for the file ngstents-0.1.dev404-cp312-cp312-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for ngstents-0.1.dev404-cp312-cp312-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 d474ae50d653f01be1ae45f6cd95275ef2717a93c467970c1bc55d64b5133b71
MD5 959b1613ea498ce1260fd9b6cf0af22e
BLAKE2b-256 780d8c097038b6945c6bed0337b11b2f01f98fcabc2df9ea4aa1c31e65180637

See more details on using hashes here.

File details

Details for the file ngstents-0.1.dev404-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for ngstents-0.1.dev404-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 c20586132264e816c93df2e8285075ad753cf0eeb7a2cad100b3c28a33d8faba
MD5 2ccb881793053eff43790708bcde88ae
BLAKE2b-256 6376db926cdf5a45539b37584480030fb704d2a254fb17b28453e55ca9c9a917

See more details on using hashes here.

File details

Details for the file ngstents-0.1.dev404-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ngstents-0.1.dev404-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c8ed850fe1f0c1823fd09c87dfd42c8834f0aa934586861b823275042392fdfe
MD5 d286df80f8339f689163b13c50baac35
BLAKE2b-256 e5a247111e62e11caaccc02c1300a4f725943fb3da4629297bf5b233a05018d3

See more details on using hashes here.

File details

Details for the file ngstents-0.1.dev404-cp311-cp311-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for ngstents-0.1.dev404-cp311-cp311-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 3953f71fdad95d941cf2d9030b768f129bcde3c43ff5fd6c28650483b1602167
MD5 dba751d500cea889dcd76540446bdc4f
BLAKE2b-256 1d1f77652f66a6159cc34e1fd507dd8702f01e66b6e9feb3120862fc817a4100

See more details on using hashes here.

File details

Details for the file ngstents-0.1.dev404-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for ngstents-0.1.dev404-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 e415fb76ef1b9fc6a4838779819ad5ac130c19769e4f8a7d090bf5fb3daeca1a
MD5 bd1b31fa010e35b7fe8fcf6bf20d1d67
BLAKE2b-256 81418ef3f1bec825ab1f0b6252c241bd04f5ffe02d7e823c56bd63d746ae2b44

See more details on using hashes here.

File details

Details for the file ngstents-0.1.dev404-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ngstents-0.1.dev404-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e1ad3408f0b650d913e5c9d2f8718277e21e3e3204045ba544f9059685860c37
MD5 4c463a0da947c475dda69c7e7564f396
BLAKE2b-256 a98e2ba864aa9b3525457795d547d5f434e7731c9794fa13cba865cb490fb81b

See more details on using hashes here.

File details

Details for the file ngstents-0.1.dev404-cp310-cp310-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for ngstents-0.1.dev404-cp310-cp310-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 89549f75a86baf85d4cf727331d3833f9ee3abc1c7aef9ae4eba93353ba7d62c
MD5 e26825ce0a8125e93727be22fef4758c
BLAKE2b-256 08b4fc6b8cd6ba8256f84a66f4f41b1ed71a521bf1f1ba30a3d01dfaebd06408

See more details on using hashes here.

File details

Details for the file ngstents-0.1.dev404-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for ngstents-0.1.dev404-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 339a79357cd3a78278cb5b8027be4e2d1797f0ec7db22e0ff2117896cc0ad0be
MD5 b5065af6b6ae62451b5331c493049209
BLAKE2b-256 4890153e58210e9cc6018ab205a0edf4a9ea5b076f143f4b44456854b33264db

See more details on using hashes here.

File details

Details for the file ngstents-0.1.dev404-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ngstents-0.1.dev404-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 abfde57e4e6079304f75430334957fbf66a0298139a5d9c8811999b6100a630f
MD5 6afddce42ccaa91feb80775e6c32fe89
BLAKE2b-256 8eca62a63dc1825670af1c205ef3d5150c03905810254381ff4247cf9ed482f2

See more details on using hashes here.

File details

Details for the file ngstents-0.1.dev404-cp39-cp39-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for ngstents-0.1.dev404-cp39-cp39-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 15ad44f1565cc568ddd8d043e4c10b6ad6e2279f615e861243bf20fdfb9db654
MD5 e10858e5dfc3a2bffe17a19a84e3b522
BLAKE2b-256 685d10f466b48f5a19c6a64322647cfa3b1a55e33be51eb5e3362c0cda1319e6

See more details on using hashes here.

File details

Details for the file ngstents-0.1.dev404-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for ngstents-0.1.dev404-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 c1b274853b4d97d22d341462b36867644ef132077f203709050c9fdbd3ec5240
MD5 5fe8cf480946b5650ca55ac336da7157
BLAKE2b-256 28238af351b77c48b4ab554e7861399c94995e0c047696ee77a5d1ca67b15e5b

See more details on using hashes here.

File details

Details for the file ngstents-0.1.dev404-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ngstents-0.1.dev404-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d81ae6924e2f9c06056a9655471681258ec2b838cd7d217046a55072d613fee9
MD5 c432c009875f7739971c622fb7a7b939
BLAKE2b-256 cea713dad33b498231cc1186032d7cfaa968f8b98c48aaaab931deea4a6bcf99

See more details on using hashes here.

File details

Details for the file ngstents-0.1.dev404-cp38-cp38-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for ngstents-0.1.dev404-cp38-cp38-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 142951325572d6add6bec8af5d7d49535853742d4c2b919a2c5937f04adf60f1
MD5 daa5ebd46eb8b78d64cd8f36fc09688a
BLAKE2b-256 d5954c674a4a7c9e3ad9e8bdd0f6937c939f6c3232156f08b25da623916afb45

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