Symbolic Multi-Body Dynamics in Python | A python package for symbolic creation and analysis of constrained multi-body systems
Contents
Please visit uraeus.mbd for more information about audience , fields of applications and background.
- Creation of symbolic template-based and standalone multi-body systems using minimal API via python scripting.
- Convenient and easy creation of complex multi-body assemblies.
- Convenient visualization of the system topology as a network graph.
- Viewing the system's symbolic equations in a natural mathematical format using Latex printing.
- Optimization of the system symbolic equations by performing common sub-expressions elimination.
- Creation of symbolic configuration files to facilitate the process of numerical simulation data entry.
The documentation is hosted at readthedocs and can be found here.
Note
The documentation is still under construction!
The package needs a valid python 3.6+ environment. If new to scientific computing in python, Anaconda is a recommended free python distribution from Continuum Analytics that includes SymPy, SciPy, NumPy, Matplotlib, and many more useful packages for scientific computing, which provides a nice coherent platform with most of the tools needed.
As the package is still under continuous development, cloning this repository is a more versatile way to test and play with it, until a more stable first release is released. This can be done via the following git command using the terminal (Linux and Mac) or powershell (Windows).
git clone https://github.com/khaledghobashy/uraeus_smbd.git
This will download the repository locally on your machine. To install the package locally and use it as other python packages, using the same terminal/powershell run the following command:
pip install -e uraeus_smbd
To be discussed ...
The Implementation Details will be provided in a separate documentation and linked here
The Theoretical Basis will be provided in a separate documentation and linked here
As the tool is developed and maintained by one developer for now, if you have any inquiries, do not hesitate to contact me at [email protected] or [email protected]
uraeus.smbd is distributed under the 3-clause BSD license. See the LICENSE file for details.