Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

ReactionMover.h

Go to the documentation of this file.
00001 // ReactionMover.h: interface for the CReactionMover class.
00002 //
00004 
00005 #include "ReactionNetwork.h"
00006 #include <fstream>
00007 
00008 #if !defined(AFX_REACTIONMOVER_H__9391CECD_F146_11D3_8680_00A0C9B3BAB6__INCLUDED_)
00009 #define AFX_REACTIONMOVER_H__9391CECD_F146_11D3_8680_00A0C9B3BAB6__INCLUDED_
00010 
00011 #if _MSC_VER > 1000
00012 #pragma once
00013 #endif // _MSC_VER > 1000
00014 
00015 class CReactionMover : public Subject
00016 {
00017 public:
00018         CReactionMover();
00019         CReactionMover(int seed, double frequency);
00020         virtual ~CReactionMover();
00021         virtual void Move(double xInitial, double xFinal, ReactionNetwork *pReactionNetwork) = 0;
00022         int GetTimeCount() const {return m_iCount;}
00023         int GetSeed() const {return m_iSeed;}
00024         ReactionNetwork *GetReactionNetwork() {return m_pReactionNetwork;}
00025         bool MoveTimeIsZero(double deltaTime);
00026         virtual void SetMinStepSize(double size) {m_dMinStepSize = size;}
00027         virtual double GetMinStepSize() const {return m_dMinStepSize;}
00028         virtual void SetMaxStepSize(double size) {m_dMaxStepSize = size;}
00029         virtual double GetMaxStepSize() const {return m_dMaxStepSize;}
00030         virtual void IncrementTotalSteps() {m_iTotalStepsTaken++;}
00031         virtual int GetTotalStepsTaken() const {return m_iTotalStepsTaken;}
00032         virtual void ResetStepStatistics(double interval);
00033 protected:
00034         double m_dTime;
00035         int m_iCount;
00036         int m_iSeed;
00037         double m_dFrequency;
00038         ReactionNetwork *m_pReactionNetwork;
00039         // smallest stepsize used; may only be useful for var. step diff. eq. movers
00040         double m_dMinStepSize;
00041         // largest stepsize used; may only be useful for var. step diff. eq. movers
00042         double m_dMaxStepSize;
00043         // total number of steps taken; may only be useful for var. step diff. eq. movers
00044         int m_iTotalStepsTaken;
00045 
00046 };
00047 
00048 #endif // !defined(AFX_REACTIONMOVER_H__9391CECD_F146_11D3_8680_00A0C9B3BAB6__INCLUDED_)

Generated on Mon Nov 3 09:38:11 2003 by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002