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.dev405.tar.gz (351.1 kB view details)

Uploaded Source

Built Distributions

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

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

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

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

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

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

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

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

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

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

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

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

Uploaded CPython 3.9Windows x86-64

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

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

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

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

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

Uploaded CPython 3.8Windows x86-64

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

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

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

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

File details

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

File metadata

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

File hashes

Hashes for ngstents-0.1.dev405.tar.gz
Algorithm Hash digest
SHA256 fe74789dbbdf262247aa94b0395b3978cf866661ffc6c85d5d6580ced1a22b98
MD5 f50192100edfd8a9d706ede06ad1d54a
BLAKE2b-256 c64f97a502ec24c69a777cfc2a5c397d0b9f7c5974626c50a7f7df1243dcf08c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ngstents-0.1.dev405-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 4cb82a2886823d5111f6871cf46726635c90676119da69c8635acc439f37795e
MD5 e4a27faf6cc1cee5f0d91fa0a50a4473
BLAKE2b-256 97373fb782a8632385379a2e00d5a235b12a91fda0dd6528168561869d67387c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ngstents-0.1.dev405-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 14421962a6f8170a752034a97d3f00daf4d267e0cf43fdf80e948e963cedc333
MD5 f78b87d1a944e0bfe5c870fe7a882ff2
BLAKE2b-256 d81e7cb8261a9392bab7aca37a4b35d2a383483dca41c20ef093b4f3ce1b1363

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ngstents-0.1.dev405-cp312-cp312-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 504d06c3f79cd5d4e4f3750c6aea41a0ccbd1c1885e99ceb5219b598cee5fa85
MD5 edf27e257ca78b947fce295fc9c7e535
BLAKE2b-256 24fad71072845a8c646a5452f7c7fff1c29321281e3f0e621a209afb01923987

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ngstents-0.1.dev405-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 054506e64a1e7ad67a631e98c5660770780c5e2ddada7fd58b48abecbae1edcd
MD5 76037185e0f17116e8ebe68118c2162d
BLAKE2b-256 06e9e1535704449190a03e64ca5929000da047f231c28b843174ab460ef700d8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ngstents-0.1.dev405-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5ad2693877d8aa78215cd7fd4e7cf8bd8af80e10b4b807c112082cbe763a2903
MD5 b7ebd45203f37b17cf6e39b3d1ff5d0b
BLAKE2b-256 fa32a172d9f136a44a9a4df25b3614f10e3f01f7e45c8fa284788783e165fdda

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ngstents-0.1.dev405-cp311-cp311-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 2e3fbaa6358c16b71f74e06c586b99210b1ac77af6e2bbfedd7ea461d3bd4635
MD5 7d24d05188d94bd9ebf283ffce8e33a9
BLAKE2b-256 ae8a561b24dcaff3c4aa784582f99a95f513538e4199fcb0848cc0da29cc2d8b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ngstents-0.1.dev405-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 8126e45b42efec42e06a01543b4af6563b0de4064a2125b33002dd8356b11115
MD5 1483a18231774a763b483ad44baffa40
BLAKE2b-256 4179c911926d98348cb8916b46cec1b3034550e441cc90be112a030c6217575f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ngstents-0.1.dev405-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1280d65eeb49f2396cfe9cce54e1928d62338a51b8e574a36ad86446fde27521
MD5 dedb152da015fe5da178dcc0fc186996
BLAKE2b-256 406f54519f14201c57c2a03c20f1b3240360688b2547667b72080e8c90978ddc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ngstents-0.1.dev405-cp310-cp310-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 c74c6581324d9edf0278b77f1c1854cd87b46530f9e0686d042d11f9132b1f02
MD5 a5a7cda6343242c0f7acdf725b4872ed
BLAKE2b-256 36242bd374e55e4592cd039170a3b8a2191bf7721a4e90f6dcfe54cbea9dbba8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ngstents-0.1.dev405-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 2d2f1f7c8cdee7e7ef8841ac2500579bdbecbd1fac879d37d89715243c01bca2
MD5 33f4fe3b1047abfb3dc516e747930fa7
BLAKE2b-256 e1a204ed640d1ed7180bdaea092327a15e31364a7cbb157296b1b2741b6b631a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ngstents-0.1.dev405-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 52c6f0ac4c92b6b323523877b0553029657ee7ecaaf9092cc62e55c924ac914d
MD5 96b65ec8f6a70367f88bb3cfa1abc6e5
BLAKE2b-256 6a42306e4cc8c89d8c4bc946f6c0f0de8de18fb6b32a8d9a1ac30846f39d1f74

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ngstents-0.1.dev405-cp39-cp39-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 40e6602884896351a27bd8e83a69e4a8ab5fdd472c60fa0f706889ce45783137
MD5 e123c1f2ffd671247e0cacaa9649e2b1
BLAKE2b-256 55605ed2aab289f827f301fd07d72035ee5323005ef540e0fb54f8993a44ca9f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ngstents-0.1.dev405-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 8452c4d8355d73718e6c39b5053890a0a19e787f25cf011d064e54624e5611fb
MD5 ef03c71e7cace0fd774bc66eafe69a3b
BLAKE2b-256 3e0c59f3605ea3f5fce3321ba74ba072f72bf4c63e2717a07258e5c65b8c3157

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ngstents-0.1.dev405-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 62a6748511b1f47a62d0ec29f8e635389a504e94c8117426c3b3d0d4fe66206c
MD5 e30c2dc7ba60f6ff34fd9dfd6f6d29e2
BLAKE2b-256 41b0825ff2730de66323b61b293e0661f132a33e041380c1a8eba82ebf5713e9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ngstents-0.1.dev405-cp38-cp38-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 9405c4073e50508ce0a723aaa76dbc1b600a010ad32cf6ce5e8b34c9afb805b9
MD5 2c7c0b5cffc94ac5324db23530493c23
BLAKE2b-256 d989b74595afad38a6f0d91d7f97a020ff071a173f270b5526e6a3d96315c7cf

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