Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages | Examples

QuaternionKinematics.h

Go to the documentation of this file.
00001 ////////////////////////////////////////////////////////////////////////////////////////////////
00002 /*! \file QuaternionKinematics.h
00003 *  \brief Rigid body kinematic equations of attitude motion in quaternion form.
00004 *  \author $Author: jayhawk_hokie $
00005 *  \version $Revision: 1.2 $
00006 *  \date    $Date: 2005/06/10 12:53:28 $
00007 //////////////////////////////////////////////////////////////////////////////////////////////////
00008 * \todo document the QuaternionKinematics class
00009 */
00010 //////////////////////////////////////////////////////////////////////////////////////////////////
00011 
00012 #ifndef QUATERNIONKINEMATICS_H
00013 #define QUATERNIONKINEMATICS_H
00014 #include <rotation/Rotation.h>
00015 
00016 static Vector QuaternionKinematics(const double &_time, const Vector &_qIn, const Matrix &_wIn)
00017 {
00018     Matrix qtemp(4,3); 
00019     qtemp(_(VectorIndexBase+0,VectorIndexBase+2),_(VectorIndexBase+0,VectorIndexBase+2)) = skew(_qIn(_(VectorIndexBase+0,VectorIndexBase+2))) + _qIn(VectorIndexBase+3) * eye(3);
00020     qtemp(VectorIndexBase+3, _(VectorIndexBase+0,VectorIndexBase+2)) = -(~_qIn(_(VectorIndexBase+0,VectorIndexBase+2)));
00021 
00022     qtemp.initialize(0.5 * qtemp * _wIn);
00023     Vector qDot(QUATERNION_SIZE);qDot(_) = qtemp(_,MatrixIndexBase);
00024     return (Vector)qDot;
00025 }
00026 
00027 #endif
00028 // Do not change the comments below - they will be added automatically by CVS
00029 /*****************************************************************************
00030 *       $Log: QuaternionKinematics.h,v $
00031 *       Revision 1.2  2005/06/10 12:53:28  jayhawk_hokie
00032 *       Changed header file format to make it easier to link to the spacecraft code by only having to specify dsacss/dep/spacecraft/src (ex. "file.h" changed to <dir/file.h> where dir is a folder in src).
00033 *       
00034 *       Revision 1.1.1.1  2005/04/26 17:40:56  cakinli
00035 *       Adding OpenSESSAME to DSACSS distrib to capture fixed version.
00036 *       
00037 *       Revision 1.2  2003/04/23 16:30:58  nilspace
00038 *       Various bugfixes & uploading of all changed code for new programmers.
00039 *       
00040 *       Revision 1.1  2003/03/25 02:28:20  nilspace
00041 *       initial submission. Needs to be verified.
00042 *
00043 ******************************************************************************/

Generated on Wed Sep 5 12:54:24 2007 for DSACSS Operational Code by  doxygen 1.3.9.1