pdesolve
pdesolve is a symbolic PDE toolbox built on SymPy. pdesolve(...) is the main solving entry point; the package also exposes focused APIs for first-order PDEs, complete integrals, conservation laws, constant-coefficient operators, transforms/separation, hyperbolic systems, and Green/fundamental solutions.
Quick start
import sympy as sp
import pdesolve as pds
x, t = sp.symbols("x t", real=True)
u = sp.Function("u")
eq = sp.Eq(sp.diff(u(x, t), t) + sp.diff(u(x, t), x), 0)
res = pds.pdesolve(eq, u(x, t), (x, t), method="auto")
print(res.method)
print(res.solution)
PDESolve documentation
The documentation is built from the package API, canonical execution registry, recognizers, planners, regression tests, worked examples, and executable tutorials. Start at docs/index.md. In particular:
docs/capability-matrix.md— supported PDE families and support leveldocs/method-inventory.md— exact canonical method keys, recognizers, direct APIs, and formal methodsdocs/public-api-inventory.md— all package-level exports and signaturesdocs/inputs-conditions-domains.md— structured inputs and geometrydocs/results-verification.md— result classes and verification semanticsdocs/planning-diagnostics.md— recognition/ranking/trace inspectiondocs/limitations.md— support boundaries and partial/formal capabilitiesdocs/developer-guide.md— extending the package safelydocs/tutorial-notebooks.md— PDESolve documentation executable tutorial curriculum
A mkdocs.yml navigation file is included so the Markdown tree can be rendered with MkDocs if desired.
Inspecting automatic planning
problem = pds.build_pde_problem(eq, u(x, t), (x, t))
plan = pds.plan_canonical_problem(problem)
for step in plan.steps:
print(step.method, step.score, step.reasons)
Kernel and Green-function APIs
Use solve_fundamental_solution(...) and solve_green_function(...) for explicit kernel work. Automatic kernel routing is conservative and is primarily source-driven, so ordinary homogeneous heat/wave IVPs continue to use condition-aware IVP, transform, or series paths.
Installation
pip install -e .
Requires Python 3.11+ and SymPy 1.12+.
Tests
python -m pytest -q
The suite covers solver families, coordinator layers, structured conditions/domains, verification/trace behavior, benchmarks, Green functions, and a 52-example heterogeneous PDE reference matrix.
License and source
PDESolve is licensed under the GNU General Public License v3.0 only (GPL-3.0-only). The canonical source repository is https://github.com/BhuvaneshBhatt/pdesolve.
Example materials
Runnable examples include examples/first_order_nonlinear_demo.py, examples/conservation_law_demo.py, examples/invariant_reduction_demo.py, examples/complete_integral_methods.py, and examples/pdesolve_demo.py. Focused notebooks include notebooks/invariant_reduction_demo.ipynb; the systematic tutorial curriculum is under notebooks/tutorials/; the capability matrix and method inventory provide the authoritative overview of supported methods.
Metadata
Release files for pdesolve 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pdesolve-0.1.0.tar.gz | 223.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pdesolve-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 445.9 kB
Release files / pdesolve-0.1.0.tar.gz
| Download URL | pdesolve-0.1.0.tar.gz |
|---|---|
| Size | 223.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1e2a636d582ef6ecfbcb4e7fafc14a61793cb19a272cbe84ce9614724255cd79
|
|
BLAKE2b-256 checksum How to use checksums |
4d4ae47eef84cc8ebb67bb78287f97a5f0651a371275d19fbdd4fa9832e386ef
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Aug 21, 2026.
Transparency logRelease files / pdesolve-0.1.0-py3-none-any.whl
| Download URL | pdesolve-0.1.0-py3-none-any.whl |
|---|---|
| Size | 222.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4b21fcc790e314006d5274d67d2228a2f4f1aeb3d70bbfc97d448499b447696c
|
|
BLAKE2b-256 checksum How to use checksums |
3b8bf7a19f2c5bbfb769b4a8973780179428de1b970748478cebfd5f37000436
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Aug 21, 2026.
Transparency log