LIBRARY
tests.RevolutePendulumRef
Revolute Pendulum (reference for Spherical joint tests)
A pendulum using a Revolute joint with axis [0, 0, 1], used as a reference to verify the Spherical joint: a spherical pendulum started in a vertical plane with zero angular velocity stays in that plane and must follow the same trajectory as this revolute pendulum with matching initial deflection. The geometry (rod, body) matches SphericalPendulumQuatJoint and SphericalPendulumConstraint.
Usage
MultibodyComponents.tests.RevolutePendulumRef()
Behavior
Source
dyad
"""
# Revolute Pendulum (reference for Spherical joint tests)
A pendulum using a Revolute joint with axis [0, 0, 1], used as a reference
to verify the Spherical joint: a spherical pendulum started in a vertical
plane with zero angular velocity stays in that plane and must follow the
same trajectory as this revolute pendulum with matching initial deflection.
The geometry (rod, body) matches `SphericalPendulumQuatJoint` and
`SphericalPendulumConstraint`.
"""
example component RevolutePendulumRef
world = MultibodyComponents.World() {}
joint = MultibodyComponents.Revolute(n = [0, 0, 1]) {}
rod = MultibodyComponents.FixedTranslation(r = [1.0, 0, 0]) {}
body = MultibodyComponents.Body(m = 1) {}
relations
connect(world.frame_b, joint.frame_a) {}
connect(joint.frame_b, rod.frame_a) {}
connect(rod.frame_b, body.frame_a) {}
endFlattened Source
dyad
"""
# Revolute Pendulum (reference for Spherical joint tests)
A pendulum using a Revolute joint with axis [0, 0, 1], used as a reference
to verify the Spherical joint: a spherical pendulum started in a vertical
plane with zero angular velocity stays in that plane and must follow the
same trajectory as this revolute pendulum with matching initial deflection.
The geometry (rod, body) matches `SphericalPendulumQuatJoint` and
`SphericalPendulumConstraint`.
"""
example component RevolutePendulumRef
world = MultibodyComponents.World() {}
joint = MultibodyComponents.Revolute(n = [0, 0, 1]) {}
rod = MultibodyComponents.FixedTranslation(r = [1.0, 0, 0]) {}
body = MultibodyComponents.Body(m = 1) {}
relations
connect(world.frame_b, joint.frame_a) {}
connect(joint.frame_b, rod.frame_a) {}
connect(rod.frame_b, body.frame_a) {}
metadata {}
endTest Cases
No test cases defined.
Related
Examples
Experiments
Analyses