Skip to main content

FreeDyn

Multi-Body System (MBS) Simulation and Analysis Software

What is FreeDyn?

FreeDyn is a powerful simulation software for modeling and analyzing Multi-Body Systems (MBS). It supports:

  • Rigid and flexible body dynamics with arbitrary kinematic structures
  • Advanced constraint modeling (joints, contact, etc.)
  • Multiple force models (springs, dampers, external forces, etc.)
  • HHT time integration solver for implicit integration
  • Python/MATLAB/Scilab interfaces for custom analysis
  • GUI and command-line tools for pre- and post-processing

Download

Download the latest release as a ZIP archive from GitHub Releases.

Documentation

Quick Start

Option A – GUI (no programming required)

  1. Download and extract the release ZIP
  2. Run bin\x64_MD\Freedyn_GUI.exe from the extracted folder
  3. Open a model file (.fds) and start simulating

No Python or other tools required.

Option B – Python Scripting

For automated simulations, custom analysis, and batch processing:

  1. Install the Python bindings from the extracted release directory:
    cd C:\FreeDyn
    pip install .
    
  2. Run a model from the command line:
    freedyn-run path/to/model.fds
    
  3. Or script it:
    import freedyn as fd
    
    fd.initialize()  # loads freedyn.dll
    with fd.Model("path/to/model.fds") as model:
       model.solve()
       for idx, time, states in model.iterate_time_steps():
          print(idx, time, states["Q"][0, 0])
    

More detail: docs/GETTING_STARTED.md

Features

Simulation Capabilities

  • Kinematic and dynamic analysis
  • Time-domain simulation with implicit integration
  • Automatic constraint handling
  • Flexible body dynamics
  • Contact models

Analysis Tools

  • Jacobian extraction - System matrices at any time point
  • Force/motion analysis - Extract forces, accelerations, constraint forces
  • Parameter sensitivity - Analytical jacobians w.r.t. parameters
  • Custom measures - User-defined outputs

Integration Options

  • GUI - Pre- and post-processing with Freedyn_GUI.exe
  • Python API - Programmatic simulation and analysis
  • MATLAB API - Scripting via freedyn_api.m + Simulink integration
  • Scilab API - Scripting via freedyn_api.sce (uses MT variant)
  • C interface (CDLL) - Direct DLL linking for other languages (see include/freedyn/freedyn_c_api.h)

Architecture

FreeDyn consists of several components:

  • Freedyn_GUI.exe - Graphical pre- and post-processor
  • freedyn.dll - Core MBS solver (C-interface Dynamic Link Library)
  • Python bindings - High-level API for scripting and analysis (open source)
  • CLI tool - Command-line interface (freedyn-run)

Requirements

GUI / Standalone Use

  • Windows 7 or later (64-bit)
  • Visual C++ Redistributable (included in release)
  • Intel MKL runtime (included in release)

Python Bindings (optional)

  • Python 3.8+
  • numpy, scipy

License

FreeDyn is released under the GNU Lesser General Public License v3.

The Python bindings (source code in this repository) are open source. The binary components (freedyn.dll, Freedyn_GUI.exe, etc.) are distributed as pre-built binaries via GitHub Releases.

See LICENSE for details.

Support & Issues

Release Notes

Latest Release

  • Initial public release
  • Complete Python bindings refactoring
  • High-level API (Model, ModelInfo, analysis functions)
  • Command-line tool (freedyn-run)
  • Core MBS simulation capabilities
  • Matrix/vector extraction functionality
  • Comprehensive documentation

Contributing

Contributions to the Python bindings are welcome:

  1. Check existing issues
  2. Follow the coding guidelines
  3. Submit pull requests with clear descriptions

Citation

If you use FreeDyn in your research, please cite:

@software{freedyn2025,
  title = {FreeDyn: Multi-Body System Simulation Software},
  author = {Oberpeilsteiner, Stefan and others},
  year = {2025},
  url = {https://github.com/freedyn-org/freedyn}
}

Author

Stefan Oberpeilsteiner (FreeDyn Development Team)


Repository: https://github.com/freedyn-org/freedyn
Version: See _version.py for current version

Metadata

Release files for freedyn 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for freedyn 1.1.0
File Interpreter ABI Platform Actions
freedyn-1.1.0-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details for freedyn-1.1.0-py3-none-win_amd64.whl

Release files / freedyn-1.1.0-py3-none-win_amd64.whl

Download URL freedyn-1.1.0-py3-none-win_amd64.whl
Size 97.3 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
a668d7cd87059dedd14edade29d1500241296a0c95bdac731c85c677e0440ead
BLAKE2b-256 checksum
How to use checksums
c3f16db1565d1e4a9f7598aaa1872b92daaba580de9fca50717a1536a2d90f5d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.5

Security for freedyn 1.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page