-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCaTchan.mod
More file actions
140 lines (117 loc) · 2.78 KB
/
CaTchan.mod
File metadata and controls
140 lines (117 loc) · 2.78 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
TITLE Low threshold calcium current
:
: Ca++ current responsible for low threshold spikes (LTS)
: THALAMOCORTICAL CELLS
: Differential equations
:
: Model based on the data of Huguenard & McCormick, J Neurophysiol
: 68: 1373-1383, 1992 and Huguenard & Prince, J Neurosci.
: 12: 3804-3817, 1992.
:
: Features:
:
: - kinetics described by Nernst equations using a m2h format
: - activation considered at steady-state
: - inactivation fit to Huguenard's data using a bi-exp function
: - shift for screening charge, q10 of inactivation of 3
:
:
: Written by Alain Destexhe, Salk Institute, 1993; modified 1995
:
INDEPENDENT {t FROM 0 TO 1 WITH 1 (ms)}
NEURON {
SUFFIX catchan
NONSPECIFIC_CURRENT incal
USEION ca READ eca WRITE ica
USEION cask WRITE icask VALENCE 2: this might not work and would require a compensating current
USEION cacicr WRITE icacicr VALENCE 2
RANGE gcatbar, m_inf, tau_m, h_inf, tau_h, shift, pf, tsk, tcicr, gca, phi_h, ica,mhalf,hhalf,icat, icask, icacicr, hfixed,h
:GLOBAL minf, hinf, mtau, htau
}
UNITS {
(molar) = (1/liter)
(mV) = (millivolt)
(mA) = (milliamp)
(mM) = (millimolar)
FARADAY = (faraday) (coulomb)
R = (k-mole) (joule/degC)
}
PARAMETER {
v (mV)
celsius = 36 (degC)
gcatbar = 0.002 (mho/cm2)
q10 = 3 : Q10 of inactivation
shift = 2 (mV) : corresponds to 2mM ext Ca++
cai = 2.4e-4 (mM) : adjusted for eca=120 mV
cao = 2 (mM)
pf = 1 (1)
hhalf = -80
mhalf = -51
hfixed=0
tsk = 0
tcicr = 0
tau_m = 1.0 (ms)
eca
phi_h = 3.0
}
STATE {
h FROM 0 TO 1
m FROM 0 TO 1
}
ASSIGNED {
ica (mA/cm2)
icask (mA/cm2)
icacicr (mA/cm2)
icat (mA/cm2)
incal (mA/cm2)
gca (S/cm2)
carev (mV)
m_inf
:tau_m (ms) : dummy variable for compatibility
h_inf
tau_h (ms)
}
BREAKPOINT {
SOLVE castate METHOD cnexp
:carev = (1e3) * (R*(celsius+273.15))/(2*FARADAY) * log (cao/cai)
carev = eca
if (hfixed > 0){
gca = gcatbar*m*m*hfixed
} else {
gca = gcatbar*m*m*h
}
icat = gca*(v-carev)
icask = 0:icat : cicr goes through this
icacicr = tsk*tcicr*icat
ica =tsk*(1-tcicr)*icat
incal=(1-tsk)*icat:(1-tsk-tcicr)*icat : no calcium to bulk pool
}
DERIVATIVE castate {
evaluate_fct(v)
m' = (m_inf - m)/ tau_m
h' = (h_inf - h) / tau_h
}
UNITSOFF
INITIAL { LOCAL Vm
evaluate_fct(v)
}
PROCEDURE evaluate_fct(v(mV)) { LOCAL Vm
Vm = v + shift
if(Vm > mhalf){
m_inf = 1.0 / ( 1 + exp(-(Vm-mhalf)/6.2) ) :57 6.2
} else {
m_inf = 1.0 / ( 1 + exp(-(Vm-mhalf)/5.2) ) :57 6.2
}
h_inf = 1.0 / ( 1 + exp((Vm-hhalf)/4.0) )
: if(Vm < -80) {
: tau_h = exp((Vm+467)/66.6) / phi_h
: } else {
: tau_h = ( 28 + exp(-(Vm+22)/10.5) ) / phi_h
: }
tau_m = 25.0 : 25 /100 for 'ideal' case
tau_h = 75.8 + (211.4 + exp((Vm+113.2)/5)) / (1 + exp((Vm+84)/3.2))
}
FUNCTION boltz(x,y,z) {
boltz = 1/(1 + exp(-(x - y)/z))
}
UNITSON