Get started¶
InertialSim supports the development of advanced motion tracking applications by modeling and simulating inertial sensors. It is available as both a Python library and a C++ library.
Licensing¶
InertialSim is commercial software and requires a license to access. If you are interested, get in touch!
Versions¶
InertialSim follows the semantic versioning standard:
major.minor.patch. The latest version can be found
here.
Both Python and C++ libraries support the same set of functionality and have a very similar API. They are both released with the same version numbers at the same time. The Python library includes optional modules for symbolic processing module and for visualization in notebook environments.
It is recommended to install the Python version of InertialSim with pip, the Python package manager. It also supports modern package managers like uv, which is used internally in InertialSim development and testing.
The C++ version can be installed from Apt or DNF/YUM packages in Linux environments; or manually from installers and archives in any OS of your choice. Support is also provided for CMake based packaging.
Prerequisites¶
InertialSim packages are hosted on Google Cloud Artifact Registry. Users must first authenticate using the email address associated with their license.
-
If the email address is not already associated with a Google account, create one following the official instructions under "Use an existing email address". If using a Google account is not possible in your organization, reach out for alternatives.
Note
Email addresses must be associated with a Google account before license permissions can be granted, so reach out after completing this step and before completing the Install steps below.
-
Install the Google Cloud CLI for your operating system.
-
Install system prerequisites:
- Python 3.10 or above.
Note
InertialSim has been tested with Python versions 3.10 - 3.13 across Linux, macOS, and Windows environments.
- C++ 17 compatible compiler.
- Eigen 3 or above.
Note
InertialSim has been tested with AppleClang 17 on macOS 15 (Sequoia), LLVM 22 on macOS 26 (Tahoe) and with the GCC 13 on Ubuntu 24.04 (Noble). All tests use Eigen 3.4.
Install¶
Environment and package managers
It is a best practice and highly recommended to use a Python virtual environment tool like venv, virtualenv, pipx, or uv for development and testing.
See the following for more details on configuring and authenticating with custom package indexes. They include instructions for storing or caching package locations and authentication credentials: pip, uv, Google Artifact Registry.
Here is an example install using venv and pip. Windows users will need to adjust the shell syntax to cmd or PowerShell equivalents. Users of other package managers and virtualization tools will need to adjust the exact syntax also.:
-
Authenticate.
-
Create and/or activate a virtual environment (make sure to use the correct Python version).
-
Install.
-
Install optional extras. Additional Python dependencies will be automatically installed.
Thepip install "inertialsim[plot]" pip install "inertialsim[symbolic]" pip install "inertialsim[examples]"[plot]extra includes dependencies necessary to use the inertialsim.plot module. The[symbolic]extra includes dependencies necessary to use the inertialsim.symbolic module. The[examples]extra includes dependencies to run the interactive notebooks in the companion inertialsim/examples repository.
-
Authenticate.
-
Configure and install.
- Prepare your environment.
Refer to the official Artifact Registry documentation for full details.
# Install Apt repository signing keys curl https://us-apt.pkg.dev/doc/repo-signing-key.gpg \ | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/artifact-registry.gpg \ && curl https://packages.cloud.google.com/apt/doc/apt-key.gpg \ | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/google-cloud-sdk.gpg # Add AR packages echo 'deb http://packages.cloud.google.com/apt apt-transport-artifact-registry-stable main' \ | sudo tee -a /etc/apt/sources.list.d/artifact-registry.list sudo apt update sudo apt install apt-transport-artifact-registry # Set the license key path vi /etc/apt/apt.conf.d/90artifact-registry - Add the inertialsim repository and install.
- Prepare your environment. Refer to the official Artifact Registry documentation for full details.
- Add the inertialsim repository and install.
# Add Google Cloud Artifact Registry repository sudo dnf install yum-plugin-artifact-registry sudo tee -a /etc/yum.repos.d/artifact-registry.repo << EOF [yum] name=yum baseurl=https://us-yum.pkg.dev/projects/is-packages/yum enabled=1 repo_gpgcheck=0 gpgcheck=0 EOF # Install sudo yum makecache sudo yum install inertialsim
- Download the appropriate artifact for your system.
- Install manually. An example manual install on a Linux machine may look like:
- Prepare your environment.
Refer to the official Artifact Registry documentation for full details.
Next steps¶
From here you may wish to look at the Reference pages for useful preliminaries. They detail InertialSim's fundamental software and mathematical conventions. The Examples pages provide end to end examples that can bootstrap other applications. All examples are also available as interactive notebooks in the source code. The API reference contains detailed documentation of all public interfaces provided in the source code.