ODESolverEuler< T, T_SET > Class Template Reference

#include <TAPsODESolvers.hpp>

Inheritance diagram for ODESolverEuler< T, T_SET >:

Inheritance graph
[legend]
Collaboration diagram for ODESolverEuler< T, T_SET >:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 ODESolverEuler ()
virtual void SetSize (int vectorSize)
virtual void Solve (VectorSet< T_SET > &x0, VectorSet< T_SET > &xEnd, T t0, T t1, DerivFunc dxdt, void *userData)
virtual ~ODESolverEuler ()

Private Attributes

VectorSet< T_SET > vStart


Detailed Description

template<typename T, typename T_SET = T>
class ODESolverEuler< T, T_SET >

Definition at line 111 of file TAPsODESolvers.hpp.


Constructor & Destructor Documentation

template<typename T, typename T_SET>
ODESolverEuler< T, T_SET >::ODESolverEuler (  )  [inline]

Definition at line 46 of file TAPsODESolvers.cpp.

00046 : ODESolver<T, T_SET>() {}

template<typename T, typename T_SET>
ODESolverEuler< T, T_SET >::~ODESolverEuler (  )  [inline, virtual]

Definition at line 49 of file TAPsODESolvers.cpp.

00049 {}


Member Function Documentation

template<typename T, typename T_SET>
void ODESolverEuler< T, T_SET >::SetSize ( int  vectorSize  )  [inline, virtual]

Implements ODESolver< T, T_SET >.

Definition at line 52 of file TAPsODESolvers.cpp.

00053 { vStart.resize( vectorSize ); }

template<typename T, typename T_SET>
void ODESolverEuler< T, T_SET >::Solve ( VectorSet< T_SET > &  x0,
VectorSet< T_SET > &  xEnd,
t0,
t1,
DerivFunc  dxdt,
void *  userData 
) [inline, virtual]

Definition at line 56 of file TAPsODESolvers.cpp.

00057                                       : x(t_0) an initial state vector
00058         VectorSet<T_SET> &xEnd, // o/p: x(t_1) an end state vector
00059         T t0, T t1,             // i/p: starting and ending times
00060         DerivFunc dxdt,         // i/p: a derivative function
00061         void *userData          // o/p: array of user data
00062 )
00063 {
00064     bool restartNotRequired = true;
00065     T h = t1 - t0;
00066     // Euler's method
00067     restartNotRequired = dxdt( t0, x0, vStart, userData );
00068     assert( restartNotRequired );
00069     // Update the state
00070     xEnd = x0 + h * vStart;
00071 }


Member Data Documentation

template<typename T, typename T_SET = T>
VectorSet<T_SET> ODESolverEuler< T, T_SET >::vStart [private]

Definition at line 138 of file TAPsODESolvers.hpp.


The documentation for this class was generated from the following files:

Generated on Mon Oct 13 11:45:40 2008 for TAPs by  doxygen 1.5.6