source: project/release/3/nemo/trunk/examples/AKP06/Na.nemo @ 12685

Last change on this file since 12685 was 12685, checked in by Ivan Raikov, 13 years ago

Bug fixes.

File size: 3.7 KB
Line 
1(nemo-model Na
2    ((input v  cai cao)
3             
4     (const Vrest   = -68)
5     (const diam    = 20)
6     (const celsius = 24)
7             
8     (const temp_adj = (pow (3 ((celsius - 22) / 10))))
9
10     (component (type membrane-capacitance)
11               (const C = 1)
12               (output C))
13     
14     (component (type ion-channel) (name Na)
15               
16                (component (type gate)
17                           
18                   (const Con   = 0.005)
19                   (const Coff  = 0.5)
20                   (const Oon   = 2.3)
21                   (const Ooff  = 0.005)
22
23                   (const Na_alfac = (pow ((Oon / Con) (1.0 / 4.0))))
24                   (const Na_btfac = (pow ((Ooff / Coff) (1.0 / 4.0))))
25                   
26                   (const Na_alpha = 150)
27                   (const Na_beta  = 3)
28                   (const Na_gamma = 150)
29                   (const Na_delta = 40)
30                   (const Na_epsilon = 1e-12)
31                   (const Na_zeta = 0.03)
32                   (const Na_x1 = 20)
33                   (const Na_x2 = -20)
34                   (const Na_x3 = 1000000000000.0)
35                   (const Na_x4 = -1000000000000.0)
36                   (const Na_x5 = 1000000000000.0)
37                   (const Na_x6 = -25)
38
39                   ;; rate functions
40                   (f01 = (4.0 * Na_alpha * exp (v / Na_x1) * temp_adj))
41                   (f02 = (3.0 * Na_alpha * exp (v / Na_x1) * temp_adj))
42                   (f03 = (2.0 * Na_alpha * exp (v / Na_x1) * temp_adj))
43                   (f04 = (Na_alpha * exp (v / Na_x1) * temp_adj))
44                   (f0O = (Na_gamma * exp (v / Na_x3) * temp_adj))
45                   (fip = (Na_epsilon * exp (v / Na_x5) * temp_adj))
46                   (f11 = (4.0 * Na_alpha * Na_alfac * exp (v / Na_x1) * temp_adj))
47                   (f12 = (3.0 * Na_alpha * Na_alfac * exp (v / Na_x1) * temp_adj))
48                   (f13 = (2.0 * Na_alpha * Na_alfac * exp (v / Na_x1) * temp_adj))
49                   (f14 = (Na_alpha * Na_alfac * exp (v / Na_x1) * temp_adj))
50                   (f1n = (Na_gamma * exp (v / Na_x3) * temp_adj))
51                   
52                   (fi1 = (Con * temp_adj))
53                   (fi2 = (Con * Na_alfac * temp_adj))
54                   (fi3 = (Con * Na_alfac * Na_alfac * temp_adj))
55                   (fi4 = (Con * Na_alfac * Na_alfac * Na_alfac * temp_adj))
56                   (fi5 = (Con * Na_alfac * Na_alfac * Na_alfac * Na_alfac * temp_adj))
57                   (fin = (Oon * temp_adj))
58                   
59                   (b01 = (Na_beta * exp (v / Na_x2) * temp_adj))
60                   (b02 = (2.0 * Na_beta * exp (v / Na_x2) * temp_adj))
61                   (b03 = (3.0 * Na_beta * exp (v / Na_x2) * temp_adj))
62                   (b04 = (4.0 * Na_beta * exp (v / Na_x2) * temp_adj))
63                   (b0O = (Na_delta * exp (v / Na_x4) * temp_adj))
64                   (bip = (Na_zeta * exp (v / Na_x6) * temp_adj))
65                   
66                   (b11 = (Na_beta * Na_btfac * exp (v / Na_x2) * temp_adj))
67                   (b12 = (2.0 * Na_beta * Na_btfac * exp (v / Na_x2) * temp_adj))
68                   (b13 = (3.0 * Na_beta * Na_btfac * exp (v / Na_x2) * temp_adj))
69                   (b14 = (4.0 * Na_beta * Na_btfac * exp (v / Na_x2) * temp_adj))
70                   (b1n = (Na_delta * exp (v / Na_x4) * temp_adj))
71                   
72                   (bi1 = (Coff * temp_adj))
73                   (bi2 = (Coff * Na_btfac * temp_adj))
74                   (bi3 = (Coff * Na_btfac * Na_btfac * temp_adj))
75                   (bi4 = (Coff * Na_btfac * Na_btfac * Na_btfac * temp_adj))
76                   (bi5 = (Coff * Na_btfac * Na_btfac * Na_btfac * Na_btfac * temp_adj))
77                   (bin = (Ooff * temp_adj))
78                   
79                   (state-complex
80                    (Na_z
81                     (transitions
82                      (<-> C1 C2 f01 b01)
83                      (<-> C2 C3 f02 b02)
84                      (<-> C3 C4 f03 b03)
85                      (<-> C4 C5 f04 b04)
86                      (<-> C5 O  f0O b0O)
87                      (<-> O  B  fip bip)
88                      (<-> O  I6 fin bin)
89                      (<-> I1 I2 f11 b11)
90                      (<-> I2 I3 f12 b12)
91                      (<-> I3 I4 f13 b13)
92                      (<-> I4 I5 f14 b14)
93                      (<-> I5 I6 f1n b1n)
94                      (<-> C1 I1 fi1 bi1)
95                      (<-> C2 I2 fi2 bi2)
96                      (<-> C3 I3 fi3 bi3)
97                      (<-> C4 I4 fi4 bi4)
98                      (<-> C5 I5 fi5 bi5))
99
100                      (conserve (1 = (C1 + C2 + C3 + C4 + C5 + O + B + I1 + I2 + I3 + I4 + I5 + I6)))
101                     
102                     (open O)   (power 1)))
103                   
104                   (output Na_z ) 
105                   
106                   )
107                       
108                (component (type pore)
109                           (const  gbar  = 0.016)
110                           (output gbar ))
111               
112                (component (type permeating-substance) (name na)
113                           (const e = -88)
114                           (output e ))
115               
116                ) ;; end Na current
117     
118     )) ;; end model
Note: See TracBrowser for help on using the repository browser.