GCOP
1.0
|
00001 #ifndef GCOP_GUNICYCLE_H 00002 #define GCOP_GUNICYCLE_H 00003 00004 #include "system.h" 00005 #include <utility> 00006 00007 namespace gcop { 00008 00009 using namespace std; 00010 using namespace Eigen; 00011 00012 typedef Matrix<double, 5, 1> Vector5d; 00013 typedef Matrix<double, 5, 5> Matrix5d; 00014 typedef Matrix<double, 5, 2> Matrix52d; 00015 typedef Matrix<double, 5, Dynamic> Matrix5Xd; 00016 00017 typedef pair<Matrix3d, Vector2d> M3V2d; 00018 00031 class Gunicycle : public System<M3V2d, 5, 2> { 00032 public: 00033 Gunicycle(); 00034 00035 double Step(M3V2d &xb, double t, const M3V2d &xa, 00036 const Vector2d &u, double h, const VectorXd *p, 00037 Matrix5d *A = 0, Matrix52d *B = 0, Matrix5Xd *C = 0); 00038 00039 double dx; 00040 double dy; 00041 }; 00042 } 00043 00044 00045 #endif