I am utilitizing rotation vectors (or SORA rotations if you care to call them that) as a means of splitting 3D rotations into three scalar orthogonal variables which are impervious to gimbal lock. (see SO(3))(adsbygoogle = window.adsbygoogle || []).push({});

These variables are exposed to a least-squares optimization algorithm which requires partial derivatives for each function and variable in the system. My optimized functions are all based on object positions, so the derivative I'm computing based on these variables takes the form of a "delta" transformation, of which one component is a rotation vector.

I know I need a functionD(a, b)which defines a "delta" rotation vector mapping from the rotation space of rotation vectorato that of rotation vectorb. One way to derive it is to convertaandbto rotation quaternionsqaandqb, and convertqaback to a rotation vector. This seems roundabout, but perhaps I'm foolish to dismiss it.^{-1}qb

Given a (hopefully) simplifiedD, the current rotationrand an axis-vectoraI need to compute the limit:

lim_{x→0}D(r, r + ax) / x

I'm interested in these limits fora = (1, 0, 0),a = (0, 1, 0)anda = (0, 0, 1).

The application area is physics simulation and kinematics solving; I'm trying to find the optimal rotation for an object based on various potentially conflicting goals.

Thanks in advance for any help.

**Physics Forums | Science Articles, Homework Help, Discussion**

Dismiss Notice

Join Physics Forums Today!

The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

# Partial derivatives of 3D rotation vectors

**Physics Forums | Science Articles, Homework Help, Discussion**