Research Papers And References

Status

Living catalog and single source of truth. This page is the consolidated, managed list of research papers, textbooks, model-format standards, and comparative engine implementations that DART cites, implements, extends, reproduces, or uses as a baseline.

This page is intentionally published in the website documentation rather than only in internal developer docs. The old docs/design/simulation_experimental_references.md path is kept only as a compatibility pointer; do not add entries there.

The catalog currently focuses on the DART 7 simulation world (dart/simulation/** and dartpy.simulation) and its algorithms. The schema is general, so it can extend to the rest of DART without changing its shape.

It is a companion to the API design docs:

Why This Exists

DART’s north star is a research-focused engine where “the easiest place to reproduce and evaluate a new algorithm should be inside DART,” and it names a tracked gap: algorithm-family contracts and baseline comparisons are not yet tracked as first-class research surfaces. This catalog is that surface for the DART 7 simulation world: it records what the new API and algorithms reference, implement, plan, evaluate, or reject, with an explicit verdict and status for each — so a researcher or agent can see at a glance where a method stands and where it is wired into the code.

How To Use

  • Scan the summary tables for status/priority/verdict at a glance.

  • Read the per-entry details for the citation, where it is used in DART, and the rationale behind the verdict.

  • Use the stable entry IDs in plans, PRs, tests, benchmarks, and release notes.

  • To add or change an entry, follow the dart-references skill (.claude/skills/dart-references/); keep entries grounded in the design docs, code, or tests.

Structure And Ordering

The catalog is designed to scale without turning into a flat bibliography:

  • Keep one top-level category per reference family: DART citation, textbooks and foundational references, algorithms and methods, model formats and standards, comparative implementations, and terminology grounding.

  • Each category has a summary table followed by detailed entries. Add both when adding a new reference.

  • Keep entry IDs stable. Use author-year for papers and textbooks, a standard name for formats, and a project name for software baselines.

  • Within each category, keep adopted/high-priority implementation references before lower-priority background references, then preserve existing order unless a status change makes reordering useful.

  • Put full BibTeX blocks on direct citation targets and active implementation credits. For lower-level background references, a precise citation plus status fields is enough until a feature needs a formal citation block.

Property legend

Each entry carries these properties:

Property

Values

Meaning

Type

textbook, paper, standard, engine

Kind of reference (engine = comparative software implementation).

Topic

e.g. dynamics, kinematics, contact, integration, collision, terminology, model-format, api

Primary subject area.

Status

referenced, planned, in-progress, implemented, deferred, rejected

The DART 7 simulation world’s relationship to the reference.

Priority

high, medium, low,

Relative importance for acting on or evaluating the reference; when purely informational.

Verdict

adopt, baseline, reference, evaluate, reject

The project’s decision: build on it, compare against it, cite it, weigh it, or pass.

Where used

links / paths

Design doc, code, or test that uses or will use it.

Status values are written from the DART 7 simulation world’s perspective. A method already shipping in classic DART but not yet in the DART 7 simulation world is planned here, with the classic location noted.

DART Core Citation

If you use DART in an academic publication, please cite:

Jeongseok Lee, Michael X. Grey, Sehoon Ha, Tobias Kunz, Sumit Jain, Yuting Ye, Siddhartha S. Srinivasa, Mike Stilman, and C. Karen Liu. “DART: Dynamic Animation and Robotics Toolkit.” Journal of Open Source Software, 3(22), 500, 2018. DOI: 10.21105/joss.00500.

@article{Lee2018,
  doi = {10.21105/joss.00500},
  url = {https://doi.org/10.21105/joss.00500},
  year = {2018},
  month = {Feb},
  publisher = {The Open Journal},
  volume = {3},
  number = {22},
  pages = {500},
  author = {Jeongseok Lee and Michael X. Grey and Sehoon Ha and Tobias Kunz and Sumit Jain and Yuting Ye and Siddhartha S. Srinivasa and Mike Stilman and C. Karen Liu},
  title = {{DART}: Dynamic Animation and Robotics Toolkit},
  journal = {The Journal of Open Source Software}
}

Textbooks & Foundational References

ID

Reference

Topic

Status

Priority

Verdict

featherstone-2008

Featherstone, Rigid Body Dynamics Algorithms (2008)

dynamics

planned

high

adopt

lynch-park-2017

Lynch & Park, Modern Robotics (2017)

kinematics

implemented

adopt

murray-1994

Murray, Li & Sastry, A Mathematical Introduction to Robotic Manipulation (1994)

kinematics

referenced

reference

shabana-mbs

Shabana, Dynamics of Multibody Systems (4th ed.)

terminology

referenced

reference

siciliano-2009

Siciliano, Sciavicco, Villani & Oriolo, Robotics: Modelling, Planning and Control (2009)

dynamics

referenced

reference

hairer-2006

Hairer, Lubich & Wanner, Geometric Numerical Integration (2006)

integration

referenced

medium

reference

featherstone-2008

Featherstone, R. Rigid Body Dynamics Algorithms. Springer, 2008.

  • Type: textbook · Topic: dynamics · Status: planned · Priority: high · Verdict: adopt

  • Where used: cpp design (articulated-body method); terminology grounding in the “Terminology Grounding” section below.

  • Notes: Canonical reference for the kinematic-tree model and the O(n) Articulated-Body Algorithm (ABA). Source of the “kinematic tree” / “multibody system” vocabulary the DART 7 API adopts. ABA is the planned basis for the DART 7 forward-dynamics stage; DART 7 forward kinematics already follows its tree formulation.

lynch-park-2017

Lynch, K. M., & Park, F. C. Modern Robotics: Mechanics, Planning, and Control. Cambridge University Press, 2017.

  • Type: textbook · Topic: kinematics/terminology · Status: implemented · Priority: — · Verdict: adopt

  • Where used: DART 7 JointType taxonomy and frame/transform vocabulary; drove BallSpherical naming.

  • Notes: Source for the joint taxonomy (revolute, prismatic, helical/screw, cylindrical, universal, spherical) and screw-theory framing. “Spherical” (not “ball”) follows this text.

murray-1994

Murray, R. M., Li, Z., & Sastry, S. S. A Mathematical Introduction to Robotic Manipulation. CRC Press, 1994.

  • Type: textbook · Topic: kinematics · Status: referenced · Priority: — · Verdict: reference

  • Notes: Screw theory and product-of-exponentials background underpinning the kinematics vocabulary; cited as supporting reference, not a direct dependency.

shabana-mbs

Shabana, A. A. Dynamics of Multibody Systems. Cambridge University Press.

  • Type: textbook · Topic: terminology/dynamics · Status: referenced · Priority: — · Verdict: reference

  • Notes: Establishes “multibody system” as the field-standard term; supports the Multibody naming decision over the simulator-specific “articulation”.

siciliano-2009

Siciliano, B., Sciavicco, L., Villani, L., & Oriolo, G. Robotics: Modelling, Planning and Control. Springer, 2009.

  • Type: textbook · Topic: dynamics/kinematics · Status: referenced · Priority: — · Verdict: reference

  • Notes: General modelling/control reference for terminology and method framing.

hairer-2006

Hairer, E., Lubich, C., & Wanner, G. Geometric Numerical Integration: Structure-Preserving Algorithms for Ordinary Differential Equations. 2nd ed., Springer, 2006.

  • Type: textbook · Topic: integration · Status: referenced · Priority: medium · Verdict: reference

  • Where used: authority cited by simulation_variational_integrator.md.

  • Notes: Authority for symplectic/variational integration, backward-error analysis, and the inverse right-trivialized tangent dexp⁻¹ as the Bernoulli series Σ Bₖ/k! adᵘᵏ (next nonzero term +ad⁶/30240; truncation error O(‖ad‖⁶), ~machine-ε at millisecond steps). Grounds the accuracy justification for DART’s exact SE3::LeftJacobianInverse-based dexp⁻¹.

Algorithms & Methods (Papers)

ID

Reference

Topic

Status

Priority

Verdict

featherstone-1983

Featherstone, “Calculation of robot dynamics using articulated-body inertias” (1983)

dynamics

planned

high

adopt

liu-jain-mbs

Liu & Jain, A Quick Tutorial on Multibody Dynamics

dynamics

implemented

adopt

tan-lcp

Tan, Siu & Liu, Contact Handling for Articulated Rigid Bodies Using LCP

contact

implemented

adopt

stewart-trinkle-1996

Stewart & Trinkle, “An implicit time-stepping scheme … Coulomb friction” (1996)

contact

referenced

medium

baseline

baraff-1996

Baraff, “Linear-time dynamics using Lagrange multipliers” (1996)

dynamics

referenced

low

reference

macklin-xpbd-2016

Macklin et al., “XPBD: position-based simulation of compliant constrained dynamics” (2016)

integration

referenced

medium

evaluate

gjk-1988

Gilbert, Johnson & Keerthi, GJK distance algorithm (1988)

collision

implemented

adopt

ipc-2020

Li et al., “Incremental Potential Contact” (2020)

contact

in-progress

high

adopt

rigid-ipc-2021

Ferguson et al., “Intersection-free Rigid Body Dynamics” (2021)

contact

in-progress

high

adopt

lan-2022-abd

Lan et al., “Affine Body Dynamics” (2022)

contact/dynamics

planned

high

adopt

chen-2022-unified-newton-barrier

Chen et al., “A Unified Newton Barrier Method for Multibody Dynamics” (2022)

contact/integration/multibody

planned

high

adopt

lan-2022-pdipc

Lan et al., “Penetration-free Projective Dynamics on the GPU” (2022)

contact/integration/GPU

planned

high

evaluate

chen-2023-spb

Chen, Diaz & Yuksel, “Shortest Path to Boundary for Self-Intersecting Meshes” (2023)

contact/collision

planned

high

evaluate

ando-2024-cubic-barrier

Ando, “A Cubic Barrier with Elasticity-Inclusive Dynamic Stiffness” (2024)

contact/deformable/GPU

planned

high

evaluate

werling-2021

Werling et al., “Fast and Feature-Complete Differentiable Physics … Articulated Rigid Bodies” (2021)

differentiable

in-progress

high

adopt

howell-2022-dojo

Howell et al., “Dojo: A Differentiable Physics Engine for Robotics” (2022)

differentiable/contact/integration

planned

high

evaluate

lee-vi-2016

Lee, Liu, Park & Srinivasa, “A Linear-Time Variational Integrator for Multibody Systems” (2016)

integration

planned

high

adopt

marsden-west-2001

Marsden & West, “Discrete mechanics and variational integrators” (2001)

integration

referenced

medium

reference

chen-2024-vbd

Chen et al., “Vertex Block Descent” (SIGGRAPH 2024)

integration

in-progress

high

adopt

vbd-2024

Chen et al., “Vertex Block Descent” (2024) — VI contact survey

contact

referenced

medium

evaluate

avbd-2025

Giles et al., “Augmented Vertex Block Descent” (2025)

contact/integration

in-progress

high

adopt

modi-2024-simplicits

Modi et al., “Simplicits: Mesh-Free, Geometry-Agnostic, Elastic Simulation” (2024)

integration/deformable

planned

high

adopt

smith-2012-rosi

Smith et al., “Reflections on Simultaneous Impact” (2012)

contact/impact

referenced

medium

baseline

zhang-2015-qce

Zhang et al., “Quadratic Contact Energy Model for Multi-impact Simulation” (2015)

contact/impact

referenced

medium

evaluate

vouga-2017-all-well

Vouga et al., “All’s Well That Ends Well: Guaranteed Resolution of Simultaneous Rigid Body Impact” (2017)

contact/impact

referenced

medium

evaluate

halm-posa-2024-set-valued-impact

Halm & Posa, “Set-valued rigid-body dynamics for simultaneous, inelastic, frictional impacts” (2024)

contact/impact

referenced

medium

evaluate

lelidec-2024-contact-models

Le Lidec et al., “Contact Models in Robotics: a Comparative Analysis” (2024)

contact/survey

referenced

medium

reference

ogc-2025

Chen et al., “Offset Geometric Contact” (2025)

contact/collision

planned

high

evaluate

nakamura-1987-task-priority

Nakamura, Hanafusa & Yoshikawa, “Task-Priority Based Redundancy Control of Robot Manipulators” (1987)

kinematics

planned

medium

adopt

buss-kim-2005-sdls

Buss & Kim, “Selectively Damped Least Squares for Inverse Kinematics” (2005)

kinematics

planned

medium

evaluate

aristidou-lasenby-2011-fabrik

Aristidou & Lasenby, “FABRIK: A fast, iterative solver for the Inverse Kinematics problem” (2011)

kinematics

planned

medium

evaluate

beeson-ames-2015-tracik

Beeson & Ames, “TRAC-IK: An open-source library for improved solving of generic inverse kinematics” (2015)

kinematics

planned

medium

baseline

starke-2020-bioik

Starke, Bio IK: A Memetic Evolutionary Algorithm for Generic Multi-Objective Inverse Kinematics (2020)

kinematics

planned

medium

evaluate

rakita-2018-relaxedik

Rakita, Mutlu & Gleicher, “RelaxedIK: Real-time Synthesis of Accurate and Feasible Robot Arm Motion” (2018)

kinematics

planned

high

baseline

zucker-2013-chomp

Zucker et al., “CHOMP: Covariant Hamiltonian Optimization for Motion Planning” (2013)

motion-planning

referenced

medium

baseline

mukadam-2018-gpmp2

Mukadam et al., “Continuous-time Gaussian process motion planning via probabilistic inference” (2018)

motion-planning

referenced

medium

evaluate

ames-2022-ikflow

Ames, Morgan & Konidaris, “IKFlow: Generating Diverse Inverse Kinematics Solutions” (2022)

kinematics

deferred

medium

evaluate

johnson-murphey-2009

Johnson & Murphey, “Scalable variational integrators for constrained mechanical systems in generalized coordinates” (2009)

integration

referenced

high

baseline

leyendecker-2008

Leyendecker, Marsden & Ortiz, “Variational integrators for constrained dynamical systems” (2008)

integration

referenced

high

evaluate

kobilarov-crane-desbrun-2009

Kobilarov, Crane & Desbrun, “Lie group integrators for animation and control of vehicles” (2009)

integration

referenced

medium

reference

featherstone-1983

Featherstone, R. “The calculation of robot dynamics using articulated-body inertias.” International Journal of Robotics Research, 2(1), 1983.

  • Type: paper · Topic: dynamics · Status: planned · Priority: high · Verdict: adopt

  • Notes: Original ABA paper; the planned forward-dynamics method for the DART 7 dynamics stage. See the featherstone-2008 entry for the consolidated textbook treatment.

liu-jain-mbs

Liu, C. K., & Jain, S. A Quick Tutorial on Multibody Dynamics. Georgia Institute of Technology. (docs/dynamics.pdf)

  • Type: paper · Topic: dynamics · Status: implemented · Priority: — · Verdict: adopt

  • Where used: docs/background/dynamics/; classic dart/dynamics/.

  • Notes: DART’s own foundational derivation of articulated-body equations of motion. Implemented in classic DART; the DART 7 simulation world reuses the same generalized-coordinate formulation.

tan-lcp

Tan, J., Siu, K., & Liu, C. K. Contact Handling for Articulated Rigid Bodies Using LCP. (docs/lcp.pdf)

  • Type: paper · Topic: contact · Status: implemented · Priority: — · Verdict: adopt

  • Where used: docs/background/lcp/; classic dart/constraint/, dart/math/.

  • Notes: DART’s LCP-based contact formulation. Implemented in classic DART; the DART 7 constraint stage is a planned reimplementation target.

stewart-trinkle-1996

Stewart, D. E., & Trinkle, J. C. “An implicit time-stepping scheme for rigid body dynamics with inelastic collisions and Coulomb friction.” IJNME, 1996.

  • Type: paper · Topic: contact/integration · Status: referenced · Priority: medium · Verdict: baseline

  • Notes: Standard implicit time-stepping contact formulation; a baseline to compare the DART 7 contact/integration stages against.

baraff-1996

Baraff, D. “Linear-time dynamics using Lagrange multipliers.” SIGGRAPH, 1996.

  • Type: paper · Topic: dynamics · Status: referenced · Priority: low · Verdict: reference

  • Notes: Constraint-based dynamics background; cited for context on maximal-coordinate vs reduced-coordinate trade-offs.

macklin-xpbd-2016

Macklin, M., Müller, M., & Chentanez, N. “XPBD: position-based simulation of compliant constrained dynamics.” MIG, 2016.

  • Type: paper · Topic: integration · Status: referenced · Priority: medium · Verdict: evaluate

  • Where used: named as a candidate integration family in cpp design; surveyed as a compliant-constraint contact model in PLAN-084 contact-roadmap.

  • Notes: Compliant position-based dynamics; under evaluation as an optional integration/constraint family behind the DART-owned capability matrix. Its compliant-constraint formulation (α̃ = α/Δt²) is the closest match to the variational integrator’s Δt·M⁻¹ quasi-Newton approximation, making it a natural compliant-contact option there. Not a commitment.

gjk-1988

Gilbert, E. G., Johnson, D. W., & Keerthi, S. S. “A fast procedure for computing the distance between complex objects in three-dimensional space.” IEEE Journal of Robotics and Automation, 1988.

  • Type: paper · Topic: collision · Status: implemented · Priority: — · Verdict: adopt

  • Where used: native collision (dart/collision/, libccd-derived GJK/EPA).

  • Notes: GJK distance/intersection underpins DART’s native narrowphase; the DART 7 simulation world consumes collision through the shared collision foundation.

ipc-2020

Minchen Li, Zachary Ferguson, Teseo Schneider, Timothy R. Langlois, Denis Zorin, Daniele Panozzo, Chenfanfu Jiang, and Danny M. Kaufman. “Incremental Potential Contact: Intersection- and Inversion-free, Large-Deformation Dynamics.” ACM Transactions on Graphics, 39(4), Article 49, 2020. DOI: 10.1145/3386569.3392425.

Related public resources:

@article{Li2020IPC,
  author = {Minchen Li and Zachary Ferguson and Teseo Schneider and Timothy R. Langlois and Denis Zorin and Daniele Panozzo and Chenfanfu Jiang and Danny M. Kaufman},
  title = {Incremental Potential Contact: Intersection- and Inversion-free, Large-Deformation Dynamics},
  journal = {ACM Transactions on Graphics},
  volume = {39},
  number = {4},
  articleno = {49},
  year = {2020},
  doi = {10.1145/3386569.3392425}
}
  • Type: paper · Topic: contact/integration · Status: in-progress · Priority: high · Verdict: adopt

  • Where used: PLAN-081 and its IPC paper gap audit.

  • Notes: Provides the target method family for robust deformable contact: implicit time stepping with barrier contact, conservative CCD, volumetric hyperelasticity, codimensional contact, and lagged variational friction. The DART implementation is experimental and DART-owned; DART does not vendor or link the upstream IPC repository as a runtime dependency.

    The current DART slice is IPC-inspired deformable groundwork: a public deformable-body facade, point-mass nodes, distance-spring edges, fixed nodes, an implicit step stage, an analytic static-ground barrier, focused tests, a benchmark surface, and a Filament GUI example. It should not be described as full IPC parity, mesh IPC contact, or IPC friction.

    Full paper parity still requires mesh-backed FE state, tetrahedral and surface topology, material/property coverage, backward Euler and implicit Newmark options, boundary conditions, scripted motion, restart/diagnostics, point-triangle and edge-edge distances and derivatives, tangent bases, edge-edge mollifiers, broad-phase candidate generation, conservative CCD line search, sparse projected Newton, adaptive barrier stiffness, smoothed lagged friction, and the upstream example/test/benchmark corpus. Promoted examples require long-horizon headless Filament evidence with nonblank checks, motion-difference checks, and PR-linked visual artifacts.

    Public DART APIs should use DART-owned method/capability names rather than exposing the upstream project name as a solver identity, and the upstream repository should remain a reference/baseline rather than a runtime dependency.

rigid-ipc-2021

Zachary Ferguson, Minchen Li, Teseo Schneider, Francisca Gil-Ureta, Timothy Langlois, Chenfanfu Jiang, Denis Zorin, Danny M. Kaufman, and Daniele Panozzo. “Intersection-free Rigid Body Dynamics.” ACM Transactions on Graphics, 40(4), Article 183, 2021. DOI: 10.1145/3450626.3459802.

Related public resources:

@article{Ferguson2021RigidIPC,
  author = {Zachary Ferguson and Minchen Li and Teseo Schneider and Francisca Gil-Ureta and Timothy Langlois and Chenfanfu Jiang and Denis Zorin and Danny M. Kaufman and Daniele Panozzo},
  title = {Intersection-free Rigid Body Dynamics},
  journal = {ACM Transactions on Graphics},
  volume = {40},
  number = {4},
  articleno = {183},
  year = {2021},
  doi = {10.1145/3450626.3459802}
}
  • Type: paper · Topic: contact/integration · Status: in-progress · Priority: high · Verdict: adopt

  • Where used: PLAN-082 and its rigid-ipc manifest.

  • Notes: Provides the target method family for robust rigid-body contact: reduced-coordinate incremental potentials, contact barriers, curved-trajectory continuous collision detection with minimum separation, projected Newton, friction, and a fixture/test/benchmark corpus for rigid scenes. The DART implementation is experimental and DART-owned; the upstream repository is a reference and benchmark baseline, not a runtime dependency.

    Current DART work has the audited upstream manifest, an internal fixture reader with first experimental-World replay state, supported OBJ/OFF/MSH/STL mesh replay plus polygonal inline geometry replay into native-backed mesh collision shapes, upstream comparison .txt shape-row ingestion, direct CCD row readers, and first internal curved-trajectory CCD tests for face-vertex, edge-edge, and point-edge primitives. The first direct evaluator regressions cover upstream-style expected-TOI rows, parameter-space residual equations for those contacts, and first parameter-box subdivision queries for those contacts, plus first root-row full-step misses, not full corpus parity. The complete implementation still needs remaining comparison script command coverage, full conservative CCD parity, barrier derivatives and Hessians, sparse projected Newton, lagged smoothed friction, same-domain rigid method selection, CPU/GPU benchmark packets, comparison baselines, and headless Filament evidence for promoted scenes.

lan-2022-abd

Lei Lan, Danny M. Kaufman, Minchen Li, Chenfanfu Jiang, and Yin Yang. “Affine Body Dynamics: Fast, Stable & Intersection-free Simulation of Stiff Materials.” ACM Transactions on Graphics, 41(4), Article 67, 2022. DOI: 10.1145/3528223.3530064.

Related public resources:

@article{Lan2022ABD,
  author = {Lei Lan and Danny M. Kaufman and Minchen Li and Chenfanfu Jiang and Yin Yang},
  title = {Affine Body Dynamics: Fast, Stable \& Intersection-free Simulation of Stiff Materials},
  journal = {ACM Transactions on Graphics},
  volume = {41},
  number = {4},
  articleno = {67},
  year = {2022},
  doi = {10.1145/3528223.3530064}
}
  • Type: paper · Topic: contact/dynamics · Status: planned · Priority: high · Verdict: adopt

  • Where used: PLAN-083 as the planned affine/stiff-body representation track, coordinated with PLAN-082.

  • Notes: ABD is the planned reduced stiff-body branch of DART’s unified Newton-barrier family. It treats a stiff body as a compact affine coordinate system with an orthogonality stiffness, preserving IPC-style nonintersection/friction guarantees while avoiding the expensive curved trajectory machinery of exact rigid IPC.

    DART should evaluate ABD as an additional internal method family, not as an immediate replacement for the existing exact/reduced rigid IPC path. A promoted ABD slice must prove correctness against rigid IPC fixtures, current DART rigid contact scenes, and the paper/deck benchmarks before any default solver behavior changes. Public APIs should use DART-owned names such as affine stiff-body dynamics rather than exposing ABD as a user-facing solver identity.

chen-2022-unified-newton-barrier

Yunuo Chen, Minchen Li, Lei Lan, Hao Su, Yin Yang, and Chenfanfu Jiang. “A Unified Newton Barrier Method for Multibody Dynamics.” ACM Transactions on Graphics, 41(4), Article 66, 2022. DOI: 10.1145/3528223.3530076.

Related public resources:

@article{Chen2022UnifiedNewtonBarrier,
  author = {Yunuo Chen and Minchen Li and Lei Lan and Hao Su and Yin Yang and Chenfanfu Jiang},
  title = {A Unified Newton Barrier Method for Multibody Dynamics},
  journal = {ACM Transactions on Graphics},
  volume = {41},
  number = {4},
  articleno = {66},
  year = {2022},
  doi = {10.1145/3528223.3530076}
}
  • Type: paper · Topic: contact/integration/multibody · Status: planned · Priority: high · Verdict: adopt

  • Where used: PLAN-083 as the cross-variant plan for consolidating deformable IPC, rigid IPC, ABD, articulation constraints, restitution, CPU/GPU evidence, and py-demos examples.

  • Notes: This paper is the target for DART’s unified Newton-barrier multibody direction. It combines IPC-style contact/friction, affine/stiff bodies, deformables, codimensional geometry, linear equality constraints through change of variables, nonlinear equality penalties, inequality barrier ranges, BDF-2 integration, and semi-implicit Rayleigh damping for restitution.

    DART should implement the method as a DART-owned solver family inside the DART 7 World, using PLAN-081 and PLAN-082 as variant owners and PLAN-083 as the shared API/kernel/benchmark plan. Completion requires mapped figure/table/unit-test coverage, py-demos examples, CPU and GPU benchmark packets, and explicit comparisons against DART incumbents, upstream references, and paper-reported numbers. The paper and deck remain references and baselines, not runtime dependencies.

lan-2022-pdipc

Lei Lan, Guanqun Ma, Yin Yang, Changxi Zheng, Minchen Li, and Chenfanfu Jiang. “Penetration-free Projective Dynamics on the GPU.” ACM Transactions on Graphics, 41(4), Article 69, 2022. DOI: 10.1145/3528223.3530069.

Related public resources:

  • Paper PDF: lan2022pdipc.pdf

  • GAMES webinar deck: Games2022240

  • Summary page: Physics-Based Animation

  • Paper video: youtube.com/watch?v=acEplzIIOEs

  • CCD reference implementation: Continuous-Collision-Detection/Fast-Approximate-Root-CCD

  • Robotics projective-dynamics reference: DragonZoom/projective-dynamics-for-robotics

  • Type: paper · Topic: contact/integration/GPU · Status: planned · Priority: high · Verdict: evaluate

  • Where used: PLAN-081 PD-IPC GPU gap audit.

  • Notes: Candidate GPU acceleration path for IPC-class deformable contact: it combines projective dynamics, IPC barriers, two-level local/global iteration, A-Jacobi, patch-based GPU collision culling, and minimum-gradient-Newton CCD pruning for solids and shells. DART should treat the fast CCD shortcut as an optimization to validate against conservative native CCD, because the public non-author CCD implementation reports missed point-triangle and edge-edge collisions. Keep the method internal and backend-neutral until CPU reference tests, A-Jacobi convergence evidence, conservative-CCD fallback policy, GPU packet benchmarks, and headless visual evidence pass.

werling-2021

Werling, K., Omens, D., Lee, J., Exarchos, I., & Liu, C. K. “Fast and Feature-Complete Differentiable Physics for Articulated Rigid Bodies.” Robotics: Science and Systems (RSS), 2021. arXiv:2103.16021.

Related public resources:

@inproceedings{Werling2021Differentiable,
  author = {Keenon Werling and Dalton Omens and Jeongseok Lee and Ioannis Exarchos and C. Karen Liu},
  title = {Fast and Feature-Complete Differentiable Physics for Articulated Rigid Bodies},
  booktitle = {Robotics: Science and Systems (RSS)},
  year = {2021},
  eprint = {2103.16021}
}
  • Type: paper · Topic: differentiable · Status: in-progress · Priority: high · Verdict: adopt

  • Where used: PLAN-110, its Nimble paper gap audit, and differentiable-simulation design.

  • Notes: Target method for opt-in differentiable simulation: analytic gradients through the contact LCP in generalized coordinates by implicit differentiation of the complementarity conditions, exploiting active-set sparsity (a small clamping-block solve) for speed. The paper itself is a DART fork, so its forward-pass ingredients map directly onto DART’s boxed-LCP library, articulated-body dynamics, and tan-lcp contact formulation.

    The DART implementation is experimental, DART-owned, and opt-in (off by default, zero cost when disabled) — a deliberate divergence from the always-on upstream. DART does not vendor or link the upstream repository as a runtime dependency, and public APIs use DART-owned method/quantity names rather than the upstream project name as a solver identity.

    This entry should not be described as complete: full parity requires the boxed-LCP contact path in the DART 7 simulation world (PLAN-080 prerequisite), the clamping/separating/tied classification and clamping-block gradient, contact Jacobian derivatives, the parameter (mass/COM/inertia/friction) selector, the PyTorch autograd.Function bridge, finite-difference-checked correctness, and trajectory-optimization plus system-identification examples.

howell-2022-dojo

Howell, T. A., Le Cleac’h, S., Bruedigam, J., Chen, Q., Sun, J., Kolter, J. Z., Schwager, M., & Manchester, Z. “Dojo: A Differentiable Physics Engine for Robotics.” arXiv:2203.00806, 2022.

Related public resources:

@article{howelllecleach2022,
  title={Dojo: A Differentiable Physics Engine for Robotics},
  author={Howell, Taylor and Le Cleac'h, Simon and Bruedigam, Jan and Chen, Qianzhong and Sun, Jiankai and Kolter, J. Zico and Schwager, Mac and Manchester, Zachary},
  journal={arXiv preprint arXiv:2203.00806},
  url={https://arxiv.org/abs/2203.00806},
  year={2022}
}
  • Type: paper · Topic: differentiable/contact/integration · Status: planned · Priority: high · Verdict: evaluate

  • Where used: PLAN-110 and its Dojo solver gap audit.

  • Notes: Dojo is an additional differentiable-rigid-body solver reference, not the current PLAN-110 implementation target. The method combines maximal-coordinate rigid bodies, variational integration, hard contact as a nonlinear complementarity problem with second-order cone friction constraints, a custom primal-dual interior-point solver, and implicit gradients through the relaxed solve. DART will evaluate whether those ideas justify a separate opt-in solver family after the active Nimble-style boxed-LCP path lands. The Dojo.jl repository is a comparison baseline only; DART does not vendor or link it as a runtime dependency.

chen-2024-vbd

Anka He Chen, Ziheng Liu, Yin Yang, and Cem Yuksel. “Vertex Block Descent.” ACM Transactions on Graphics (SIGGRAPH 2024), 43(4), 2024. DOI: 10.1145/3658179.

Related public resources:

@article{Chen2024VBD,
  author = {Chen, Anka He and Liu, Ziheng and Yang, Yin and Yuksel, Cem},
  title = {Vertex Block Descent},
  journal = {ACM Transactions on Graphics},
  volume = {43},
  number = {4},
  year = {2024},
  doi = {10.1145/3658179}
}
  • Type: paper · Topic: integration/deformable · Status: in-progress · Priority: high · Verdict: adopt

  • Where used: PLAN-104 and its VBD paper gap audit.

  • Notes: Block coordinate descent on the variational implicit-Euler objective for elastodynamics: each vertex is a 3-DOF block updated with one regularized Newton step using a positive-definite local 3x3 Hessian, with graph-colored parallel Gauss-Seidel sweeps and adaptive initialization/Chebyshev acceleration. DART targets it as a second deformable inner solver on the same DART 7 deformable ECS components and the same variational objective the current gradient-descent stage already minimizes. The DART implementation is experimental and DART-owned; DART does not vendor or link Gaia/TinyVBD as a runtime dependency, and the public deformable stage stays algorithm-neutral. It should not be described as full VBD parity, FEM hyperelasticity, VBD contact/friction, GPU VBD, or reference/paper performance parity until the relevant PLAN-104 phase lands with evidence.

lee-vi-2016

Jeongseok Lee, C. Karen Liu, Frank C. Park, and Siddhartha S. Srinivasa. “A Linear-Time Variational Integrator for Multibody Systems.” Algorithmic Foundations of Robotics XII (WAFR 2016), Springer Proceedings in Advanced Robotics. arXiv:1609.02898.

@inproceedings{Lee2016VI,
  author = {Jeongseok Lee and C. Karen Liu and Frank C. Park and Siddhartha S. Srinivasa},
  title = {A Linear-Time Variational Integrator for Multibody Systems},
  booktitle = {Algorithmic Foundations of Robotics XII (WAFR 2016)},
  series = {Springer Proceedings in Advanced Robotics},
  year = {2020},
  note = {arXiv:1609.02898}
}
  • Type: paper · Topic: dynamics/integration · Status: planned · Priority: high · Verdict: adopt

  • Where used: PLAN-084 and its design owner simulation_variational_integrator.md.

  • Notes: DART’s own research lineage; the target method for the experimental variational-integrator family. Reformulates forward integration as a root-finding problem on the forced discrete Euler–Lagrange equation and solves it in O(n) via a discrete recursive Newton–Euler residual (DRNEA) plus a recursive impulse-based quasi-Newton update (RIQN) that reuses an articulated-body-inertia forward-dynamics pass. Symplectic and near-energy-conserving for smooth conservative forcing; the paper does not address contact, friction, or closed loops (PLAN-084 roadmaps those). The DART 7 simulation world has no ABA yet, so the O(n) update is net-new work; classic DART implemented the original (reference repo jslee02/wafr2016).

marsden-west-2001

Marsden, J. E., & West, M. “Discrete mechanics and variational integrators.” Acta Numerica, 10, 357–514 (2001).

  • Type: paper · Topic: integration · Status: referenced · Priority: medium · Verdict: reference

  • Where used: foundational citation for simulation_variational_integrator.md.

  • Notes: Foundational treatment of discrete mechanics, the discrete Euler–Lagrange equation, and the symplectic/momentum-conservation properties that lee-vi-2016 builds on. Cited for the structure-preservation rationale, not a direct implementation dependency.

vbd-2024

Chen, A. H., Liu, K., et al. “Vertex Block Descent.” ACM Transactions on Graphics (SIGGRAPH 2024). arXiv:2403.06321.

  • Type: paper · Topic: contact/integration · Status: referenced · Priority: medium · Verdict: evaluate

  • Where used: contact-extension survey in PLAN-084 contact-roadmap.

  • Notes: Vertex-level block coordinate descent on the incremental-potential timestep with graph coloring; adopts the IPC lagged friction model. Surveyed (not adopted) as inspiration for adding contact/friction to the variational integrator; its block-descent solver is largely redundant with the VI’s O(n) recursive update, but its monotone-energy-descent and warmstart discipline are informative.

avbd-2025

Chris Giles, Elie Diaz, and Cem Yuksel. “Augmented Vertex Block Descent.” ACM Transactions on Graphics 44(4), Article 90, 2025. DOI: 10.1145/3731195.

Related public resources:

@article{Giles2025AVBD,
  author = {Chris Giles and Elie Diaz and Cem Yuksel},
  title = {Augmented Vertex Block Descent},
  journal = {ACM Transactions on Graphics},
  volume = {44},
  number = {4},
  articleno = {90},
  year = {2025},
  doi = {10.1145/3731195}
}
  • Type: paper · Topic: contact/integration · Status: in-progress · Priority: high · Verdict: adopt

  • Where used: PLAN-104 and its AVBD paper gap audit; also informs the PLAN-084 contact-extension survey.

  • Notes: Adopted as the hard-constraint extension of DART’s VBD-family solver work: augmented-Lagrangian dual rows, bounded equality/inequality forces, hard contact/friction, finite-stiffness ramping for high stiffness ratios, quasi-Newton Hessian approximation, alpha-regularized error correction, warm-started dual/stiffness state, rigid-body 6-DOF blocks, articulated joints, fracture limits, and unified soft/rigid interactions. Full completion requires CPU and GPU implementations, all paper/site/video experiments and demos integrated into DART tests/benchmarks/py-demos, and benchmark packets proving DART beats the reference demo repositories and the published RTX-4090 paper numbers before any parity claim.

ando-2024-cubic-barrier

Ryoichi Ando. “A Cubic Barrier with Elasticity-Inclusive Dynamic Stiffness.” ACM Transactions on Graphics 43(6), 2024, 1-13. DOI: 10.1145/3687908.

Related public resources:

@article{Ando2024CubicBarrier,
  author = {Ryoichi Ando},
  title = {A Cubic Barrier with Elasticity-Inclusive Dynamic Stiffness},
  journal = {ACM Transactions on Graphics},
  volume = {43},
  number = {6},
  pages = {1--13},
  year = {2024},
  doi = {10.1145/3687908}
}
  • Type: paper · Topic: contact/deformable/GPU · Status: planned · Priority: high · Verdict: evaluate

  • Where used: PLAN-083 PPF intake.

  • Notes: Evaluate as a candidate internal contact and strain-limiting primitive for DART’s unified Newton-barrier family. The method combines a cubic barrier, elasticity-inclusive dynamic stiffness, friction, and strain limiting for contact-rich shells, solids, and rods, with a GPU-first reference implementation in ZOZO’s Contact Solver. DART should compare its formulas, ACCD precision caveats, strain-limit rows, solver diagnostics, and single-precision GPU behavior against the existing IPC, rigid IPC, VBD/AVBD, and deformable solver plans before adopting any shared primitive or public option.

modi-2024-simplicits

Vismay Modi, Nicholas Sharp, Or Perel, Shinjiro Sueda, and David I. W. Levin. “Simplicits: Mesh-Free, Geometry-Agnostic, Elastic Simulation.” ACM Transactions on Graphics 43(4), Article 117, 2024. DOI: 10.1145/3658184.

Related public resources:

@article{Modi2024Simplicits,
  author = {Vismay Modi and Nicholas Sharp and Or Perel and Shinjiro Sueda and David I. W. Levin},
  title = {Simplicits: Mesh-Free, Geometry-Agnostic, Elastic Simulation},
  journal = {ACM Transactions on Graphics},
  volume = {43},
  number = {4},
  articleno = {117},
  year = {2024},
  doi = {10.1145/3658184}
}
  • Type: paper · Topic: integration/deformable · Status: planned · Priority: high · Verdict: adopt

  • Where used: PLAN-105.

  • Notes: Adopted as a new DART-owned geometry-agnostic reduced elastic solver family. The method treats input geometry through occupancy/point sampling, trains implicit neural skinning weights as a reduced deformation basis from random perturbations and Monte Carlo elastic-energy sampling, then advances handle-space dynamics with implicit integration/Newton solves and maps deformations back to the original representation. DART should compare against the Kaolin kaolin.physics.simplicits implementation and the paper / supplemental table rows, but must not expose Simplicits, Kaolin, Warp, Torch, CUDA resources, solver registries, or ECS storage through public APIs. Full completion requires CPU and GPU paths, every paper/site/video/Kaolin demo in DART tests/benchmarks/py-demos/visual evidence, and benchmark packets proving DART beats the reference and paper numbers before any parity claim.

smith-2012-rosi

Breannan Smith, Danny M. Kaufman, Etienne Vouga, Rasmus Tamstorf, and Eitan Grinspun. “Reflections on Simultaneous Impact.” ACM Transactions on Graphics, 31(4), Article 106, 2012. DOI: 10.1145/2185520.2185602.

Related public resources:

  • Project page: cs.columbia.edu/cg/rosi

  • Paper PDF: rosi.pdf

  • Supplement: rosi_supp.pdf

  • Type: paper · Topic: contact/impact · Status: referenced · Priority: medium · Verdict: baseline

  • Where used: PLAN-082 simultaneous-impact intake.

  • Notes: Baseline for event-level simultaneous impact: generalized reflections, physical desiderata such as feasibility, symmetry, break-away, kinetic-energy behavior, and a restitution model aimed at avoiding inelastic collapse. DART should use it first as a benchmark/specification source, not as a public solver identity.

zhang-2015-qce

Tianxiang Zhang, Sheng Li, Dinesh Manocha, Guoping Wang, and Hanqiu Sun. “Quadratic Contact Energy Model for Multi-impact Simulation.” Computer Graphics Forum, 34(7), 133-144, 2015. DOI: 10.1111/cgf.12752.

Related public resource:

  • Paper PDF: graphics.pku.edu.cn/docs/20220703165309179406.pdf

  • Type: paper · Topic: contact/impact · Status: referenced · Priority: medium · Verdict: evaluate

  • Where used: PLAN-082 simultaneous-impact intake.

  • Notes: Candidate multi-impact model that frames contact-point potential energy with a closed-form quadratic contact energy, then combines it with LCP handling for restitution and friction. Useful for a minimal internal baseline if PLAN-082 proves that finite-time rigid IPC or AVBD-style contact leaves a true restitution / wave-propagation gap.

vouga-2017-all-well

Etienne Vouga, Breannan Smith, Danny M. Kaufman, Rasmus Tamstorf, and Eitan Grinspun. “All’s Well That Ends Well: Guaranteed Resolution of Simultaneous Rigid Body Impact.” ACM Transactions on Graphics, 36(4), Article 151, 2017. DOI: 10.1145/3072959.3073689.

Related public resources:

  • Paper PDF: term-revised.pdf

  • Project page: evouga/all’s-well-that-ends-well

  • Type: paper · Topic: contact/impact · Status: referenced · Priority: medium · Verdict: evaluate

  • Where used: PLAN-082 simultaneous-impact intake.

  • Notes: The strongest termination-focused follow-up to generalized reflections and pairwise impact schemes. It belongs in DART as a go/no-go benchmark for finite termination, approximate energy behavior, drift, and break-away before any event-level impact operator is promoted.

halm-posa-2024-set-valued-impact

Mathew Halm and Michael Posa. “Set-valued rigid-body dynamics for simultaneous, inelastic, frictional impacts.” International Journal of Robotics Research, 43(10), 2024. DOI: 10.1177/02783649241236860.

Related public resources:

  • Journal page: journals.sagepub.com/doi/10.1177/02783649241236860

  • arXiv: 2103.15714

  • Type: paper · Topic: contact/impact · Status: referenced · Priority: medium · Verdict: evaluate

  • Where used: PLAN-082 simultaneous-impact intake.

  • Notes: Robotics-specific newer reference that argues simultaneous frictional impacts should sometimes be represented as a set of plausible outcomes instead of a single heuristic ordering. Evaluate as an uncertainty / benchmark direction before exposing any set-valued public API.

lelidec-2024-contact-models

Quentin Le Lidec, Wilson Jallet, Louis Montaut, Ivan Laptev, Cordelia Schmid, and Justin Carpentier. “Contact Models in Robotics: a Comparative Analysis.” IEEE Transactions on Robotics, 40, 3716-3733, 2024. DOI: 10.1109/TRO.2024.3434208.

Related public resources:

chen-2023-spb

He Chen, Elie Diaz, and Cem Yuksel. “Shortest Path to Boundary for Self-Intersecting Meshes.” ACM Transactions on Graphics, 42(4), 2023. DOI: 10.1145/3592136.

Related public resources:

ogc-2025

Anka He Chen, Jerry Hsu, Ziheng Liu, Miles Macklin, Yin Yang, and Cem Yuksel. “Offset Geometric Contact.” ACM Transactions on Graphics, 44(4), Article 160, 2025. DOI: 10.1145/3731205.

Related public resources:

nakamura-1987-task-priority

Nakamura, Y., Hanafusa, H., & Yoshikawa, T. “Task-Priority Based Redundancy Control of Robot Manipulators.” International Journal of Robotics Research, 6(2), 1987. DOI: 10.1177/027836498700600201.

  • Type: paper · Topic: kinematics · Status: planned · Priority: medium · Verdict: adopt

  • Where used: PLAN-120.

  • Notes: Grounds whole-body and task-priority IK: higher-priority task residuals constrain lower-priority objectives through redundancy/null spaces. Classic DART already has related HierarchicalIK, CompositeIK, and WholeBodyIK APIs; the DART 7 simulation world needs a DART-owned task model before carrying them forward.

buss-kim-2005-sdls

Buss, S. R., & Kim, J.-S. “Selectively Damped Least Squares for Inverse Kinematics.” Journal of Graphics Tools, 10(3), 2005. DOI: 10.1080/2151237X.2005.10129202.

  • Type: paper · Topic: kinematics · Status: planned · Priority: medium · Verdict: evaluate

  • Where used: PLAN-120.

  • Notes: Candidate singularity-robust extension to classic DART’s Jacobian DLS baseline. Evaluate against DART’s manifold state-space contract and near-singular benchmark scenes before adopting.

aristidou-lasenby-2011-fabrik

Aristidou, A., & Lasenby, J. “FABRIK: A fast, iterative solver for the Inverse Kinematics problem.” Graphical Models, 73(5), 2011. DOI: 10.1016/j.gmod.2011.05.003.

  • Type: paper · Topic: kinematics · Status: planned · Priority: medium · Verdict: evaluate

  • Where used: PLAN-120.

  • Notes: Candidate fast heuristic or seed generator for simple chains and animation-style tasks. Must be benchmarked honestly for joint limits, orientation objectives, trees, whole-body targets, and closed chains before any broad support claim.

beeson-ames-2015-tracik

Beeson, P., & Ames, B. “TRAC-IK: An open-source library for improved solving of generic inverse kinematics.” IEEE-RAS International Conference on Humanoid Robots, 2015. DOI: 10.1109/HUMANOIDS.2015.7363472.

  • Type: paper · Topic: kinematics · Status: planned · Priority: medium · Verdict: baseline

  • Where used: PLAN-120.

  • Notes: Baseline for generic constrained IK with joint limits and optimization-based fallback behavior. DART should not expose a TRAC-IK-named public solver; use method-family names and compare against the behavior.

starke-2020-bioik

Starke, S. Bio IK: A Memetic Evolutionary Algorithm for Generic Multi-Objective Inverse Kinematics. Dissertation, University of Hamburg, 2020. https://ediss.sub.uni-hamburg.de/handle/ediss/8703

  • Type: paper · Topic: kinematics · Status: planned · Priority: medium · Verdict: evaluate

  • Where used: PLAN-120.

  • Notes: Candidate evolutionary/local-search family for multi-objective, multi-effector, whole-body IK and seed generation. Evaluate as a bounded fallback or pre-trial method, not as a replacement for checked local solvers.

rakita-2018-relaxedik

Rakita, D., Mutlu, B., & Gleicher, M. “RelaxedIK: Real-time Synthesis of Accurate and Feasible Robot Arm Motion.” Robotics: Science and Systems XIV, 2018. DOI: 10.15607/RSS.2018.XIV.043.

  • Type: paper · Topic: kinematics/motion-planning · Status: planned · Priority: high · Verdict: baseline

  • Where used: PLAN-120.

  • Notes: Baseline for treating IK as real-time motion synthesis with competing objectives such as pose accuracy, continuity, collision avoidance, and singularity avoidance. This is the closest published fit for the “not just per-frame IK” requirement.

zucker-2013-chomp

Zucker, M., Ratliff, N., Dragan, A., Pivtoraiko, M., Klingensmith, M., Dellin, C., Bagnell, J. A., & Srinivasa, S. “CHOMP: Covariant Hamiltonian Optimization for Motion Planning.” International Journal of Robotics Research, 32(9), 2013. https://publications.ri.cmu.edu/chomp-covariant-hamiltonian-optimization-for-motion-planning

  • Type: paper · Topic: motion-planning · Status: referenced · Priority: medium · Verdict: baseline

  • Where used: PLAN-120.

  • Notes: Baseline trajectory-optimization framing for smoothness, obstacle/collision cost, and local-minimum mitigation over a whole motion rather than independent pose IK frames.

mukadam-2018-gpmp2

Mukadam, M., Dong, J., Yan, X., Dellaert, F., & Boots, B. “Continuous-time Gaussian process motion planning via probabilistic inference.” International Journal of Robotics Research, 37(11), 2018. arXiv: 1707.07383.

  • Type: paper · Topic: motion-planning/statistics · Status: referenced · Priority: medium · Verdict: evaluate

  • Where used: PLAN-120.

  • Notes: Candidate statistical trajectory prior for smooth continuous-time IK/motion solves. Evaluate after DART owns explicit state-space, collision query, and rollout APIs.

ames-2022-ikflow

Ames, B., Morgan, J., & Konidaris, G. “IKFlow: Generating Diverse Inverse Kinematics Solutions.” IEEE Robotics and Automation Letters, 7(3), 2022. arXiv: 2111.08933.

  • Type: paper · Topic: kinematics/learning · Status: deferred · Priority: medium · Verdict: evaluate

  • Where used: PLAN-120.

  • Notes: Learned diverse-solution generator to evaluate as a proposal distribution for classical refinement, not as an unchecked correctness source or default solver. Requires datasets, model-version diagnostics, deterministic fallback, and cross-robot generalization evidence.

johnson-murphey-2009

Johnson, E. R., & Murphey, T. D. “Scalable Variational Integrators for Constrained Mechanical Systems in Generalized Coordinates.” IEEE Transactions on Robotics, 25(6), 2009.

  • Type: paper · Topic: integration/dynamics · Status: referenced · Priority: high · Verdict: baseline

  • Where used: the explicit predecessor lee-vi-2016 benchmarks against (“SVI”); informs the PLAN-084 constraint roadmap (Phase B2).

  • Notes: The scalable variational integrator in generalized coordinates that lee-vi-2016 improves from O(n²) evaluation / O(n³) Jacobian to O(n). Its recursive tree formulation with caching and its constrained discrete Euler–Lagrange system (holonomic h(q)=0 via the augmented multiplier system D2D1Ld Dhᵀλ = 0, Dh(q^{k+1}) = 0, enforced directly each step with no drift) are the reference for DART’s loop-closure (Phase B2) work. Uses directional pin constraints n̂·(p1−p2)=0 to avoid the zero-gradient singularity of a satisfied distance constraint.

leyendecker-2008

Leyendecker, S., Marsden, J. E., & Ortiz, M. “Variational integrators for constrained dynamical systems.” ZAMM, 88(9), 2008. (with the Betsch–Leyendecker discrete null-space method, Comput. Methods Appl. Mech. Engrg., 2006.)

  • Type: paper · Topic: integration/contact · Status: referenced · Priority: high · Verdict: evaluate

  • Where used: PLAN-084 contact-roadmap (equality-constraint / closed-loop route, Phase B2).

  • Notes: Constrained variational integrators with holonomic constraints. The discrete null-space method picks P(q) spanning ker Dg(q) and left-multiplies the constrained DEL by Pᵀ to annihilate the multiplier term, then reparameterizes onto a minimal coordinate set — a drift-free, multiplier-free, well-conditioned route for closed loops. For an open kinematic tree the generalized coordinates are already minimal, so this matters mainly for loop closures; the multiplier reaction Gᵀλ can alternatively be injected as a generalized impulse into the DART O(n) solve.

kobilarov-crane-desbrun-2009

Kobilarov, M., Crane, K., & Desbrun, M. “Lie group integrators for animation and control of vehicles.” ACM Transactions on Graphics, 28(2), 2009.

  • Type: paper · Topic: integration · Status: referenced · Priority: medium · Verdict: reference

  • Where used: supporting reference for simulation_variational_integrator.md.

  • Notes: Independently confirms the inverse right-trivialized tangent coefficients (I ½[ad] + (1/12)[ad]²) DART’s dexp⁻¹ uses, and documents the Cayley map as a cheaper alternative group-difference map that avoids the Bernoulli series and the log-map singularity at rotation = π — the recorded escape hatch if that singularity ever becomes binding.

Model Formats & Standards

ID

Reference

Topic

Status

Priority

Verdict

urdf

URDF (Unified Robot Description Format)

model-format

referenced

medium

reference

sdformat

SDFormat (Simulation Description Format)

model-format

referenced

medium

reference

mjcf

MJCF (MuJoCo XML)

model-format

referenced

low

reference

urdf

Unified Robot Description Format. https://wiki.ros.org/urdf/XML/joint

  • Type: standard · Topic: model-format/terminology · Status: referenced · Priority: medium · Verdict: reference

  • Notes: Robotics interchange standard; source of the Floating joint naming and the revolute/prismatic/fixed/planar vocabulary. Loading into the DART 7 simulation world is deferred until a public C++ import owner exists; classic dart::io already parses URDF.

sdformat

Simulation Description Format. https://sdformat.org/spec

  • Type: standard · Topic: model-format · Status: referenced · Priority: medium · Verdict: reference

  • Notes: Graph-structured model format able to express closed kinematic loops; informs the first-class loop-closure design. Classic dart::io parses SDFormat.

mjcf

MuJoCo XML (MJCF). https://mujoco.readthedocs.io/en/stable/XMLreference.html

  • Type: standard · Topic: model-format · Status: referenced · Priority: low · Verdict: reference

  • Notes: Referenced for joint/equality vocabulary comparison; import is deferred.

Comparative Implementations (Engines)

Software references that informed the DART 7 API shape, terminology, and algorithm-family choices. These are baselines/comparisons, not dependencies.

ID

Engine

Used for

Status

Verdict

drake

Drake (MultibodyPlant)

terminology, constraints, stepping API

referenced

baseline

pinocchio

Pinocchio (Stack-of-Tasks)

terminology (Spherical/FreeFlyer), dynamics algos

referenced

baseline

rbdl

RBDL

terminology (FloatingBase/Helical), ABA/RNEA/CRBA

referenced

baseline

mujoco

MuJoCo / MJX

stepping, equality constraints, state vocabulary

referenced

baseline

physx-isaac

NVIDIA PhysX / Isaac Sim / Isaac Lab

articulation concept, closed-loop rigging

referenced

reference

newton

NVIDIA Newton (Warp)

model/solver split, GPU direction

referenced

reference

genesis

Genesis

entity/morph model, batched sim

referenced

reference

bullet

Bullet / PyBullet

facade-over-engine pattern, btMultiBody

referenced

reference

gazebo

Gazebo / gz-physics / SDFormat

downstream integration, kinematic loops

referenced

baseline

gaia

Gaia (VBD research framework)

VBD correctness/performance baseline (chen-2024-vbd)

referenced

baseline

tinyvbd

TinyVBD (minimal VBD reference)

VBD algorithm reference (chen-2024-vbd)

referenced

baseline

kaolin-simplicits

NVIDIA Kaolin kaolin.physics.simplicits

Simplicits method/API/code baseline (modi-2024-simplicits)

referenced

baseline

ppf-contact-solver

ZOZO’s Contact Solver

GPU shell/solid/rod contact stack and API/platform baseline (ando-2024-cubic-barrier)

referenced

baseline

dojo

Dojo.jl

Dojo-style differentiable rigid-body solver evaluation (howell-2022-dojo)

referenced

evaluate

drake

Drake MultibodyPlant. https://drake.mit.edu/doxygen_cxx/group__multibody__plant.html

  • Type: engine · Topic: comparative-implementation · Status: referenced · Priority: — · Verdict: baseline

  • Where used: terminology and stepping comparisons in simulation_cpp_api.md and simulation_python_api.md.

  • Notes: Mature robotics-dynamics baseline for multibody terminology, constraint vocabulary, and stepping API shape. DART borrows field-standard terms where they match the literature, not Drake-specific API names.

pinocchio

Pinocchio. https://github.com/stack-of-tasks/pinocchio

  • Type: engine · Topic: comparative-implementation · Status: referenced · Priority: — · Verdict: baseline

  • Where used: terminology comparisons in simulation_cpp_api.md.

  • Notes: Baseline for robotics dynamics algorithms and the Spherical/FreeFlyer naming comparison. DART uses the terminology evidence without adopting Pinocchio’s API topology.

rbdl

Rigid Body Dynamics Library. https://github.com/rbdl/rbdl

  • Type: engine · Topic: comparative-implementation · Status: referenced · Priority: — · Verdict: baseline

  • Where used: dynamics and terminology comparisons in simulation_cpp_api.md.

  • Notes: Baseline for ABA/RNEA/CRBA-style dynamics algorithms and FloatingBase/Helical terminology. DART keeps DART-owned public API names.

mujoco

MuJoCo / MJX. https://mujoco.readthedocs.io/

  • Type: engine · Topic: comparative-implementation · Status: referenced · Priority: — · Verdict: baseline

  • Where used: stepping, state vocabulary, and equality-constraint comparisons in simulation_cpp_api.md.

  • Notes: Baseline for compact simulation state, model/data separation, and equality-constraint vocabulary. DART compares behavior and API shape without copying MuJoCo-specific names.

physx-isaac

NVIDIA PhysX / Isaac Sim / Isaac Lab. https://nvidia-omniverse.github.io/PhysX/

  • Type: engine · Topic: comparative-implementation · Status: referenced · Priority: — · Verdict: reference

  • Where used: articulation and closed-loop rigging comparison in simulation_cpp_api.md.

  • Notes: Useful reference for production articulation concepts and tool-facing rigging, but DART avoids engine-specific names such as “Articulation” when robotics literature has clearer terms.

newton

NVIDIA Newton. https://github.com/newton-physics/newton

  • Type: engine · Topic: comparative-implementation · Status: referenced · Priority: — · Verdict: reference

  • Where used: model/solver split and GPU-direction comparisons in simulation_solver_architecture.md.

  • Notes: Reference for GPU-oriented model/solver separation and batched execution ideas. DART treats it as design evidence, not a dependency.

genesis

Genesis. https://github.com/Genesis-Embodied-AI/Genesis

  • Type: engine · Topic: comparative-implementation · Status: referenced · Priority: — · Verdict: reference

  • Where used: entity/morph and batched-simulation comparisons in simulation_cpp_api.md.

  • Notes: Reference for high-level scene/entity modeling and batched simulation. DART keeps its own model/component vocabulary.

bullet

Bullet / PyBullet. https://github.com/bulletphysics/bullet3

  • Type: engine · Topic: comparative-implementation · Status: referenced · Priority: — · Verdict: reference

  • Where used: facade-over-engine and rigid-body terminology comparisons in simulation_cpp_api.md.

  • Notes: Reference for a facade layered over multiple engine paths and for btMultiBody terminology. DART keeps “RigidBody” as a public term while preserving DART-owned API structure.

gazebo

Gazebo / gz-physics / SDFormat. https://gazebosim.org/

  • Type: engine · Topic: comparative-implementation · Status: referenced · Priority: — · Verdict: baseline

  • Where used: downstream integration and kinematic-loop evidence in simulation_cpp_api.md.

  • Notes: DART’s primary downstream integration baseline. SDFormat and gz-physics needs stay important compatibility evidence for model loading and kinematic-loop support.

gaia

Gaia VBD research framework. https://github.com/AnkaChan/Gaia

  • Type: engine · Topic: comparative-implementation · Status: referenced · Priority: — · Verdict: baseline

  • Where used: VBD correctness and performance comparison under PLAN-104.

  • Notes: Reference implementation for chen-2024-vbd and related VBD work. DART compares against it but reimplements VBD independently.

tinyvbd

TinyVBD. https://github.com/AnkaChan/TinyVBD

  • Type: engine · Topic: comparative-implementation · Status: referenced · Priority: — · Verdict: baseline

  • Where used: minimal VBD algorithm comparison under PLAN-104.

  • Notes: Minimal reference for the VBD update structure. It is useful for source audit and small-scene comparison, not as vendored runtime code.

kaolin-simplicits

NVIDIA Kaolin kaolin.physics.simplicits. https://kaolin.readthedocs.io/en/latest/notes/simplicits.html

  • Type: engine · Topic: comparative-implementation · Status: referenced · Priority: — · Verdict: baseline

  • Where used: Simplicits method/API/code comparison under PLAN-105.

  • Notes: Public implementation and tutorial baseline for modi-2024-simplicits. DART should compare tests, demos, and benchmarks without making Kaolin, Warp, Torch, or notebook infrastructure dependencies.

ppf-contact-solver

ZOZO’s Contact Solver. https://github.com/st-tech/ppf-contact-solver

  • Type: engine · Topic: comparative-implementation · Status: referenced · Priority: — · Verdict: baseline

  • Where used: GPU contact-stack comparison under PLAN-083.

  • Notes: Independent Apache-2.0 software stack around ando-2024-cubic-barrier. DART should use it for API, diagnostics, precision, examples, and GPU-performance lessons without exposing PPF/ZOZO/frontend-specific concepts through public APIs.

dojo

Dojo.jl. https://github.com/dojo-sim/Dojo.jl

  • Type: engine · Topic: comparative-implementation · Status: referenced · Priority: — · Verdict: evaluate

  • Where used: differentiable solver comparison under PLAN-110.

  • Notes: Julia implementation and paper/site reference for a differentiable maximal-coordinate variational hard-contact solver. DART uses it as method evidence for a possible second solver family after the active Nimble-style path is de-risked.

Notes on engine verdicts

  • drake, pinocchio, rbdl, mujoco, gazebo — baseline: mature robotics-dynamics references the DART 7 simulation world should be benchmarked and compared against, and whose terminology (multibody, spherical, floating) DART follows. gz-physics is also DART’s primary downstream integration.

  • physx-isaac, newton, genesis, bullet — reference: consulted for API patterns and the GPU/batched roadmap, but their engine-specific names (e.g., “Articulation”, Unity-style “Rigidbody”) are deliberately not adopted where they diverge from the robotics literature.

  • gaia, tinyvbd — baseline: the reference implementations of Vertex Block Descent (chen-2024-vbd). DART’s PLAN-104 VBD solver is compared against them for correctness and performance on matched scenes, but DART reimplements VBD independently and does not vendor or link them.

  • kaolin-simplicits — baseline: NVIDIA Kaolin’s kaolin.physics.simplicits module, notes, and tutorial notebooks provide the public Simplicits method/API/code baseline for PLAN-105. DART should use them for source audit, tests, demos, and benchmark comparison, but must not make Kaolin, Warp, Torch, or notebook infrastructure a runtime dependency.

  • ppf-contact-solver — baseline: ZOZO’s Contact Solver is an independent Apache-2.0 software stack around ando-2024-cubic-barrier, with Python frontends, solver logs, Rust/C++/CUDA internals, Docker/Windows deployment, Blender/Jupyter workflows, and large contact-rich shell/solid/rod examples. DART should use it to audit API, diagnostics, examples, precision, and GPU performance lessons for PLAN-083, but must not vendor it or expose PPF, ZOZO, server, CUDA, or frontend-specific concepts through public APIs.

  • dojo — evaluate: a Julia implementation and paper/site reference for a differentiable maximal-coordinate variational hard-contact NCP/IPM solver. PLAN-110 uses it as method evidence for a possible second solver family, but DART must first complete the Dojo gap audit and de-risking spike.

Design-doc links for these comparisons live in simulation_cpp_api.md and simulation_python_api.md.

Terminology Grounding

The DART 7 simulation world’s naming decisions are grounded in the references above rather than any single engine:

  • Multibody (one word) — shabana-mbs, featherstone-2008, drake.

  • Spherical joint (not “ball”) — lynch-park-2017, pinocchio, rbdl, drake.

  • Floating joint (not “free”) — urdf, rbdl, drake.

  • RigidBody (two words) — bullet, drake, PhysX; “rigid body” is two words unlike one-word “multibody”.

Maintenance

This catalog is maintained with the dart-references skill (.claude/skills/dart-references/SKILL.md), which documents the entry schema, the status/verdict workflow, and how to keep entries in sync with the design docs and code. Keep citations accurate, prefer official sources, and update an entry’s status/verdict when the DART 7 simulation world’s relationship to a reference changes (for example, when a planned algorithm becomes implemented).