Eigenvector slew

Summary

In aerospace engineering, especially those areas dealing with spacecraft, the eigenvector slew is a method to calculate a steering correction (called a slew) by rotating the spacecraft around one fixed axis, or a gimbal. This corresponds in general to the fastest and most efficient way to reach the desired target orientation as there is only one acceleration phase and one braking phase for the angular rate. If this fixed axis is not a principal axis a time varying torque must be applied to force the spacecraft to rotate as desired, though. Also the gyroscopic effect of momentum wheels must be compensated for.

That such a rotation exists corresponds precisely to a main result of the mathematical theory of rotation operators, the (only real) eigenvector of the rotation operator corresponding to the desired re-orientation is this axis.

Given the current orientation of the craft, and the desired orientation of the craft in cartesian coordinates, the required axis of rotation and corresponding rotation angle to achieve the new orientation is determined by computing the eigenvector of the rotation operator.

Problem edit

Let

 

be a body fixed reference system for a 3 axis stabilized spacecraft. The initial attitude is given by

 
 
 

One wants to find an axis relative the spacecraft body

 

and a rotation angle   such that after the rotation with the angle   one has that

 
 
 

where

 

are the new target directions.

In vector form this means that

 
 
 

Solution edit

In terms of linear algebra this means that one wants to find an eigenvector with the eigenvalue = 1 for the linear mapping defined by

 
 
 

which relative to the

 

coordinate system has the matrix

 

Because this is the matrix of the rotation operator relative the base vector system   the eigenvalue can be determined with the algorithm described in "Rotation operator (vector space)".

With the notations used here this is:

 
 
 
 
 
 

The rotation angle   is

 

where " " is the polar argument of the vector   corresponding to the function ATAN2(y,x) (or in double precision DATAN2(y,x)) available in for example the programming language FORTRAN.

The resulting   will be in the interval  .

If   then   and the uniquely defined rotation (unit) vector is:

 

Note that

 

is the trace of the matrix defined by the orthogonal linear mapping and that the components of the "eigenvector" are fixed and constant during the rotation, i.e.

 

where   are moving with time   during the slew.

See also edit

References edit