Spatial vectors are 6D vectors that simplify the task of describing, analysing, or calculating rigid-body dynamics. This page contains materials to help you learn spatial vector algebra, and software to help you perform dynamics calculations.

- A Beginner's Guide to 6-D Vectors (Part 1) and A Beginner's Guide to 6-D Vectors (Part 2) (both 2010). This two-part tutorial leads the reader gently through the basic concepts of spatial vectors, contrasting them with 3-D vectors, and explains how to implement the recursive Newton-Euler, composite-rigid-body and articulated-body algorithms in Matlab code.

- Robot Dynamics Algorithms (1987). [link to Amazon]. This is the original book on dynamics algorithms and spatial vectors. Although it is still worth reading, it has been superceded by the book below. The treatment of spatial vectors in this book is a little different from the modern treatment.
- Rigid Body Dynamics Algorithms (2008). [link to Amazon]. This is the new book on dynamics algorithms and spatial vectors. The accompanying software is listed below.
- Springer Handbook of Robotics (2008). [link to Amazon]. Chapter 2 in this handbook (co-authored by myself and Prof. David Orin) contains a concise description of spatial vectors and the most important algorithms for robot dynamics.
- Robot Dynamics: Equations and Algorithms (2000). This is a survey paper on robot dynamics. It contains a brief description of spatial vector algebra and the most important algorithms.
- Plücker Basis Vectors (2006). This paper discusses Plücker coordinates, Plücker basis vectors and rigid-body acceleration using a mathematical tool called a basis mapping.

- a 2-body example using 3D vectors (shows how much algebra is required to solve a simple problem the traditional way)
- the same 2-body example using spatial vectors (much easier than using 3D vectors)
- a one-hour seminar on spatial vectors (predates the short course)
- link to the Summer Screws web site

- current matlab software (version 1, Jan 2008). This software implements most of the algorithms in Rigid Body Dynamics Algorithms. It reportedly also works on GNU Octave (version 3.0.2).
- source code (zip file)
- documentation (lets you see the source code as well)
- old software (undocumented matlab code, pre 2008):

- Python library (author: Ralf Grosse-Kunstleve at LBNL CCI)
- C++ library (author: Martin Felis at the University of Heidelberg)

Last modified: Dec 2011

Author: Roy Featherstone