adevs::ode_system< X > Class Template Reference

#include <adevs_hybrid.h>

List of all members.

Public Member Functions

 ode_system (int N_vars, int M_event_funcs)
 Make a system with N state variables and M state event functions.
int numVars () const
 Get the number of state variables.
int numEvents () const
 Get the number of state events.
virtual void init (double *q)=0
 Copy the initial state of the model to q.
virtual void der_func (const double *q, double *dq)=0
 Compute the derivative for state q and put it in dq.
virtual void state_event_func (const double *q, double *z)=0
 Compute the state event functions for state q and put them in z.
virtual double time_event_func (const double *q)=0
 Compute the time event function using state q.
virtual void postStep (const double *q)
virtual void internal_event (double *q, const bool *state_event)=0
 The internal transition function.
virtual void external_event (double *q, double e, const Bag< X > &xb)=0
 The external transition function.
virtual void confluent_event (double *q, const bool *state_event, const Bag< X > &xb)=0
 The confluent transition function.
virtual void output_func (const double *q, const bool *state_event, Bag< X > &yb)=0
 The output function.
virtual void gc_output (Bag< X > &gb)=0
 Garbage collection function. This works just like the Atomic gc_output method.
virtual ~ode_system ()
 Destructor.


Detailed Description

template<typename X>
class adevs::ode_system< X >

This is the base class for all hybrid systems. The init and der_func methods are used to implement the model's continuous dynamics. The other functions are for discrete event dynamics.

Member Function Documentation

template<typename X>
virtual void adevs::ode_system< X >::postStep ( const double *  q  )  [inline, virtual]

This method is invoked immediately following an update of the continuous state variables and prior to the execution of a discrete transition. The main use of this callback is to update algberaic variables. The default implementation does nothing.


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

Generated on Thu Mar 4 17:49:27 2010 for adevs by  doxygen 1.5.8