Skip to main content

High-performance physics compiler and PINN engine.

Project description

rippl

The physics compiler for neural networks.

PyPI License

Welcome to rippl. If you've ever felt that training neural networks to solve Partial Differential Equations (PDEs) requires too much boilerplate, math-heavy configuration, and bloated code, you are exactly where you need to be.

Traditional simulation engines take days to compute on supercomputers. rippl is a modern, hyper-optimized PINN (Physics-Informed Neural Network) compiler built on PyTorch. It trains an AI to understand the fundamental laws of physics, reducing inference time to milliseconds.

The best part? You don't need a PhD in numerical methods to use it. If you can snap Lego blocks together, you can build a physics solver.


📖 The Official Guide

👉 Click here to read the full Documentation (docs.md)

This repository contains a definitive, beginner-friendly learning guide. We highly recommend starting there. It will take you from a basic 1D heat wave all the way to operator learning and multi-objective thermodynamics.


⚡ Quickstart: The 7-Line Promise

We believe in showing, not telling. Here is the absolute minimum code required to solve the Heat Equation ($\frac{\partial u}{\partial t} = 0.1 \frac{\partial^2 u}{\partial x^2}$) using rippl:

import torch
import rippl

# 1. Physics
eq = rippl.Equation([(1.0, rippl.TimeDerivative(order=1)), (-0.1, rippl.Laplacian())])

# 2. Domain
domain = rippl.Domain(bounds=[(0, 1)])

# 3. Constraints
bcs = [rippl.Dirichlet(0, value=0.0), rippl.Dirichlet(1, value=0.0)]
ic  = rippl.Initial(lambda x: torch.sin(torch.pi * x[:, 0:1]))
constraints = rippl.Constraints(bcs + [ic], fields=["u"])

# 4. Engine
solver = rippl.Solver(equation=eq, domain=domain, constraints=constraints)

# 5. Execute
model = solver.solve(epochs=3000)
You just built a PyTorch neural network, enforced boundaries algebraically, sampled coordinate points, and trained an AI solver.

🧰 What's in the Box? While the core API is simple, the underlying engine is industrial-grade. rippl gives you access to:

Operator Learning: Out-of-the-box support for DeepONets and 1D Fourier Neural Operators (FNOs) so your network learns the rules of physics, not just a single solution.

Mesh-Free Geometry: Build complex 2D domains using Constructive Solid Geometry (CSG) math blocks—no painful meshing required.

Intelligent Training: Native support for Causal Training (respecting time), Adaptive Collocation Sampling, and Pareto Front Balancing for coupled multi-physics systems.

The Migration Engine: Instantly transpile your old, bloated legacy scripts (like DeepXDE) into optimized rippl syntax using rippl.migrate().

🚀 Next Steps Install the package: pip install rippl

Dive into the docs: Open docs.md to see how these simple blocks scale up to 2D aerodynamics, shockwave capturing, and complex thermal stress simulations.

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

rippl-0.5.0.tar.gz (98.5 kB view details)

Uploaded Source

Built Distribution

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

rippl-0.5.0-py3-none-any.whl (134.6 kB view details)

Uploaded Python 3

File details

Details for the file rippl-0.5.0.tar.gz.

File metadata

  • Download URL: rippl-0.5.0.tar.gz
  • Upload date:
  • Size: 98.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for rippl-0.5.0.tar.gz
Algorithm Hash digest
SHA256 43b308fe75000f0b2cf20b3c9331f62574436ae03c55d64968882ecef1ad3c0a
MD5 4ee8c16da26d18c25f56728e22bf1fe3
BLAKE2b-256 6e5fe7b08acc5de135b985276ddfbca2af237fbe85d75d1e75d57b30840c6cec

See more details on using hashes here.

File details

Details for the file rippl-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: rippl-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 134.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for rippl-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5d5c72a2974abd5ad1c1093c0b519e662de90b6cbbbf8ee58fb342baaed4c570
MD5 6a8e375b55ea61ebf75d37583f169c41
BLAKE2b-256 c31b5e8a9c7884d9faf29770d674037156e22942ea906a4cc266db0ee43ec5e0

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