How to solve a degenerate mass distribution on its follower side.
Show older comments
How to solve a degenerate mass distribution in simmechanics?
Answers (1)
When Simscape/SimMechanics reports a "degenerate mass distribution", it means there is a degree of freedom with no physical inertia, which leads to nonsensical (infinite) acceleration. Here are the common causes and corresponding fixes:
- Joint-to-joint without mass: You cannot connect two joints directly without a solid or inertia block in between. Fix: Insert a small “dummy” Solid/Inertia block or use a composite joint (like 6DOF) if appropriate.
- Unconnected or floating bodies: A body is not properly grounded—especially with imports from CAD. Fix: Ensure main parts are fixed via a weld or 6DOF joint to the world frame. Refer the discussion given here: www.mathworks.com/matlabcentral/answers/484741-sharing-solution-about-degenerate-mass-on-follower-side-issues-when-evaluate-simscape-mechanic-mod
- Frame alignment issues: Overlapping coordinate frames with mismatched orientations can cause numerical issues. Fix: Verify base and follower frames are aligned correctly in orientation and position.
- Ill-conditioned inertia: Inertia tensor may be singular or degenerate (zero, Inf, NaN, etc.). Fix: Confirm your solids have valid geometry-based inertia or defined positive-definite inertia matrices.
Simulation Solver Tips
Even with structural corrections, if face persists, follow these steps:
- Use a smaller fixed-step solver (e.g., ODE5 with step ~1e4 s) to improve numeric stability. A similar discussion is given here: www.mathworks.com/matlabcentral/answers/178218-block-error-solver-configuration-an-implicit-6-dof-joint-is-attached-to-a-degenerate-mass-distribut
- Incorporate local (implicit) solvers like backward Euler in the Solver Configuration block to handle stiff dynamics. Refer this discussion for more info: www.mathworks.com/matlabcentral/answers/865440-degenerate-mass-distribution-after-reducing-step-size-and-using-state-space-model
By ensuring every scheduled motion has real inertia and using appropriate solver settings, you will eliminate degenerate mass errors and simulate reliably.
Categories
Find more on Assembly in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!