PINNeAPPle Labs

The library

One pipeline, from the written PDE to the served prediction.

Every layer is an independent Python package on PyPI — use only the part you need. No layer hides the one below it: you see the mesh, the residual, the architecture and the error.

PyPI 0.7.0 Python ≥ 3.10 31 módulos 248 exemplos

Architecture

Layered architecture

ApplicationAPPS & SERVING
pinneapple_apppinneapple_labpinneapple_hubpinneapple_orchestrationpinneapple_llmREST / FastAPI
ModelsNEURAL
pinneapple_neuralpinneapple_modelsPINNFNODeepONetGNNLSTMVPINN
Physics & solversPHYSICS
pinneapple_physicspinneapple_solverspinneapple_simulationpinneapple_pdbOpenFOAMFEniCS/dolfinxCalculiX
AnalysisANALYSIS & UQ
pinneapple_analysispinneapple_veriphysicspinneapple_decisionpinneapple_adaptationUQEnKFMonte Carlo
Data & geometryDATA
pinneapple_datapinneapple_designpinneapple_catalogpinneapple_pdbpinneapple_twin3dpinneapple_blender
CoreCORE
pinneapple_corepinneapple_problemdesignpinneapple_registrypinneapple_toolspinneapple_securitypinneapple_systems
Why this matters: the same library that trains the network also runs the reference solver. Comparing a model against itself is the most common mistake in Physics AI — here the reference is always external to training.
inverse_heat.py
# the h nobody measures, from a handful of thermocouples
from pinneapple_physics import HeatConduction1D
from pinneapple_neural import PINNTrainer

problem = HeatConduction1D(conductivity=50.0, length=0.30, learn_h=True)
model = PINNTrainer(problem, layers=[3, 64, 64, 1])
report = model.fit(thermocouples=readings, epochs=5000)

print(report.h, report.h_std)         # 14.8 0.3  (true value: 15)
report.verify_against("finite-volume")  # per-field error, error map

Get started

The equation goes in as text

One-command install, no build. The same package runs the problem, the training, the comparison against the solver and the report.

What you get on day one

  • A reproducible environment — 248 examples with versioned output, to compare against your own result.
  • Public benchmarks — SSQN Helmholtz, LBM vortex shedding, LPM design space, latency and I/O.
  • Real interoperability — OpenFOAM, CalculiX, FEniCS/dolfinx, Gmsh, VTK, STL, USD and glTF in one session.
  • Industry standards — AAS, DTDL, NGSI-LD, Eclipse Ditto and OPC UA for what the plant already consumes.

Talk to an engineerOpen the docs ↗

Open source

The base is public. So is verification.

Apache-2.0, on PyPI, with versioned releases. What is open is genuinely open — and what is a product is called a product.

PINNeAPPle-Labs/PINNeAPPle

The core: PINN, FNO, DeepONet, GNN, solvers, geometry, UQ, digital twins and REST serving.

★ 104 · 28 forks · Apache-2.0 · PyPI 0.7.0

PINNeAPPle-Labs/pinnfactory

A lightweight, standalone framework for PINNs from PDEs in SymPy, with PyTorch autodiff.

★ 72 · Apache-2.0 · standalone

PINNeAPPle-Labs/PINNeAPPle-Benchmark

Public, reproducible benchmarks: SSQN Helmholtz, LBM vortex shedding, LPM, latency, shard balance.

reproducible · versioned plots

PINNeAPPle-Labs/pinnaitor

A general-purpose agentic framework (ELM AI Agentic Framework), at an earlier stage — said plainly.

★ 22 · MIT · early stage
The honest split: The four repositories above are genuinely open source. The products are delivered as engineering, not as an open-source release.

Bring your case

Got a simulation that is slow, expensive or hard to verify?

Send it over. We come back with a closed scope and a measurable success criterion — or we tell you the classical method does it better.

Talk to an engineer