NVIDIA/physicsnemo

Open-source deep-learning framework for building, training, and fine-tuning deep learning models using state-of-the-art Physics-ML methods

About the project

PhysicsNeMo is an open-source PyTorch framework for creating, training, and fine-tuning machine-learning models for physics, scientific computing, and engineering. Researchers and engineers use its reusable components and training recipes for applications such as aerodynamics, weather forecasting, structural mechanics, geophysics, and thermal design. The catalogue entries provide rules and skills for working with PhysicsNeMo projects.

3.4kStars on the repository
31Mods indexed here, across every type
todayLast push, which is what freshness is scored on
Apache-2.0Licence, which decides whether bodies are shown

NVIDIA/physicsnemo

Cursor rule Cursor ✓ vendor

Reusable layers and building blocks should be placed in physicsnemo/nn, not physicsnemo/models. Examples include FullyConnected, attention layers, and UNetBlock.

not rated 3.4k +23 today A 34 tokens original Apache-2.0

NVIDIA/physicsnemo

Cursor rule Cursor ✓ vendor

Complete models composed of multiple layers should be placed in physicsnemo/models, not physicsnemo/nn. These are domain-specific or modality-specific models.

not rated 3.4k +23 today A 31 tokens original Apache-2.0

NVIDIA/physicsnemo

Cursor rule Cursor ✓ vendor

All model and layer classes must inherit from physicsnemo.Module (not torch.nn.Module directly) to ensure proper serialization, versioning, and registry functionality.

not rated 3.4k +23 today A 31 tokens original Apache-2.0

NVIDIA/physicsnemo

Cursor rule Cursor ✓ vendor

New model classes should start in physicsnemo/experimental/nn or physicsnemo/experimental/models during development, where backward compatibility is not guaranteed.

not rated 3.4k +23 today A 30 tokens original Apache-2.0

NVIDIA/physicsnemo

Cursor rule Cursor ✓ vendor

Model classes being deprecated must include deprecation warnings in both docstring and runtime, explaining why and what users should use instead, for at least 1 release cycle.

not rated 3.4k +23 today A 33 tokens original Apache-2.0

NVIDIA/physicsnemo

Cursor rule Cursor ✓ vendor

Every model/layer requires comprehensive docstrings following NumPy style with Sphinx RST formatting, including all sub-rules MOD-003b through MOD-003k.

not rated 3.4k +23 today A 34 tokens original Apache-2.0

NVIDIA/physicsnemo

Cursor rule Cursor ✓ vendor

Model and method docstrings must be prefixed with r""" (raw string with triple double quotes) for proper LaTeX rendering in Sphinx documentation.

not rated 3.4k +23 today A 31 tokens original Apache-2.0

NVIDIA/physicsnemo

Cursor rule Cursor ✓ vendor

Class docstrings must contain three mandatory sections - Parameters, Forward, and Outputs. Optional sections include Notes, Examples, ..important::, and ..code-block::.

not rated 3.4k +23 today A 32 tokens original Apache-2.0

NVIDIA/physicsnemo

Cursor rule Cursor ✓ vendor

Inline code in docstrings must be formatted with double backticks code, not single backticks, as single backticks don't render properly in Sphinx.

not rated 3.4k +23 today A 32 tokens original Apache-2.0

NVIDIA/physicsnemo

Cursor rule Cursor ✓ vendor

Docstrings should use Sphinx cross-references (:class:, :func:, :meth:) to link to other code elements and external resources for better documentation connectivity.

not rated 3.4k +23 today A 32 tokens original Apache-2.0

NVIDIA/physicsnemo

Cursor rule Cursor ✓ vendor

All utility functions specific to a model must be in the same module file as the model itself, not in separate utility files, to maintain self-contained modules.

not rated 3.4k +23 today A 31 tokens original Apache-2.0

NVIDIA/physicsnemo

Cursor rule Cursor ✓ vendor

All forward and public methods must validate tensor shapes at the beginning, wrapped in torch.compiler.iscompiling() guard, with standardized error messages.

not rated 3.4k +23 today A 28 tokens original Apache-2.0

NVIDIA/physicsnemo

Cursor rule Cursor ✓ vendor

All tensor arguments in model methods must have jaxtyping type annotations with shape specifications (e.g. Float[torch.Tensor, "b c h w"]) for runtime-checkable shape information.

not rated 3.4k +23 today A 39 tokens original Apache-2.0

At most 3 mods per repository are shown here, and a mod shipped inside a plugin is left to that plugin's page — the rest are on their repository pages: