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

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

Bug fixes.

File size: 3.9 KB
Line 
1(nemo-model Narsg
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 ion-channel) (name Narsg)
11               
12                (component (type gate)
13                           
14                   (const Con   = 0.005)
15                   (const Coff  = 0.5)
16                   (const Oon   = 0.75)
17                   (const Ooff  = 0.005)
18
19                   (const Narsg_alfac = (pow ((Oon / Con) (1.0 / 4.0))))
20                   (const Narsg_btfac = (pow ((Ooff / Coff) (1.0 / 4.0))))
21                   
22                   (const Narsg_alpha = 150)
23                   (const Narsg_beta  = 3)
24                   (const Narsg_gamma = 150)
25                   (const Narsg_delta = 40)
26                   (const Narsg_epsilon = 1.75)
27                   (const Narsg_zeta = 0.03)
28                   (const Narsg_x1 = 20)
29                   (const Narsg_x2 = -20)
30                   (const Narsg_x3 = 1000000000000.0)
31                   (const Narsg_x4 = -1000000000000.0)
32                   (const Narsg_x5 = 1000000000000.0)
33                   (const Narsg_x6 = -25)
34
35                   ;; rate functions
36                   (f01 = (4.0 * Narsg_alpha * exp (v / Narsg_x1) * temp_adj))
37                   (f02 = (3.0 * Narsg_alpha * exp (v / Narsg_x1) * temp_adj))
38                   (f03 = (2.0 * Narsg_alpha * exp (v / Narsg_x1) * temp_adj))
39                   (f04 = (Narsg_alpha * exp (v / Narsg_x1) * temp_adj))
40                   (f0O = (Narsg_gamma * exp (v / Narsg_x3) * temp_adj))
41                   (fip = (Narsg_epsilon * exp (v / Narsg_x5) * temp_adj))
42                   (f11 = (4.0 * Narsg_alpha * Narsg_alfac * exp (v / Narsg_x1) * temp_adj))
43                   (f12 = (3.0 * Narsg_alpha * Narsg_alfac * exp (v / Narsg_x1) * temp_adj))
44                   (f13 = (2.0 * Narsg_alpha * Narsg_alfac * exp (v / Narsg_x1) * temp_adj))
45                   (f14 = (Narsg_alpha * Narsg_alfac * exp (v / Narsg_x1) * temp_adj))
46                   (f1n = (Narsg_gamma * exp (v / Narsg_x3) * temp_adj))
47                   
48                   (fi1 = (Con * temp_adj))
49                   (fi2 = (Con * Narsg_alfac * temp_adj))
50                   (fi3 = (Con * Narsg_alfac * Narsg_alfac * temp_adj))
51                   (fi4 = (Con * Narsg_alfac * Narsg_alfac * Narsg_alfac * temp_adj))
52                   (fi5 = (Con * Narsg_alfac * Narsg_alfac * Narsg_alfac * Narsg_alfac * temp_adj))
53                   (fin = (Oon * temp_adj))
54                   
55                   (b01 = (Narsg_beta * exp (v / Narsg_x2) * temp_adj))
56                   (b02 = (2.0 * Narsg_beta * exp (v / Narsg_x2) * temp_adj))
57                   (b03 = (3.0 * Narsg_beta * exp (v / Narsg_x2) * temp_adj))
58                   (b04 = (4.0 * Narsg_beta * exp (v / Narsg_x2) * temp_adj))
59                   (b0O = (Narsg_delta * exp (v / Narsg_x4) * temp_adj))
60                   (bip = (Narsg_zeta * exp (v / Narsg_x6) * temp_adj))
61                   
62                   (b11 = (Narsg_beta * Narsg_btfac * exp (v / Narsg_x2) * temp_adj))
63                   (b12 = (2.0 * Narsg_beta * Narsg_btfac * exp (v / Narsg_x2) * temp_adj))
64                   (b13 = (3.0 * Narsg_beta * Narsg_btfac * exp (v / Narsg_x2) * temp_adj))
65                   (b14 = (4.0 * Narsg_beta * Narsg_btfac * exp (v / Narsg_x2) * temp_adj))
66                   (b1n = (Narsg_delta * exp (v / Narsg_x4) * temp_adj))
67                   
68                   (bi1 = (Coff * temp_adj))
69                   (bi2 = (Coff * Narsg_btfac * temp_adj))
70                   (bi3 = (Coff * Narsg_btfac * Narsg_btfac * temp_adj))
71                   (bi4 = (Coff * Narsg_btfac * Narsg_btfac * Narsg_btfac * temp_adj))
72                   (bi5 = (Coff * Narsg_btfac * Narsg_btfac * Narsg_btfac * Narsg_btfac * temp_adj))
73                   (bin = (Ooff * temp_adj))
74                   
75                   (state-complex
76                    (Narsg_z
77                     (transitions
78                      (<-> C1 C2 f01 b01)
79                      (<-> C2 C3 f02 b02)
80                      (<-> C3 C4 f03 b03)
81                      (<-> C4 C5 f04 b04)
82                      (<-> C5 O  f0O b0O)
83                      (<-> O  B  fip bip)
84                      (<-> O  I6 fin bin)
85                      (<-> I1 I2 f11 b11)
86                      (<-> I2 I3 f12 b12)
87                      (<-> I3 I4 f13 b13)
88                      (<-> I4 I5 f14 b14)
89                      (<-> I5 I6 f1n b1n)
90                      (<-> C1 I1 fi1 bi1)
91                      (<-> C2 I2 fi2 bi2)
92                      (<-> C3 I3 fi3 bi3)
93                      (<-> C4 I4 fi4 bi4)
94                      (<-> C5 I5 fi5 bi5))
95                     
96                      (conserve (1 = (C1 + C2 + C3 + C4 + C5 + O + B + I1 + I2 + I3 + I4 + I5 + I6)))
97                     
98                     
99                     (open O)   (power 1)))
100                   
101                   (output Narsg_z ) 
102                   
103                   )
104                       
105                (component (type pore)
106                           (const  gbar  = 0.016)
107                           (output gbar ))
108               
109                (component (type permeating-substance) (name na)
110                           (const e = -88)
111                           (output e ))
112               
113                ) ;; end Narsg current
114     
115     )) ;; end model
Note: See TracBrowser for help on using the repository browser.