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

#include <ZombieCaConc.h>

+ Inheritance diagram for ZombieCaConc:
+ Collaboration diagram for ZombieCaConc:

Public Member Functions

void vCurrent (const Eref &e, double I)
 
void vCurrentFraction (const Eref &e, double I, double fraction)
 
void vDecrease (const Eref &e, double I)
 
double vGetB (const Eref &e) const
 
double vGetCa (const Eref &e) const
 
double vGetCaBasal (const Eref &e) const
 
double vGetCeiling (const Eref &e) const
 
double vGetFloor (const Eref &e) const
 
double vGetTau (const Eref &e) const
 
void vIncrease (const Eref &e, double I)
 
void vProcess (const Eref &e, ProcPtr info)
 
void vReinit (const Eref &e, ProcPtr info)
 
void vSetB (const Eref &e, double val)
 
void vSetCa (const Eref &e, double val)
 
void vSetCaBasal (const Eref &e, double val)
 
void vSetCeiling (const Eref &e, double val)
 
void vSetFloor (const Eref &e, double val)
 
void vSetSolver (const Eref &e, Id hsolve)
 Used to set up the solver. Dummy for regular classes. More...
 
void vSetTau (const Eref &e, double val)
 
 ZombieCaConc ()
 
- Public Member Functions inherited from CaConcBase
 CaConcBase ()
 
void current (const Eref &e, double I)
 
void currentFraction (const Eref &e, double I, double fraction)
 
void decrease (const Eref &e, double I)
 
double getB (const Eref &e) const
 
double getCa (const Eref &e) const
 
double getCaBasal (const Eref &e) const
 
double getCeiling (const Eref &e) const
 
double getDiameter (const Eref &e) const
 
double getFloor (const Eref &e) const
 
double getLength (const Eref &e) const
 
double getTau (const Eref &e) const
 
double getThickness (const Eref &e) const
 
void increase (const Eref &e, double I)
 
void process (const Eref &, ProcPtr info)
 
void reinit (const Eref &, ProcPtr info)
 
void setB (const Eref &e, double val)
 
void setCa (const Eref &e, double val)
 
void setCaBasal (const Eref &e, double val)
 
void setCeiling (const Eref &e, double val)
 
void setDiameter (const Eref &e, double val)
 
void setFloor (const Eref &e, double val)
 
void setLength (const Eref &e, double val)
 
void setTau (const Eref &e, double val)
 
void setThickness (const Eref &e, double val)
 
void updateDimensions (const Eref &e)
 

Static Public Member Functions

static const CinfoinitCinfo ()
 
- Static Public Member Functions inherited from CaConcBase
static SrcFinfo1< double > * concOut ()
 
static const CinfoinitCinfo ()
 
static void zombify (Element *orig, const Cinfo *zClass, Id hsolve)
 

Private Attributes

double B_
 
HSolvehsolve_
 
double tau_
 
double thickness_
 

Detailed Description

Zombie object that lets HSolve do its calculations, while letting the user interact with this object as if it were the original object.

Definition at line 18 of file ZombieCaConc.h.

Constructor & Destructor Documentation

ZombieCaConc::ZombieCaConc ( )
inline

Definition at line 21 of file ZombieCaConc.h.

22  : CaConcBase(),
23  hsolve_( NULL ),
24  tau_( 0.0 ),
25  B_( 0.0 ),
26  thickness_( 0.0 )
27  {
28  ;
29  }
double thickness_
Definition: ZombieCaConc.h:67
HSolve * hsolve_
Definition: ZombieCaConc.h:63

Member Function Documentation

const Cinfo * ZombieCaConc::initCinfo ( )
static

Definition at line 21 of file ZombieCaConc.cpp.

References CaConcBase::initCinfo(), and zombieCaConcCinfo.

Referenced by HSolve::zombify().

22 {
23  static string doc[] =
24  {
25  "Name", "ZombieCaConc",
26  "Author", "Upinder S. Bhalla, 2007, NCBS",
27  "Description", "ZombieCaConc: Calcium concentration pool. Takes current from a "
28  "channel and keeps track of calcium buildup and depletion by a "
29  "single exponential process. ",
30  };
31  static Dinfo< ZombieCaConc > dinfo;
32  static Cinfo zombieCaConcCinfo(
33  "ZombieCaConc",
35  0,
36  0,
37  &dinfo,
38  doc,
39  sizeof( doc )/ sizeof( string )
40  );
41 
42  return &zombieCaConcCinfo;
43 }
Definition: Dinfo.h:60
static const Cinfo * initCinfo()
Definition: CaConcBase.cpp:31
static const Cinfo * zombieCaConcCinfo
Definition: Cinfo.h:18

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ZombieCaConc::vCurrent ( const Eref e,
double  I 
)
virtual

Implements CaConcBase.

Definition at line 128 of file ZombieCaConc.cpp.

References hsolve_, HSolve::iCa(), and Eref::id().

129 {
130  //~ activation_ += I;
131  hsolve_->iCa( e.id(), I );
132 }
Id id() const
Definition: Eref.cpp:62
HSolve * hsolve_
Definition: ZombieCaConc.h:63
void iCa(Id id, double iCa)

+ Here is the call graph for this function:

void ZombieCaConc::vCurrentFraction ( const Eref e,
double  I,
double  fraction 
)
virtual

Implements CaConcBase.

Definition at line 134 of file ZombieCaConc.cpp.

135 {
136  //~ activation_ += I * fraction;
137 }
void ZombieCaConc::vDecrease ( const Eref e,
double  I 
)
virtual

Implements CaConcBase.

Definition at line 144 of file ZombieCaConc.cpp.

145 {
146  //~ activation_ -= fabs( I );
147 }
double ZombieCaConc::vGetB ( const Eref e) const
virtual

Implements CaConcBase.

Definition at line 89 of file ZombieCaConc.cpp.

References B_.

90 {
91  return B_;
92 }
double ZombieCaConc::vGetCa ( const Eref e) const
virtual

Implements CaConcBase.

Definition at line 57 of file ZombieCaConc.cpp.

References HSolve::getCa(), hsolve_, and Eref::id().

58 {
59  return hsolve_->getCa( e.id() );
60 }
Id id() const
Definition: Eref.cpp:62
HSolve * hsolve_
Definition: ZombieCaConc.h:63
double getCa(Id id) const
Interface to CaConc.

+ Here is the call graph for this function:

double ZombieCaConc::vGetCaBasal ( const Eref e) const
virtual

Implements CaConcBase.

Definition at line 67 of file ZombieCaConc.cpp.

References HSolve::getCaBasal(), hsolve_, and Eref::id().

68 {
69  return hsolve_->getCaBasal( e.id() );
70 }
Id id() const
Definition: Eref.cpp:62
double getCaBasal(Id id) const
HSolve * hsolve_
Definition: ZombieCaConc.h:63

+ Here is the call graph for this function:

double ZombieCaConc::vGetCeiling ( const Eref e) const
virtual

Implements CaConcBase.

Definition at line 99 of file ZombieCaConc.cpp.

References HSolve::getCaCeiling(), hsolve_, and Eref::id().

100 {
101  return hsolve_->getCaCeiling( e.id() );
102 }
Id id() const
Definition: Eref.cpp:62
HSolve * hsolve_
Definition: ZombieCaConc.h:63
double getCaCeiling(Id id) const

+ Here is the call graph for this function:

double ZombieCaConc::vGetFloor ( const Eref e) const
virtual

Implements CaConcBase.

Definition at line 109 of file ZombieCaConc.cpp.

References HSolve::getCaFloor(), hsolve_, and Eref::id().

110 {
111  return hsolve_->getCaFloor( e.id() );
112 }
double getCaFloor(Id id) const
Id id() const
Definition: Eref.cpp:62
HSolve * hsolve_
Definition: ZombieCaConc.h:63

+ Here is the call graph for this function:

double ZombieCaConc::vGetTau ( const Eref e) const
virtual

Implements CaConcBase.

Definition at line 78 of file ZombieCaConc.cpp.

References tau_.

79 {
80  return tau_;
81 }
void ZombieCaConc::vIncrease ( const Eref e,
double  I 
)
virtual

Implements CaConcBase.

Definition at line 139 of file ZombieCaConc.cpp.

140 {
141  //~ activation_ += fabs( I );
142 }
void ZombieCaConc::vProcess ( const Eref e,
ProcPtr  info 
)
virtual

Implements CaConcBase.

Definition at line 123 of file ZombieCaConc.cpp.

124 {
125  ;
126 }
void ZombieCaConc::vReinit ( const Eref e,
ProcPtr  info 
)
virtual

Implements CaConcBase.

Definition at line 118 of file ZombieCaConc.cpp.

119 {
120  ;
121 }
void ZombieCaConc::vSetB ( const Eref e,
double  val 
)
virtual

Implements CaConcBase.

Definition at line 83 of file ZombieCaConc.cpp.

References B_, hsolve_, Eref::id(), HSolve::setTauB(), and tau_.

84 {
85  B_ = B;
86  hsolve_->setTauB( e.id(), tau_, B_ );
87 }
Id id() const
Definition: Eref.cpp:62
void setTauB(Id id, double tau, double B)
HSolve * hsolve_
Definition: ZombieCaConc.h:63

+ Here is the call graph for this function:

void ZombieCaConc::vSetCa ( const Eref e,
double  val 
)
virtual

Implements CaConcBase.

Definition at line 52 of file ZombieCaConc.cpp.

References hsolve_, Eref::id(), and HSolve::setCa().

53 {
54  hsolve_->setCa( e.id(), Ca );
55 }
Id id() const
Definition: Eref.cpp:62
void setCa(Id id, double Ca)
HSolve * hsolve_
Definition: ZombieCaConc.h:63

+ Here is the call graph for this function:

void ZombieCaConc::vSetCaBasal ( const Eref e,
double  val 
)
virtual

Implements CaConcBase.

Definition at line 62 of file ZombieCaConc.cpp.

References hsolve_, Eref::id(), and HSolve::setCa().

63 {
64  hsolve_->setCa( e.id(), CaBasal );
65 }
Id id() const
Definition: Eref.cpp:62
void setCa(Id id, double Ca)
HSolve * hsolve_
Definition: ZombieCaConc.h:63

+ Here is the call graph for this function:

void ZombieCaConc::vSetCeiling ( const Eref e,
double  val 
)
virtual

Implements CaConcBase.

Definition at line 94 of file ZombieCaConc.cpp.

References hsolve_, Eref::id(), and HSolve::setCaCeiling().

95 {
96  hsolve_->setCaCeiling( e.id(), ceiling );
97 }
Id id() const
Definition: Eref.cpp:62
void setCaCeiling(Id id, double floor)
HSolve * hsolve_
Definition: ZombieCaConc.h:63

+ Here is the call graph for this function:

void ZombieCaConc::vSetFloor ( const Eref e,
double  val 
)
virtual

Implements CaConcBase.

Definition at line 104 of file ZombieCaConc.cpp.

References hsolve_, Eref::id(), and HSolve::setCaFloor().

105 {
106  hsolve_->setCaFloor( e.id(), floor );
107 }
Id id() const
Definition: Eref.cpp:62
void setCaFloor(Id id, double floor)
HSolve * hsolve_
Definition: ZombieCaConc.h:63

+ Here is the call graph for this function:

void ZombieCaConc::vSetSolver ( const Eref e,
Id  hsolve 
)
virtual

Used to set up the solver. Dummy for regular classes.

Reimplemented from CaConcBase.

Definition at line 150 of file ZombieCaConc.cpp.

References Element::cinfo(), Eref::data(), Id::element(), Id::eref(), hsolve_, Cinfo::isA(), and Id::path().

151 {
152  if ( !hsolve.element()->cinfo()->isA( "HSolve" ) ) {
153  cout << "Error: ZombieCaConc::vSetSolver: Object: " <<
154  hsolve.path() << " is not an HSolve. Aborted\n";
155  hsolve_ = 0;
156  return;
157  }
158  hsolve_ = reinterpret_cast< HSolve* >( hsolve.eref().data() );
159 }
char * data() const
Definition: Eref.cpp:41
Element * element() const
Synonym for Id::operator()()
Definition: Id.cpp:113
std::string path(const std::string &separator="/") const
Definition: Id.cpp:76
Eref eref() const
Definition: Id.cpp:125
HSolve * hsolve_
Definition: ZombieCaConc.h:63
Definition: HSolve.h:16
bool isA(const string &ancestor) const
Definition: Cinfo.cpp:280
const Cinfo * cinfo() const
Definition: Element.cpp:66

+ Here is the call graph for this function:

void ZombieCaConc::vSetTau ( const Eref e,
double  val 
)
virtual

Implements CaConcBase.

Definition at line 72 of file ZombieCaConc.cpp.

References B_, hsolve_, Eref::id(), HSolve::setTauB(), and tau_.

73 {
74  tau_ = tau;
75  hsolve_->setTauB( e.id(), tau_, B_ );
76 }
Id id() const
Definition: Eref.cpp:62
void setTauB(Id id, double tau, double B)
HSolve * hsolve_
Definition: ZombieCaConc.h:63

+ Here is the call graph for this function:

Member Data Documentation

double ZombieCaConc::B_
private

Definition at line 66 of file ZombieCaConc.h.

Referenced by vGetB(), vSetB(), and vSetTau().

HSolve* ZombieCaConc::hsolve_
private
double ZombieCaConc::tau_
private

Definition at line 65 of file ZombieCaConc.h.

Referenced by vGetTau(), vSetB(), and vSetTau().

double ZombieCaConc::thickness_
private

Definition at line 67 of file ZombieCaConc.h.


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