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

#include <HSolveStruct.h>

+ Collaboration diagram for CaConcStruct:

Public Member Functions

 CaConcStruct ()
 
 CaConcStruct (double Ca, double CaBasal, double tau, double B, double ceiling, double floor, double dt)
 
double process (double activation)
 
void setCa (double Ca)
 
void setCaBasal (double CaBasal)
 
void setTauB (double tau, double B, double dt)
 

Public Attributes

double c_
 
double CaBasal_
 

Dynamic calcium concentration, over CaBasal_

More...
 
double ceiling_
 
double factor1_
 

Reference calcium concentration

More...
 
double factor2_
 

Both these factors are functions of tau, B and dt.

More...
 
double floor_
 

Ceiling and floor for lookup tables

More...
 

Detailed Description

Definition at line 137 of file HSolveStruct.h.

Constructor & Destructor Documentation

CaConcStruct::CaConcStruct ( )

Definition at line 82 of file HSolveStruct.cpp.

83  :
84  c_( 0.0 ),
85  CaBasal_( 0.0 ),
86  factor1_( 0.0 ),
87  factor2_( 0.0 ),
88  ceiling_( 0.0 ),
89  floor_( 0.0 )
90 { ; }
double ceiling_
Definition: HSolveStruct.h:143
double factor1_
Reference calcium concentration
Definition: HSolveStruct.h:141
double floor_
Ceiling and floor for lookup tables
Definition: HSolveStruct.h:144
double CaBasal_
Dynamic calcium concentration, over CaBasal_
Definition: HSolveStruct.h:140
double factor2_
Both these factors are functions of tau, B and dt.
Definition: HSolveStruct.h:142
CaConcStruct::CaConcStruct ( double  Ca,
double  CaBasal,
double  tau,
double  B,
double  ceiling,
double  floor,
double  dt 
)

Definition at line 92 of file HSolveStruct.cpp.

References ceiling_, floor_, setCa(), setCaBasal(), and setTauB().

100 {
101  setCa( Ca );
102  setCaBasal( CaBasal );
103  setTauB( tau, B, dt );
104  ceiling_ = ceiling;
105  floor_ = floor;
106 }
double ceiling_
Definition: HSolveStruct.h:143
void setCaBasal(double CaBasal)
double floor_
Ceiling and floor for lookup tables
Definition: HSolveStruct.h:144
void setCa(double Ca)
void setTauB(double tau, double B, double dt)

+ Here is the call graph for this function:

Member Function Documentation

double CaConcStruct::process ( double  activation)

Compute Ca concentration from factors and activation value. Also takes care of Ca concetration exceeding min and max values.

Definition at line 139 of file HSolveStruct.cpp.

References c_, CaBasal_, ceiling_, factor1_, factor2_, floor_, and setCa().

139  {
140  c_ = factor1_ * c_ + factor2_ * activation;
141 
142  double ca = CaBasal_ + c_;
143 
144  if ( ceiling_ > 0 && ca > ceiling_ ) {
145  ca = ceiling_;
146  setCa( ca );
147  }
148 
149  if ( ca < floor_ ) {
150  ca = floor_;
151  setCa( ca );
152  }
153 
154  return ca;
155 }
double ceiling_
Definition: HSolveStruct.h:143
double factor1_
Reference calcium concentration
Definition: HSolveStruct.h:141
double floor_
Ceiling and floor for lookup tables
Definition: HSolveStruct.h:144
void setCa(double Ca)
double CaBasal_
Dynamic calcium concentration, over CaBasal_
Definition: HSolveStruct.h:140
double factor2_
Both these factors are functions of tau, B and dt.
Definition: HSolveStruct.h:142

+ Here is the call graph for this function:

void CaConcStruct::setCa ( double  Ca)

Definition at line 108 of file HSolveStruct.cpp.

References c_, and CaBasal_.

Referenced by CaConcStruct(), and process().

108  {
109  c_ = Ca - CaBasal_;
110 }
double CaBasal_
Dynamic calcium concentration, over CaBasal_
Definition: HSolveStruct.h:140

+ Here is the caller graph for this function:

void CaConcStruct::setCaBasal ( double  CaBasal)

change CaBasal_ and update c_ accordingly.

Definition at line 112 of file HSolveStruct.cpp.

References c_, and CaBasal_.

Referenced by CaConcStruct().

112  {
113  /*
114  * Also updating 'c_' here, so that only 'CaBasal' changes, and 'Ca'
115  * remains the same. This is good because otherwise one has to bother about
116  * the order in which 'setCa()' and 'setCaBasal()' are called.
117  *
118  * 'Ca' is:
119  * Ca = CaBasal_ + c_
120  *
121  * if:
122  * Ca_new = Ca_old
123  *
124  * then:
125  * CaBasal_new + c_new = CaBasal_old + c_old
126  *
127  * so:
128  * c_new = c_old + CaBasal_old - CaBasal_new
129  */
130  c_ += CaBasal_ - CaBasal;
131  CaBasal_ = CaBasal;
132 }
double CaBasal_
Dynamic calcium concentration, over CaBasal_
Definition: HSolveStruct.h:140

+ Here is the caller graph for this function:

void CaConcStruct::setTauB ( double  tau,
double  B,
double  dt 
)

Sets the factors using the appropriate functions.

Definition at line 134 of file HSolveStruct.cpp.

References factor1_, and factor2_.

Referenced by CaConcStruct().

134  {
135  factor1_ = 4.0 / ( 2.0 + dt / tau ) - 1.0;
136  factor2_ = 2.0 * B * dt / ( 2.0 + dt / tau );
137 }
double factor1_
Reference calcium concentration
Definition: HSolveStruct.h:141
double factor2_
Both these factors are functions of tau, B and dt.
Definition: HSolveStruct.h:142

+ Here is the caller graph for this function:

Member Data Documentation

double CaConcStruct::c_

Definition at line 139 of file HSolveStruct.h.

Referenced by process(), setCa(), and setCaBasal().

double CaConcStruct::CaBasal_

Dynamic calcium concentration, over CaBasal_

Definition at line 140 of file HSolveStruct.h.

Referenced by process(), setCa(), and setCaBasal().

double CaConcStruct::ceiling_

Definition at line 143 of file HSolveStruct.h.

Referenced by CaConcStruct(), and process().

double CaConcStruct::factor1_

Reference calcium concentration

Definition at line 141 of file HSolveStruct.h.

Referenced by process(), and setTauB().

double CaConcStruct::factor2_

Both these factors are functions of tau, B and dt.

Definition at line 142 of file HSolveStruct.h.

Referenced by process(), and setTauB().

double CaConcStruct::floor_

Ceiling and floor for lookup tables

Definition at line 144 of file HSolveStruct.h.

Referenced by CaConcStruct(), and process().


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