MOOSE - Multiscale Object Oriented Simulation Environment
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Pool.h
Go to the documentation of this file.
1 /**********************************************************************
2 ** This program is part of 'MOOSE', the
3 ** Messaging Object Oriented Simulation Environment.
4 ** Copyright (C) 2003-2010 Upinder S. Bhalla. and NCBS
5 ** It is made available under the terms of the
6 ** GNU Lesser General Public License version 2.1
7 ** See the file COPYING.LIB for the full notice.
8 **********************************************************************/
9 
10 #ifndef _POOL_H
11 #define _POOL_H
12 #include "PoolBase.h"
19 class Pool: public PoolBase
20 {
21 public:
22  Pool();
23  ~Pool();
24 
26  // Field assignment stuff. All override virtual funcs in the Pool
27  // base class.
29 
30  void vSetN( const Eref& e, double v );
31  double vGetN( const Eref& e ) const;
32  void vSetNinit( const Eref& e, double v );
33  double vGetNinit( const Eref& e ) const;
34  void vSetDiffConst( const Eref& e, double v );
35  double vGetDiffConst( const Eref& e ) const;
36  void vSetMotorConst( const Eref& e, double v );
37  double vGetMotorConst( const Eref& e ) const;
38 
39  void vSetConc( const Eref& e, double v );
40  double vGetConc( const Eref& e ) const;
41  void vSetConcInit( const Eref& e, double v );
42  // double vGetConcInit( const Eref& e ) const;
43 
50  void vSetVolume( const Eref& e, double v );
51  double vGetVolume( const Eref& e ) const;
52 
53  void vSetSpecies( const Eref& e, SpeciesId v );
54  SpeciesId vGetSpecies( const Eref& e ) const;
55 
56 
60  void vSetIsBuffered( const Eref& e, bool v );
61  bool vGetIsBuffered( const Eref& e) const;
62 
64  // Dest funcs. These too override virtual funcs in the Pool base
65  // class.
67 
68  void vHandleMolWt( const Eref& e, double v );
69  void vProcess( const Eref& e, ProcPtr p );
70  void vReinit( const Eref& e, ProcPtr p );
71  void vReac( double A, double B );
72  void vIncrement( double val );
73  void vDecrement( double val );
74  void vnIn( double val );
75 
77  // Novel Dest funcs not present in Pool base class.
79 
81  static const Cinfo* initCinfo();
82 private:
83  double n_;
84  double nInit_;
85  double diffConst_;
86  double motorConst_;
87  double A_;
88  double B_;
89 
94  unsigned int species_;
95 };
96 
97 #endif // _POOL_H
void vSetConc(const Eref &e, double v)
Definition: Pool.cpp:186
bool vGetIsBuffered(const Eref &e) const
Definition: Pool.cpp:83
void vSetN(const Eref &e, double v)
Definition: Pool.cpp:165
double vGetMotorConst(const Eref &e) const
Definition: Pool.cpp:217
void vReinit(const Eref &e, ProcPtr p)
Definition: Pool.cpp:119
void vnIn(double val)
Definition: Pool.cpp:149
void vSetSpecies(const Eref &e, SpeciesId v)
Definition: Pool.cpp:232
double B_
Internal state variables, used only in explict mode.
Definition: Pool.h:88
void vSetMotorConst(const Eref &e, double v)
Dummy MotorConst field for most Pool subclasses.
Definition: Pool.cpp:212
void vSetDiffConst(const Eref &e, double v)
Definition: Pool.cpp:202
void vIncrement(double val)
Definition: Pool.cpp:133
void vProcess(const Eref &e, ProcPtr p)
Definition: Pool.cpp:97
double nInit_
Number of molecules in pool.
Definition: Pool.h:84
void vReac(double A, double B)
Definition: Pool.cpp:127
Pool()
Definition: Pool.cpp:52
double vGetVolume(const Eref &e) const
Definition: Pool.cpp:227
double vGetConc(const Eref &e) const
Definition: Pool.cpp:192
void vSetIsBuffered(const Eref &e, bool v)
Definition: Pool.cpp:68
static const Cinfo * initCinfo()
Definition: Pool.cpp:18
Definition: Pool.h:19
~Pool()
Definition: Pool.cpp:57
void vHandleMolWt(const Eref &e, double v)
Definition: Pool.cpp:156
Definition: Eref.h:26
void vSetConcInit(const Eref &e, double v)
Definition: Pool.cpp:197
double vGetNinit(const Eref &e) const
Definition: Pool.cpp:180
double n_
Definition: Pool.h:83
unsigned int SpeciesId
Definition: PoolBase.h:18
double vGetDiffConst(const Eref &e) const
Definition: Pool.cpp:207
void vSetNinit(const Eref &e, double v)
Definition: Pool.cpp:175
SpeciesId vGetSpecies(const Eref &e) const
Definition: Pool.cpp:237
double diffConst_
initial number of molecules.
Definition: Pool.h:85
double motorConst_
Diffusion constant.
Definition: Pool.h:86
double vGetN(const Eref &e) const
Definition: Pool.cpp:170
void vSetVolume(const Eref &e, double v)
Definition: Pool.cpp:222
double A_
Motor transport constant.
Definition: Pool.h:87
unsigned int species_
Definition: Pool.h:94
Definition: Cinfo.h:18
void vDecrement(double val)
Definition: Pool.cpp:141