modepy: Basis Functions, Node Sets, Quadratures
modepy helps you create well-behaved high-order discretizations on simplices (i.e. segments, triangles and tetrahedra) and tensor products of simplices (i.e. squares, cubes, prisms, etc.). These are a key building block for high-order unstructured discretizations, as often used in a finite element context. Features include:
Support for simplex and tensor product elements in any dimension.
- Orthogonal bases:
Jacobi polynomials with derivatives
Orthogonal polynomials for simplices up to 3D and tensor product elements and their derivatives.
All bases permit symbolic evaluation, for code generation.
- Access to numerous quadrature rules:
Jacobi-Gauss, Jacobi-Gauss-Lobatto in 1D (includes Legendre, Chebyshev, ultraspherical, Gegenbauer)
Clenshaw-Curtis and Fejér in 1D
Grundmann-Möller on the simplex
Xiao-Gimbutas on the simplex
Vioreanu-Rokhlin on the simplex
Jaśkowiec-Sukumar on the tetrahedron
Witherden-Vincent on the hypercube
Generic tensor products built on the above, e.g. for prisms and hypercubes
- Tools to construct new quadrature rules:
A basic iterative Gauss-Newton process to optimize/tighten rules
Vioreanu-Rokhlin node initial generation based on multiplication operators
- Matrices for FEM, usable across all element types:
generalized Vandermonde,
mass matrices (including lumped diagonal),
face mass matrices,
differentiation matrices, and
resampling matrices.
Objects to represent ‘element shape’ and ‘function space’, generic node/mode/quadrature retrieval based on them.
Its roots closely followed the approach taken in the book
J. S. Hesthaven and T. Warburton (2007). Nodal Discontinuous Galerkin Methods: Algorithms, Analysis, and Applications (1st ed.). doi:10.1007/978-0-387-72067-8. (source code)
but much has been added beyond that basic functionality.
Resources:
Release files for modepy 2026.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| modepy-2026.1.tar.gz | 474.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| modepy-2026.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 818.3 kB
Release files / modepy-2026.1.tar.gz
| Download URL | modepy-2026.1.tar.gz |
|---|---|
| Size | 474.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
25e0be56a109ae69ed5d73b0032c5dbeafbc8aa88552f4cb338c7fa9b98cb1d4
|
|
BLAKE2b-256 checksum How to use checksums |
64eb3a5b651e8637ad57ec255cd0292b16b0173c633c933407c97a97cf420a71
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jan 19, 2026.
Transparency logRelease files / modepy-2026.1-py3-none-any.whl
| Download URL | modepy-2026.1-py3-none-any.whl |
|---|---|
| Size | 343.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ba7117f98bd7fb5f219d8686dd24df2720902e714125c8a9d07edd581e5991fa
|
|
BLAKE2b-256 checksum How to use checksums |
06822f591e700aa740e9e13eb6f21440ab8ea3b08037cbfb5005037174d555e1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jan 19, 2026.
Transparency log