Repository navigation
test(dynamics): validate operational-space methods against closed-form dynamics - #837
Conversation
Up to standards ✅🟢 Issues
|
| Metric | Results |
|---|---|
| Complexity | 13 |
| Duplication | 0 |
NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #837 +/- ##
=====================================
Coverage 0.00% 0.00%
=====================================
Files 146 146
Lines 17068 17068
=====================================
Misses 17068 17068 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
Thank you for these tests. Checking the operational-space methods against an independent closed-form derivation is the right kind of test, since it would catch an error that a comparison between two of our own implementations would not, and 128 cases in a third of a second is cheap to keep. I'll update the branch with |
Summary
The operational-space dynamics methods need an independent mathematical reference: comparing them with values generated by RTB can miss shared errors. Add closed-form TwoLink tests for
inertia_x,coriolis_x,gravload_xandaccel_x, using Spong's joint-space equations and hand-differentiated analytical kinematics.The tests check individual force terms, the complete equation of motion and distinct trajectory rows, across standard/modified DH, zero/nonzero link inertia, and Python/compiled backends. The module docstring derives the equations and explains TwoLink's sign convention, world XZ plane and
rpy/xyzcoordinate ordering. Compiled cases explicitly fail if RNE silently falls back to Python.Related issue
Closes #804
Validation
Checklist
AI assistance: developed and checked with Codex.