QuIRK Multibody Dynamics Package

A set of tools for constructing systems of constrained rigid bodies and analyzing their motion
1.2K Downloads
Updated 10 Oct 2011

View License

QuIRK is an interactive Matlab command line interface for constructing systems of rigid bodies and joint constraints, solving the equations of motion of those systems when subject to various force expressions, displaying and animating solved systems, and extracting information about the state history and energetics of those systems. The goals of QuIRK are modularity and ease of operation rather than computational efficiency. It is based on quaternion attitude representations of bodies for full generality, and joint constraints are written in terms of the second derivative of body quaternions. Hence: Quaternion-state Interface for Rigid-body Kinetics.

QuIRK uses the Udwadia-Kalaba pseudoinverse method for constructing the equations of motion of constrained systems, augmented for singular mass matrices by Udwadia and Phohomsiri, with some additions to accommodate quaternion states.

QuIRK was developed in the course of a graduate research project. It supports complex multibody systems (with no limits on the numbers of bodies or constraints, as long as your system is capable enough) and simulates their motion subject to user-specified forces on all bodies, forces between bodies, or potential energy functions. There is a predefined set of joint constraints, but with a little understanding of the Udwadia-Kalaba technique, any arbitrary joint kinematics can be defined. The full state history of all bodies is available to the user for analysis (with some analysis tools build into this code).

More information (and documentation!) is available at http://spacecraftresearch.com/flux/quirk/index.html

Cite As

Joseph Shoer (2024). QuIRK Multibody Dynamics Package (https://www.mathworks.com/matlabcentral/fileexchange/31957-quirk-multibody-dynamics-package), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2009b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Categories
Find more on Simscape Multibody in Help Center and MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.2.0.0

Corrected prismatic joint equations, made body size arguments more versatile, and fixed a typo (thanks to Christie Harper).

1.1.0.0

Fixed a bug in mBody's handling of force objects

1.0.0.0