Package: nvidia-modulus.sym
Modulus Symbolic (Beta)Modulus Symbolic (Modulus Sym) provides pythonic APIs, algorithms and utilities to be used with Modulus core, to explicitly physics inform the model training. This includes symbolic APIs for PDEs, domain sampling and PDE-based residuals.It also provides higher level abstraction to compose a training loop from specification of the geometry, PDEs and constraints like boundary conditions using simple symbolic APIs.
Please refer to theLid Driven cavitythat illustrates the concept.
Additional information can be found in theModulus documentation.Users of Modulus versions older than 23.05 can refer to themigration guidefor updating to the latest version.Modulus PackagesModulus (Beta): Open-source deep-learning framework for building, training, and fine-tuning deep learning models using state-of-the-art Physics-ML methods.Modulus Symbolic (Beta): Framework providing pythonic APIs, algorithms and utilities to be used with Modulus core to physics inform model training as well as higher level abstraction for domain experts.Domain Specific PackagesEarth-2 MIP (Beta): Python framework to enable climate researchers and scientists to explore and experiment with AI models for weather and climate.InstallationPyPiThe recommended method for installing the latest version of Modulus Symbolic is using PyPi:pipinstallnvidia-modulus.symNote, the above method only works for x86/amd64 based architectures. For installing Modulus Sym on Arm based systems using pip,
Install VTK from source as shownhereand then install Modulus-Sym and other dependenciespipinstallnvidia-modulus.sym--no-deps
pipinstall"hydra-core>=1.2.0""termcolor>=2.1.1""chaospy>=4.3.7""Cython==0.29.28""numpy-stl==2.16.3""opencv-python==4.5.5.64"\"scikit-learn==1.0.2""symengine>=0.10.0""sympy==1.12""timm==0.5.4""torch-optimizer==0.3.0""transforms3d==0.3.1"\"typing==3.7.4.3""pillow==10.0.1""notebook==6.4.12""mistune==2.0.3""pint==0.19.2""tensorboard>=2.8.0"ContainerThe recommended Modulus docker image can be pulled from theNVIDIA Container Registry:dockerpullnvcr.io/nvidia/modulus/modulus:24.01From SourcePackageFor a local build of the Modulus Symbolic Python package from source use:gitclonegit@github.com:NVIDIA/modulus-sym.git&&cdmodulus-sym

pipinstall--upgradepip
pipinstall.Source ContainerTo build release image, you will need to do the below preliminary steps:Clone this repo, and download the Optix SDK fromhttps://developer.nvidia.com/designworks/optix/downloads/legacy.gitclonehttps://github.com/NVIDIA/modulus-sym.gitcdmodulus-sym/&&mkdirdepsCurrently Modulus supports v7.0. Place the Optix file in the deps directory and make it
executable. Also clone the pysdf library in the deps folder (NVIDIA Internal)chmod+xdeps/NVIDIA-OptiX-SDK-7.0.0-linux64.shgitclone<internalpysdfrepo>Then to build the image, insert next tag and run below:dockerbuild-tmodulus-sym:deploy\--build-argTARGETPLATFORM=linux/amd64--targetdeploy-fDockerfile.Alternatively, if you want to skip pysdf installation, you can run the following:dockerbuild-tmodulus-sym:deploy\--build-argTARGETPLATFORM=linux/amd64--targetno-pysdf-fDockerfile.Currently onlylinux/amd64andlinux/arm64platforms are supported.ContributingFor guidance on making a contribution to Modulus, see thecontributing guidelines.CommunicationGithub Discussions: Discuss architectures, implementations, Physics-ML research, etc.GitHub Issues: Bug reports, feature requests, install issues, etc.Modulus Forum: TheModulus Forumhosts an audience of new to moderate level users and developers for general chat, online
discussions, collaboration, etc.LicenseModulus Symbolic is provided under the Apache License 2.0, please seeLICENSE.txtfor full license text.