23 typedef double ( *
PFDD )( double, double );
27 friend void testHHChannel2D();
28 #endif // DO_UNIT_TESTS
53 void setX(
double X );
55 void setY(
double Y );
57 void setZ(
double Z );
110 void conc1(
double conc );
111 void conc2(
double conc );
128 const string& gateName,
152 double* assignee,
const string& gateType );
159 int dependency(
string index,
unsigned int dim );
161 double integrate(
double state,
double dt,
double A,
double B );
208 static double power1(
double x,
double p ) {
211 static double power2(
double x,
double p ) {
214 static double power3(
double x,
double p ) {
217 static double power4(
double x,
double p ) {
218 return power2( x * x, p );
220 static double powerN(
double x,
double p );
224 #endif // _HHChannel2D_h
static const double EPSILON
HHGate2D for the zGate.
void setZindex(string index)
static const int INSTANT_X
bool xInited_
State variable for Z gate.
double getZpower(const Eref &e) const
double depValue(int dependency)
static double power1(double x, double p)
bool setGatePower(const Eref &e, double power, double *assignee, const string &gateType)
double(* PFDD)(double, double)
void setYpower(const Eref &e, double Ypower)
int instant_
Exponent for Z gate.
double Y_
State variable for X gate.
void setInstant(int Instant)
double Ypower_
Exponent for X gate.
double(* takeZpower_)(double, double)
unsigned int getNumZgates() const
Returns 1 if Z gate present, otherwise 0.
void setZpower(const Eref &e, double Zpower)
void setXpower(const Eref &e, double Xpower)
void innerDestroyGate(const string &gateName, HHGate2D **gatePtr, Id chanId)
double getYpower(const Eref &e) const
HHGate2D * zGate_
HHGate2D for the yGate.
double Z_
State variable for Y gate.
static double power4(double x, double p)
void setXindex(string index)
int dependency(string index, unsigned int dim)
void vReinit(const Eref &e, ProcPtr p)
void innerCreateGate(const string &gateName, HHGate2D **gatePtr, Id chanId, Id gateId)
Inner utility function for creating the gate.
void setYindex(string index)
static double power2(double x, double p)
static const Cinfo * initCinfo()
double(* takeYpower_)(double, double)
double conc1_
Internal variable used to calculate conductance.
static PFDD selectPower(double power)
bool checkOriginal(Id chanId) const
Returns true if channel is original, false if copy.
HHGate2D * getYgate(unsigned int i)
Access function used for the Y gate. The index is ignored.
static const int INSTANT_Z
void createGate(const Eref &e, string gateType)
unsigned int getNumXgates() const
unsigned int getNumYgates() const
Returns 1 if Y gate present, otherwise 0.
void setNumGates(unsigned int num)
Dummy assignment function for the number of gates.
static double power3(double x, double p)
HHGate2D * getZgate(unsigned int i)
Access function used for the Z gate. The index is ignored.
void setUseConcentration(int value)
double integrate(double state, double dt, double A, double B)
double getXpower(const Eref &e) const
HHGate2D * getXgate(unsigned int i)
Access function used for the X gate. The index is ignored.
double Zpower_
Exponent for Y gate.
static const int INSTANT_Y
void vProcess(const Eref &e, ProcPtr p)
static double powerN(double x, double p)
double(* takeXpower_)(double, double)
void destroyGate(const Eref &e, string gateType)
int getUseConcentration()