00001
00002
00004
00005 #if !defined(AFX_RUNGEKUTTA2_H__C116134F_0C67_4F2B_88B4_0454D02A480F__INCLUDED_)
00006 #define AFX_RUNGEKUTTA2_H__C116134F_0C67_4F2B_88B4_0454D02A480F__INCLUDED_
00007
00008 #if _MSC_VER > 1000
00009 #pragma once
00010 #endif // _MSC_VER > 1000
00011
00012 #include "Integrator.h"
00013
00015
00016 class CRungeKutta2Op : public CIntegrator
00017 {
00018 public:
00020 virtual void SetDt(float dt);
00022 CRungeKutta2Op::CRungeKutta2Op(CVectorField *vectorField,CInterpolator *interpolator,float dt);
00023 CRungeKutta2Op();
00024 virtual ~CRungeKutta2Op();
00026 virtual CSamplePoint *ComputeNext(CSamplePoint *lastPoint);
00027 private:
00028 CPoint3D m_Pos;
00029 CSamplePoint m_InterPoint;
00030
00031 float m_DtDiv2;
00032 };
00033
00034 #endif // !defined(AFX_RUNGEKUTTA2_H__C116134F_0C67_4F2B_88B4_0454D02A480F__INCLUDED_)