Spaces:
Sleeping
Sleeping
| [build-system] | |
| requires = ["setuptools", "setuptools-scm<9.0.0"] | |
| build-backend = "setuptools.build_meta" | |
| [project] | |
| name = "nvidia-physicsnemo" | |
| authors = [ | |
| { name="NVIDIA PhysicsNeMo Team"}, | |
| ] | |
| description = "A deep learning framework for AI-driven multi-physics systems" | |
| readme = "README.md" | |
| requires-python = ">=3.10" | |
| license = "Apache-2.0" | |
| dependencies = [ | |
| "certifi>=2023.7.22", | |
| "fsspec>=2023.1.0", | |
| "numpy>=1.22.4", | |
| "onnx>=1.14.0", | |
| "packaging>=24.2", | |
| "s3fs>=2023.5.0", | |
| "setuptools>=77.0.3", | |
| "timm>=1.0.0", | |
| "torch>=2.4.0", | |
| "tqdm>=4.60.0", | |
| "treelib>=1.2.5", | |
| "xarray>=2023.1.0", | |
| "zarr>=2.14.2", | |
| ] | |
| classifiers = [ | |
| "Programming Language :: Python :: 3", | |
| "Operating System :: OS Independent", | |
| ] | |
| dynamic = ["version"] | |
| [project.urls] | |
| Homepage = "https://github.com/NVIDIA/physicsnemo" | |
| Documentation = "https://docs.nvidia.com/physicsnemo/index.html#core" | |
| Issues = "https://github.com/NVIDIA/physicsnemo/issues" | |
| Changelog = "https://github.com/NVIDIA/physicsnemo/blob/main/CHANGELOG.md" | |
| [project.optional-dependencies] | |
| launch = [ | |
| "hydra-core>=1.2.0", | |
| "termcolor>=2.1.1", | |
| "wandb>=0.13.7", | |
| "mlflow>=2.1.1", | |
| "pydantic>=2.4.2", | |
| "imageio>=2.28.1", | |
| "moviepy>=1.0.3", | |
| ] | |
| dev = [ | |
| "pytest>=6.0.0", | |
| "pyyaml>=6.0", | |
| "interrogate==1.5.0", | |
| "coverage==6.5.0", | |
| "ruff==0.12.5", | |
| "moto[s3]>=5.0.28", | |
| "pre-commit>=4.0.0" | |
| ] | |
| makani = [ | |
| # TODO(akamenev): PyPI does not allow direct URL deps, update once Makani is in PyPI | |
| # "makani @ git+https://github.com/NVIDIA/modulus-makani.git@v0.1.0", | |
| "torch-harmonics>=0.6.5,<0.7.1", | |
| "tensorly>=0.8.1", | |
| "tensorly-torch>=0.4.0", | |
| ] | |
| fignet = [ | |
| "jaxtyping>=0.2", | |
| "torch_scatter>=2.1", | |
| "torchinfo>=1.8", | |
| "warp-lang>=1.0", | |
| "webdataset>=0.2", | |
| ] | |
| storage = [ | |
| "multi-storage-client[boto3]>=0.33.0", | |
| ] | |
| shardtensor = [ | |
| "wrapt>=1.15.0", | |
| ] | |
| natten = [ | |
| "natten", | |
| "einops", | |
| ] | |
| all = [ | |
| "nvidia_dali_cuda120>=1.35.0", | |
| "h5py>=3.7.0", | |
| "netcdf4>=1.6.3", | |
| "ruamel.yaml>=0.17.22", | |
| "scikit-learn>=1.0.2", | |
| "scikit-image>=0.24.0", | |
| "warp-lang>=1.0", | |
| "vtk>=9.2.6", | |
| "pyvista>=0.40.1", | |
| "cftime>=1.6.2", | |
| "einops>=0.7.0", | |
| "pyspng>=0.1.0", | |
| "shapely>=2.0.6", | |
| "pytz>=2023.3", | |
| "nvtx>=0.2.8", | |
| "nvidia-physicsnemo[launch]", | |
| "nvidia-physicsnemo[dev]", | |
| "nvidia-physicsnemo[makani]", | |
| "nvidia-physicsnemo[fignet]", | |
| "nvidia-physicsnemo[storage]", | |
| ] | |
| [tool.setuptools.dynamic] | |
| version = {attr = "physicsnemo.__version__"} | |
| [tool.setuptools.packages.find] | |
| include = ["physicsnemo", "physicsnemo.*"] | |
| [tool.ruff] | |
| # Enable flake8/pycodestyle (`E`), Pyflakes (`F`), flake8-bandit (`S`), | |
| # isort (`I`), and performance 'PERF' rules. | |
| lint.select = ["E", "F", "S", "I", "PERF"] | |
| lint.fixable = ["I"] | |
| # Never enforce `E402`, `E501` (line length violations), | |
| # and `S311` (random number generators) | |
| lint.ignore = ["E501", "S311"] | |
| # Exclude the docs and experimental folders (this applies to both lint and format) | |
| exclude = ["docs", "physicsnemo/experimental"] | |
| [tool.ruff.lint.per-file-ignores] | |
| # Ignore `F401` (import violations) in all `__init__.py` files, and in `docs/*.py`. | |
| "__init__.py" = ["F401"] | |
| "docs/*.py" = ["F401"] | |
| # Ignore `S101` (assertions) in all `test` files. | |
| "test/*.py" = ["S101"] | |
| # ==== UV configuration ==== | |
| [tool.uv] | |
| no-build-isolation-package = ["torch_scatter"] | |
| managed = false | |
| [project.entry-points."physicsnemo.models"] | |
| AFNO = "physicsnemo.models.afno:AFNO" | |
| DLWP = "physicsnemo.models.dlwp:DLWP" | |
| FNO = "physicsnemo.models.fno:FNO" | |
| GraphCastNet = "physicsnemo.models.graphcast:GraphCastNet" | |
| MeshGraphNet = "physicsnemo.models.meshgraphnet:MeshGraphNet" | |
| FullyConnected = "physicsnemo.models.mlp:FullyConnected" | |
| Pix2Pix = "physicsnemo.models.pix2pix:Pix2Pix" | |
| One2ManyRNN = "physicsnemo.models.rnn:One2ManyRNN" | |
| SRResNet = "physicsnemo.models.srrn:SRResNet" | |
| Pangu = "physicsnemo.models.pangu:Pangu" | |
| Fengwu = "physicsnemo.models.fengwu:Fengwu" | |
| SwinRNN = "physicsnemo.models.swinvrnn:SwinRNN" | |
| EDMPrecondSR = "physicsnemo.models.diffusion:EDMPrecondSR" | |
| UNet = "physicsnemo.models.diffusion:UNet" | |