A Unified and Reproducible Framework for Physics-Informed Extreme Learning Machines
Project description
PyPIELM
A Unified and Reproducible Framework for Physics-Informed Extreme Learning Machines
Overview
PyPIELM is an open-source PyTorch-native library that provides a unified implementation of 26+ Physics-Informed Extreme Learning Machine (PIELM) variants alongside PINN baselines for solving partial differential equations (PDEs). It exposes a scikit-learn-style fit / predict / score API so that any PIELM or PINN variant can be used in three lines of code.
Key Features
| Feature | Detail |
|---|---|
| 26+ PIELM variants | VanillaPIELM, BayesianPIELM, GFF-PIELM, DPIELM, LocELM, CurriculumPIELM, NullSpacePIELM, … |
| PINN baselines | VanillaPINN, AdaptivePINN, FourierPINN, MuonPINN |
| Data adapters | CSV, NPZ, PINNacle .dat, PDEBench HDF5, torch.utils.data.Dataset |
| PDE operators | Autograd Laplacian/gradient, analytic fast paths for tanh/sin, BCs/ICs |
| Reproducibility | YAML experiment configs, CLI, deterministic seeding |
| Export | ONNX, TorchScript |
| Visualisation | 1D/2D solution plots, error maps, Pareto fronts, leaderboard heatmaps |
Installation
pip install pypielm # core only
pip install "pypielm[viz]" # + matplotlib
pip install "pypielm[viz,bench]" # + memory profiling
pip install "pypielm[dev]" # full dev environment
From source:
git clone https://github.com/KStruniawski/pypielm.git
cd pypielm
pip install -e ".[dev]"
Quickstart
import pypielm
from pypielm.data import auto_load
from pypielm.models import CorePIELM
from pypielm.pde.operators import AnalyticLaplacian
# Load data (CSV, NPZ, PINNacle .dat, …)
ds = auto_load("data/poisson_classic.dat", source="pinnacle")
# Train model
model = CorePIELM(hidden_dim=300, ridge_lambda=1e-8)
model.fit(ds, pde_operator=AnalyticLaplacian())
# Evaluate
print(model.score(ds.X_test, ds.y_test)) # relative L² error
Documentation
Full API reference and tutorials: pypielm.readthedocs.io
Citation
If you use PyPIELM in your research, please cite:
@software{struniawski2026pypielm,
author = {Struniawski, Karol},
title = {{PyPIELM}: A Unified and Reproducible Framework for
Physics-Informed Extreme Learning Machines},
year = {2026},
url = {https://github.com/KStruniawski/pypielm},
}
Related
- PyPIELM App — Streamlit web UI for training, benchmarking and exporting models: github.com/KStruniawski/pypielm-app
License
CC BY-NC-ND 4.0 © Karol Struniawski
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pypielm-0.1.0.tar.gz.
File metadata
- Download URL: pypielm-0.1.0.tar.gz
- Upload date:
- Size: 231.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
01235f0f3cc30769488475f30b7bd28073619af8f252cc4c2bc4d3ab5d1b0432
|
|
| MD5 |
2fa9f11de62bd1ab2a1c52ff61b3b59c
|
|
| BLAKE2b-256 |
d6c132ec4b67091b9556252e6b246304692dd0bc79070e7e5e95de4142846621
|
File details
Details for the file pypielm-0.1.0-py3-none-any.whl.
File metadata
- Download URL: pypielm-0.1.0-py3-none-any.whl
- Upload date:
- Size: 87.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2efae8ff29fad2907bbf03ef7b608b2f129483eb9b29758fe3f94f3392eb65e5
|
|
| MD5 |
b1f59a2b2a0f27514418b99d84c64de6
|
|
| BLAKE2b-256 |
3b322d3657d449a01cd136836b05928caba57d1dc0ac6d7a5eb411186073b181
|