Integrator.hpp

Go to the documentation of this file.
00001 #pragma ident "$Id: Integrator.hpp 2457 2010-08-18 14:20:12Z coandrei $"
00002 
00011 #ifndef GPSTK_INTEGRATOR_HPP
00012 #define GPSTK_INTEGRATOR_HPP
00013 
00014 //============================================================================
00015 //
00016 //  This file is part of GPSTk, the GPS Toolkit.
00017 //
00018 //  The GPSTk is free software; you can redistribute it and/or modify
00019 //  it under the terms of the GNU Lesser General Public License as published
00020 //  by the Free Software Foundation; either version 2.1 of the License, or
00021 //  any later version.
00022 //
00023 //  The GPSTk is distributed in the hope that it will be useful,
00024 //  but WITHOUT ANY WARRANTY; without even the implied warranty of
00025 //  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00026 //  GNU Lesser General Public License for more details.
00027 //
00028 //  You should have received a copy of the GNU Lesser General Public
00029 //  License along with GPSTk; if not, write to the Free Software Foundation,
00030 //  Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00031 //
00032 //  Wei Yan - Chinese Academy of Sciences . 2009, 2010
00033 //
00034 //============================================================================
00035 
00036 
00037 #include "Vector.hpp"
00038 #include "Matrix.hpp"
00039 #include "EquationOfMotion.hpp"
00040 
00041 namespace gpstk
00042 {
00045 
00049    class Integrator
00050    {
00051    public:
00052 
00054       Integrator() : stepSize(1.0)
00055       {}
00056 
00057 
00059       virtual ~Integrator()
00060       {}
00061 
00062 
00070       virtual Vector<double> integrateTo(const double&           t, 
00071                                          const Vector<double>&   y, 
00072                                          EquationOfMotion*       peom,
00073                                          const double&           tf ) = 0;
00074 
00076       double getStepSize() const
00077       { return stepSize; }
00078 
00079 
00081       void setStepSize(const double& step)
00082       { stepSize = step; }
00083 
00084    protected:
00085 
00087       double stepSize;
00088 
00089    }; // End of class 'Integrator'
00090 
00091       // @}
00092 
00093 }  // End of namespace 'gpstk'
00094 
00095 #endif  // GPSTK_INTEGRATOR_HPP

Generated on Tue May 22 03:30:58 2012 for GPS ToolKit Software Library by  doxygen 1.3.9.1