MOOSE - Multiscale Object Oriented Simulation Environment
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
ZombieReac Class Reference

#include <ZombieReac.h>

+ Inheritance diagram for ZombieReac:
+ Collaboration diagram for ZombieReac:

Public Member Functions

void setSolver (Id solver, Id orig)
 Assign solver info. More...
 
double vGetConcKb (const Eref &e) const
 
double vGetConcKf (const Eref &e) const
 
double vGetNumKb (const Eref &e) const
 
double vGetNumKf (const Eref &e) const
 
void vSetConcKb (const Eref &e, double v)
 
void vSetConcKf (const Eref &e, double v)
 
void vSetNumKb (const Eref &e, double v)
 
void vSetNumKf (const Eref &e, double v)
 
 ZombieReac ()
 
 ~ZombieReac ()
 
- Public Member Functions inherited from ReacBase
double getConcKb (const Eref &e) const
 get Kb in concentration units More...
 
double getConcKf (const Eref &e) const
 get Kf in concentration units More...
 
double getNumKb (const Eref &e) const
 
double getNumKf (const Eref &e) const
 
unsigned int getNumPrd (const Eref &e) const
 Get number of products. More...
 
unsigned int getNumSub (const Eref &e) const
 Get number of substrates. More...
 
void prd (double v)
 
void process (const Eref &e, ProcPtr p)
 
 ReacBase ()
 
void reinit (const Eref &e, ProcPtr p)
 
void remesh (const Eref &e)
 
void setConcKb (const Eref &e, double v)
 set Kb in concentration units More...
 
void setConcKf (const Eref &e, double v)
 set Kf in concentration units More...
 
void setNumKb (const Eref &e, double v)
 
void setNumKf (const Eref &e, double v)
 
void sub (double v)
 
virtual void vPrd (double v)
 
virtual void vProcess (const Eref &e, ProcPtr p)
 
virtual void vReinit (const Eref &e, ProcPtr p)
 
virtual void vRemesh (const Eref &e)
 
virtual void vSub (double v)
 
virtual ~ReacBase ()
 

Static Public Member Functions

static const CinfoinitCinfo ()
 
- Static Public Member Functions inherited from ReacBase
static const CinfoinitCinfo ()
 
static void zombify (Element *original, const Cinfo *zClass, Id solver)
 

Private Attributes

Stoichstoich_
 

Additional Inherited Members

- Protected Attributes inherited from ReacBase
double concKb_
 
double concKf_
 

Detailed Description

Definition at line 13 of file ZombieReac.h.

Constructor & Destructor Documentation

ZombieReac::ZombieReac ( )

Definition at line 65 of file ZombieReac.cpp.

66  : stoich_( 0 )
67 {;}
Stoich * stoich_
Definition: ZombieReac.h:49
ZombieReac::~ZombieReac ( )

Definition at line 69 of file ZombieReac.cpp.

70 {;}

Member Function Documentation

const Cinfo * ZombieReac::initCinfo ( )
static

Definition at line 28 of file ZombieReac.cpp.

References ReacBase::initCinfo(), and zombieReacCinfo.

29 {
31  // Field Definitions: All inherited.
34  // MsgDest Definitions: All inherited.
37  // SharedMsg Definitions: All inherited
39 
40  static Dinfo< ZombieReac > dinfo( true );
41  static Cinfo zombieReacCinfo (
42  "ZombieReac",
44  0,
45  0,
46  &dinfo
47  );
48 
49  return &zombieReacCinfo;
50 }
Definition: Dinfo.h:60
static const Cinfo * zombieReacCinfo
Definition: ZombieReac.cpp:55
static const Cinfo * initCinfo()
Definition: ReacBase.cpp:33
Definition: Cinfo.h:18

+ Here is the call graph for this function:

void ZombieReac::setSolver ( Id  solver,
Id  orig 
)
virtual

Assign solver info.

Reimplemented from ReacBase.

Definition at line 151 of file ZombieReac.cpp.

References Element::cinfo(), Eref::data(), Id::element(), Id::eref(), Element::getNeighbors(), Stoich::installReaction(), Cinfo::isA(), ReacBase::prd(), stoich_, and ReacBase::sub().

152 {
153  assert( stoich != Id() );
154 
155  vector< Id > sub;
156  vector< Id > prd;
157  orig.element()->getNeighbors( sub, subOut );
158  orig.element()->getNeighbors( prd, prdOut );
159 
160  assert( stoich.element()->cinfo()->isA( "Stoich" ) );
161  stoich_ = reinterpret_cast< Stoich* >( stoich.eref().data( ) );
162  stoich_->installReaction( orig, sub, prd );
163 }
void sub(double v)
Definition: ReacBase.cpp:177
Element * element() const
Synonym for Id::operator()()
Definition: Id.cpp:113
void prd(double v)
Definition: ReacBase.cpp:182
void installReaction(Id reacId, const vector< Id > &subs, const vector< Id > &prds)
Definition: Stoich.cpp:1525
Definition: Stoich.h:49
Stoich * stoich_
Definition: ZombieReac.h:49
static const SrcFinfo2< double, double > * prdOut
Definition: ZombieReac.cpp:61
Definition: Id.h:17
unsigned int getNeighbors(vector< Id > &ret, const Finfo *finfo) const
Definition: Element.cpp:949
static const SrcFinfo2< double, double > * subOut
Definition: ZombieReac.cpp:57

+ Here is the call graph for this function:

double ZombieReac::vGetConcKb ( const Eref e) const
virtual

Implements ReacBase.

Definition at line 138 of file ZombieReac.cpp.

References ReacBase::concKb_.

139 {
140  // double volScale = convertConcToNumRateUsingMesh( e, prdOut, 0 );
141  // double kb = stoich_->getReacNumKb( e );
142  // return kb / volScale;
143  return concKb_;
144 }
double concKb_
Definition: ReacBase.h:87
double ZombieReac::vGetConcKf ( const Eref e) const
virtual

Implements ReacBase.

Definition at line 127 of file ZombieReac.cpp.

References ReacBase::concKf_.

128 {
129  return concKf_;
130 }
double concKf_
Definition: ReacBase.h:86
double ZombieReac::vGetNumKb ( const Eref e) const
virtual

Implements ReacBase.

Definition at line 115 of file ZombieReac.cpp.

References ReacBase::concKb_, and convertConcToNumRateUsingMesh().

116 {
117  double volScale = convertConcToNumRateUsingMesh( e, prdOut, 0 );
118  return concKb_ / volScale;
119 }
double concKb_
Definition: ReacBase.h:87
static const SrcFinfo2< double, double > * prdOut
Definition: ZombieReac.cpp:61
double convertConcToNumRateUsingMesh(const Eref &e, const SrcFinfo *pools, bool doPartialConversion)

+ Here is the call graph for this function:

double ZombieReac::vGetNumKf ( const Eref e) const
virtual

Implements ReacBase.

Definition at line 97 of file ZombieReac.cpp.

References ReacBase::concKf_, and convertConcToNumRateUsingMesh().

98 {
99  // Return value for voxel 0. Conceivably I might want to use the
100  // DataId part to specify which voxel to use, but that isn't in the
101  // current definition for Reacs as being a single entity for the entire
102  // compartment.
103  double volScale = convertConcToNumRateUsingMesh( e, subOut, 0 );
104  return concKf_ / volScale;
105 }
double concKf_
Definition: ReacBase.h:86
double convertConcToNumRateUsingMesh(const Eref &e, const SrcFinfo *pools, bool doPartialConversion)
static const SrcFinfo2< double, double > * subOut
Definition: ZombieReac.cpp:57

+ Here is the call graph for this function:

void ZombieReac::vSetConcKb ( const Eref e,
double  v 
)
virtual

Implements ReacBase.

Definition at line 132 of file ZombieReac.cpp.

References ReacBase::concKb_, Stoich::setReacKb(), and stoich_.

133 {
134  concKb_ = v;
135  stoich_->setReacKb( e, v );
136 }
double concKb_
Definition: ReacBase.h:87
void setReacKb(const Eref &e, double v) const
Definition: Stoich.cpp:1874
Stoich * stoich_
Definition: ZombieReac.h:49

+ Here is the call graph for this function:

void ZombieReac::vSetConcKf ( const Eref e,
double  v 
)
virtual

Implements ReacBase.

Definition at line 121 of file ZombieReac.cpp.

References ReacBase::concKf_, Stoich::setReacKf(), and stoich_.

122 {
123  concKf_ = v;
124  stoich_->setReacKf( e, v );
125 }
double concKf_
Definition: ReacBase.h:86
void setReacKf(const Eref &e, double v) const
Definition: Stoich.cpp:1860
Stoich * stoich_
Definition: ZombieReac.h:49

+ Here is the call graph for this function:

void ZombieReac::vSetNumKb ( const Eref e,
double  v 
)
virtual

Implements ReacBase.

Definition at line 108 of file ZombieReac.cpp.

References ReacBase::concKb_, convertConcToNumRateUsingMesh(), Stoich::setReacKb(), and stoich_.

109 {
110  double volScale = convertConcToNumRateUsingMesh( e, prdOut, 0 );
111  concKb_ = v * volScale;
112  stoich_->setReacKb( e, concKb_ );
113 }
double concKb_
Definition: ReacBase.h:87
void setReacKb(const Eref &e, double v) const
Definition: Stoich.cpp:1874
Stoich * stoich_
Definition: ZombieReac.h:49
static const SrcFinfo2< double, double > * prdOut
Definition: ZombieReac.cpp:61
double convertConcToNumRateUsingMesh(const Eref &e, const SrcFinfo *pools, bool doPartialConversion)

+ Here is the call graph for this function:

void ZombieReac::vSetNumKf ( const Eref e,
double  v 
)
virtual

Implements ReacBase.

Definition at line 90 of file ZombieReac.cpp.

References ReacBase::concKf_, convertConcToNumRateUsingMesh(), Stoich::setReacKf(), and stoich_.

91 {
92  double volScale = convertConcToNumRateUsingMesh( e, subOut, 0 );
93  concKf_ = v * volScale;
94  stoich_->setReacKf( e, concKf_ );
95 }
double concKf_
Definition: ReacBase.h:86
void setReacKf(const Eref &e, double v) const
Definition: Stoich.cpp:1860
Stoich * stoich_
Definition: ZombieReac.h:49
double convertConcToNumRateUsingMesh(const Eref &e, const SrcFinfo *pools, bool doPartialConversion)
static const SrcFinfo2< double, double > * subOut
Definition: ZombieReac.cpp:57

+ Here is the call graph for this function:

Member Data Documentation

Stoich* ZombieReac::stoich_
private

Definition at line 49 of file ZombieReac.h.

Referenced by setSolver(), vSetConcKb(), vSetConcKf(), vSetNumKb(), and vSetNumKf().


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