GCOP
1.0
|
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