GCOP  1.0
point3d.h
Go to the documentation of this file.
00001 #ifndef GCOP_POINT3D_H
00002 #define GCOP_POINT3D_H
00003 
00004 #include "system.h"
00005 #include "point3dmanifold.h"
00006 #include <limits>
00007 #include <iostream>
00008 #include <utility>
00009 
00010 namespace gcop {
00011   
00012   using namespace std;
00013   using namespace Eigen;
00014   
00015   typedef Matrix<double, 6, 1> Vector6d;
00016   typedef Matrix<double, 6, 3> Matrix63d;
00017   typedef Matrix<double, 6, 6> Matrix6d;
00018   typedef Matrix<double, 6, Dynamic> Matrix6Xd;
00019   
00025   class Point3d : public System<Point3dState, 6, 3> {        
00026   public:
00027   
00028   Point3d();
00029   
00030   virtual ~Point3d();
00031   
00032   double Step(Point3dState &xb, double t, const Point3dState &xa, 
00033               const Vector3d &u, double h, const VectorXd *p = 0,
00034               Matrix6d *A = 0, Matrix63d *B = 0, Matrix6Xd *C = 0);
00035   
00036   bool Noise(Matrix6d &Q, double t, const Point3dState &x, const Vector3d &u, 
00037              double dt, const VectorXd *p = 0);
00038   
00039   double sa; 
00040 
00041   };  
00042 }
00043 
00044 #endif