The Mambo Toolbox - A Maple package for multibody kinematics and dynamics
A Mambo toolbox geometry is spanned by a set of observers, a set of points, and a set of triads. Specifically, an observer is defined by its corresponding reference point and reference triad; a pair of points are defined by the position vector from the first point to the second point and vice versa; and a pair of triads is defined by the rotation matrix between the first triad and the second triad and vice versa.
If the position vector (rotation matrix) between a pair of points (triads) has been explicity defined or can be computed from explicitly defined position vectors (rotation matrices) using vector addition (matrix multiplication), the points (triads) are said to be related.
An observer tree structure is established within the Mambo toolbox by declaring pairs of observers as immediate neighbors within the tree structure. If two observers have been declared immediate neighbors, the observers are said to be
directly related. If two observers belong to the same tree structure, but are not immediate neighbors, the observers are said to indirectly related.
Three separate steps are involved in establishing a Mambo toolbox geometry, namely
The Mambo toolbox geometry is represented by three pairs of global variables as described below.
The global variable GlobalObserverDeclarations is a Maple table with indices given by declared observer labels. If
A is the label of a declared observer, then the entry GlobalObserverDeclarations[A] is a set containing the labels of all directly related observers.
The global variable GlobalPointDeclarations is a Maple table with indices given by declared point labels. If A is the label of a declared point, then the entry GlobalPointDeclarations[A] is a set containing the labels of all directly related points.
The global variable GlobalTriadDeclarations is a Maple table with indices given by declared triad labels. If a is the label of a declared triad, then the entry GlobalTriadDeclarations[a] is a set containing the labels of all directly related triads.
The global variable GlobalObserverDefinitions is a Maple table with indices given by declared observer labels. If A is the label of a declared observer, then the entry GlobalObserverDefinitions[A] is a table with entries given by the corresponding reference point and reference triad.
The global variable GlobalPointDefinitions is a Maple table with indices given by pairs of declared point labels. If A and B are the labels of two declared points, then the entry GlobalPointDefinitions[A,B] is given by the corresponding position vector from A to B.
The global variable GlobalTriadDefinitions is a Maple table with indices given by pairs of declared triad labels. If a and b are the labels of two declared triads, then the entry GlobalTriadDefinitions[a,b] is given by the corresponding rotation matrix from a to b.
Upon loading the Mambo toolbox, an empty Mambo toolbox geometry is established. Subsequent declarations and definitions modify this Mambo toolbox geometry. See Restart and Undo.
Further information about the Mambo toolbox including multiple worked-through examples and a detailed discussion of the underlying mathematical formalism can be found in Multibody Mechanics and Visualization by Harry Dankowicz published by Springer Verlag UK, 2004.
Help files for the individual Mambo Toolbox procedures are also available by selecting the support tab at the top of the screen. If the tab menu is not showing, please click here.© Harry Dankowicz 2003-2006
Mechanical and Industrial Engineering
University of Illinois at Urbana-Champaign
Urbana, IL 61801
e-mail: danko@uiuc.edu