- Category
- Developer Tools
- Rank
- No. 271Tools index
- Pricing
- Open Source
- Type
- TOOL
- Use case
- Research & Education
- Interfaces
- SDK
- Builder
- newton-physics
- GitHub
- 5.7k stars
- Latest release
- v1.6.0
- Date
About
A GPU-accelerated physics simulation engine built on NVIDIA Warp, designed specifically for roboticists and simulation researchers. It extends Warp's deprecated simulation module with OpenUSD support, differentiability, and user-defined extensibility for scalable robotics simulation.
What it does
Newton is a Python library for constructing robot and scene models, advancing simulated state, handling contacts and controls, and querying kinematics and dynamics. Its public surface also includes geometry, actuators, controllers, sensors, solvers, USD utilities, viewers, recording, replay, and policy-oriented examples.
Why it's ranked here
Newton is a strong choice for research teams already working in Python and NVIDIA’s compute ecosystem. It combines a broad robotics API with differentiated physics, multiple solver-facing modules, scene import support, viewers, notebooks, and substantial runnable examples. The careful optional-dependency structure also keeps specialized capabilities from burdening every installation.
What's good
The public API covers forward and inverse kinematics, Jacobians, mass matrices, passive and applied inverse-dynamics forces, collision handling, contacts, controls, and model construction. Installation extras separate simulation, importers, ONNX inference, remeshing, notebooks, ray tracing, and CUDA-specific PyTorch workflows. Documentation generation respects explicit public exports and handles Warp-decorated functions with their original signatures and docstrings.
Tradeoffs
GPU use requires a supported NVIDIA card, a sufficiently recent driver, and CUDA 12 compatibility. macOS runs on CPU only. MuJoCo simulation, USD and mesh import, visualization, notebooks, and policy examples each add optional dependencies. Some importer packages are unavailable on particular Python versions or architectures, so identical environments cannot be assumed across every supported platform.
How to use it well
Use Newton for Python-based robotics simulation, controller experiments, differentiable mechanics, model import, and GPU-scaled research runs. Start with the examples bundle, then install only the extras required by your solver, assets, viewer, notebook, or policy workflow. Treat Linux or Windows with NVIDIA hardware as the main performance path. It does not provide GPU acceleration on macOS.
Technical notes+
pyproject.toml uses uv_build, requires Python 3.10 or newer, and keeps warp-lang as the sole base dependency while exposing sim, onnx, importers, remesh, examples, rtx, notebook, documentation, and CUDA-specific PyTorch extras. newton/__init__.py exports core geometry and simulation types plus actuators, controllers, IK, sensors, solvers, USD, utilities, and viewer modules. newton/_src/sim/__init__.py exposes model construction, state, controls, contacts, collision handling, kinematics, Jacobian, mass-matrix, and inverse-dynamics operations. newton/_src/usd/__init__.py registers newton_usd_schemas when available and raises an install-focused error when schema support is required but missing. docs/conf.py, docs/generate_api.py, and docs/_ext/autodoc_wpfunc.py build Sphinx API pages from public exports and unwrap Warp Function objects for signatures and docstrings.
Observed
- Code license
- Apache-2.0
- Documentation license
- CC-BY-4.0
- Primary language
- Python 3.10 or newer
- Packaging
- Installable as the newton Python package with pip; optional extras cover simulation, importers, examples, notebooks, remeshing, ray tracing, ONNX, and PyTorch CUDA workflows.
- Interface
- Python library with a module-based example runner; no web API or MCP interface is described.
- Platform support
- Linux on x86-64 and aarch64, Windows on x86-64, and macOS with CPU execution only.
- GPU requirements
- NVIDIA Maxwell or newer with driver 545 or newer and CUDA 12 compatibility; no local CUDA Toolkit installation is required.
Read from README.md, pyproject.toml, docs/conf.py, docs/serve.py, docs/print_api.py, newton/__init__.py, docs/generate_api.py, docs/_ext/experimental.py, docs/_ext/autodoc_filter.py, docs/_ext/autodoc_wpfunc.py, docs/_static/mermaid-nbsphinx.js, newton/_src/sim/__init__.py, newton/_src/usd/__init__.py, newton/_src/core/__init__.py, newton/_src/math/__init__.py.
What it can do
Simulate robot physics interactions
Robot model and environment parameters → Physics simulation results with robot behavior
Perform GPU-accelerated physics calculations
Physics simulation parameters and scene data → Computed physics states and dynamics
Import and process OpenUSD scene files
OpenUSD file format scenes → Loaded simulation environment and assets
Generate differentiable simulation gradients
Simulation parameters and target objectives → Gradient information for optimization
Execute scalable multi-robot simulations
Multiple robot configurations and scenarios → Parallel simulation results across robot instances
Extend simulation capabilities through custom modules
User-defined physics extensions and custom code → Enhanced simulation engine with custom behaviors
Intel on Newton
Tags
Tech Stack
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.
