NFcore::Observable Class Reference

#include <observable.hh>

Inheritance diagram for NFcore::Observable:

NFcore::MoleculesObservable NFcore::SpeciesObservable

List of all members.


Detailed Description

Tracks the counts of predefined observables in the simulation.

Observables keep track of the counts of specific Molecule configurations in the system. Observables use TemplateMolecules to determine if a Molecule configuration should be counted as an Observable. Users have the choice of computing Observables on the fly so that they are incrementally updated after each event or recomputing all Observables before each output step.

Author:
Michael Sneddon

Public Member Functions

 Observable (string name)
virtual ~Observable ()
virtual Observableclone ()=0
void add ()
void straightAdd ()
void subtract ()
void straightSubtract ()
void clear ()
int getCount () const
string getName () const
int getType () const
void getTemplateMoleculeList (int &n_templates, TemplateMolecule **&tmList)
void addReferenceToMyself (mu::Parser *p)
void addReferenceToMyself (string referenceName, mu::Parser *p)
void addDependentRxn (ReactionClass *r)
virtual int isObservable (Molecule *m) const =0
virtual int isObservable (Complex *c) const =0

Static Public Attributes

static const int NO_RELATION = -1
static const int EQUALS = 0
static const int NOT_EQUALS = 1
static const int GREATER_THAN = 2
static const int LESS_THAN = 3
static const int GREATOR_OR_EQUAL_TO = 4
static const int LESS_THAN_OR_EQUAL_TO = 5
static const int NO_TYPE = 0
static const int MOLECULES = 1
static const int SPECIES = 2

Protected Attributes

string obsName
int type
double count
int n_templates
TemplateMolecule ** templateMolecules
int n_dependentRxns
ReactionClass ** dependentRxns

Constructor & Destructor Documentation

Observable::Observable ( string  name  ) 

Constructor that creates a basic Observable which monitors the given TemplateMolecule and can be referenced via the alias name

Deconstructor that doesn't do too much. It doesn't free the memory associated with the TemplateMolecule because the MoleculeType class handles that.

Observable::~Observable (  )  [virtual]


Member Function Documentation

virtual Observable* NFcore::Observable::clone (  )  [pure virtual]

Implemented in NFcore::MoleculesObservable, and NFcore::SpeciesObservable.

void Observable::add (  ) 

void Observable::straightAdd (  ) 

void Observable::subtract (  ) 

void Observable::straightSubtract (  ) 

void NFcore::Observable::clear (  )  [inline]

int NFcore::Observable::getCount (  )  const [inline]

string NFcore::Observable::getName (  )  const [inline]

int NFcore::Observable::getType (  )  const [inline]

void Observable::getTemplateMoleculeList ( int &  n_templates,
TemplateMolecule **&  tmList 
)

void Observable::addReferenceToMyself ( mu::Parser *  p  ) 

void Observable::addReferenceToMyself ( string  referenceName,
mu::Parser *  p 
)

void Observable::addDependentRxn ( ReactionClass r  ) 

virtual int NFcore::Observable::isObservable ( Molecule m  )  const [pure virtual]

Implemented in NFcore::MoleculesObservable, and NFcore::SpeciesObservable.

virtual int NFcore::Observable::isObservable ( Complex c  )  const [pure virtual]

Implemented in NFcore::MoleculesObservable, and NFcore::SpeciesObservable.


Member Data Documentation

const int NFcore::Observable::NO_RELATION = -1 [static]

const int NFcore::Observable::EQUALS = 0 [static]

const int NFcore::Observable::NOT_EQUALS = 1 [static]

const int NFcore::Observable::GREATER_THAN = 2 [static]

const int NFcore::Observable::LESS_THAN = 3 [static]

const int NFcore::Observable::GREATOR_OR_EQUAL_TO = 4 [static]

const int NFcore::Observable::LESS_THAN_OR_EQUAL_TO = 5 [static]

const int NFcore::Observable::NO_TYPE = 0 [static]

const int NFcore::Observable::MOLECULES = 1 [static]

const int NFcore::Observable::SPECIES = 2 [static]

string NFcore::Observable::obsName [protected]

int NFcore::Observable::type [protected]

double NFcore::Observable::count [protected]

int NFcore::Observable::n_templates [protected]

TemplateMolecule** NFcore::Observable::templateMolecules [protected]

int NFcore::Observable::n_dependentRxns [protected]

ReactionClass** NFcore::Observable::dependentRxns [protected]


The documentation for this class was generated from the following files:
Generated on Thu Dec 9 11:02:48 2010 for NFsim by  doxygen 1.5.4