source: project/release/4/nemo/trunk/examples/Golgi/parts/Golgi_KA.nemo @ 27148

Last change on this file since 27148 was 27148, checked in by Ivan Raikov, 9 years ago

nemo: added an example Golgi cell model

File size: 2.1 KB
Line 
1
2(nemo-model Golgi_KA
3
4  (
5   (input v celsius)
6
7   (defun sigm (x y) (1 / (exp (x / y) + 1)))
8
9   (component (type ionic-current) (name KA )
10             
11              (component (type gate)
12
13                         ;; rate constants
14
15                         (Q10 = (pow (3 ((celsius - 25.5) / 10))))
16
17                         (const Aalpha_a  = 0.8147)
18                         (const Kalpha_a  = -23.32708)
19                         (const V0alpha_a = -9.17203)
20                         (const Abeta_a   = 0.1655)
21                         (const Kbeta_a   = 19.47175)
22                         (const V0beta_a  = -18.27914)
23
24                         (const Aalpha_b  = 0.0368)
25                         (const Kalpha_b  = 12.8433)
26                         (const V0alpha_b = -111.33209)
27                         (const Abeta_b   = 0.0345)
28                         (const Kbeta_b   = -8.90123)
29                         (const V0beta_b  = -49.9537)
30
31                         (const V0_ainf = -38)
32                         (const  K_ainf = -17)
33
34                         (const V0_binf   = -78.8)
35                         (const K_binf    = 8.4)
36
37                         
38                         ;; rate functions
39
40                         (defun alpha_a (v Q10)
41                           (Q10 * Aalpha_a * sigm((v - V0alpha_a) Kalpha_a)))
42
43                         (defun beta_a (v Q10)
44                           (Q10 * (Abeta_a / exp((v - V0beta_a) / Kbeta_a))))
45
46                         (defun alpha_b (v Q10)
47                           (Q10 * Aalpha_b * sigm((v - V0alpha_b) Kalpha_b)))
48
49                         (defun beta_b (v Q10)
50                           (Q10 * Abeta_b * sigm((v - V0beta_b) Kbeta_b)))
51
52
53
54                         (a_inf = (1 / (1 + exp ((v - V0_ainf) / K_ainf))))
55                         (tau_a = (1 / (alpha_a (v Q10) + beta_a (v Q10)) ))
56                         (b_inf = (1 / (1 + exp ((v - V0_binf) / K_binf))))
57                         (tau_b = (1 / (alpha_b (v Q10) + beta_b (v Q10)) ))
58
59
60                         (hh-ionic-gate
61                          (KA  ;; ion name: exported variables will be of the form {ion}_{id}
62                           (initial-m  (a_inf))
63                           (initial-h  (b_inf))
64                           (m-power    3)
65                           (h-power    1)
66                           (m-inf      a_inf)
67                           (m-tau      tau_a)
68                           (h-inf      b_inf)
69                           (h-tau      tau_b)
70                           ))
71
72                         )
73
74                     
75              (component (type pore)
76                         (const  gbar  = 0.008)
77                         (output gbar ))
78
79             
80              (component (type permeating-ion) (name k)
81                         (const e = -84.69)
82                         (output e ))
83             
84              ) ;; end KA current
85             
86
87              (component (type voltage-clamp) (name KA)
88           
89                         (const vchold   = -71)
90                         (const vcbase   = -69)
91                         (const vcinc    = 10)
92                         (const vcsteps  = 8)
93                         (const vchdur   = 30)
94                         (const vcbdur   = 100)
95           
96                         (output vchold vcbase vcinc vcsteps vchdur vcbdur)
97                         )
98
99))
Note: See TracBrowser for help on using the repository browser.