;; -*- Hen -*- ;; ;; This model is used to calculate the channel conductance assuming ;; some initial state. The calculation is based on sodium ion flow, ;; potassium ion flow and leakage ion flow. (Hodgkin, A. L. and Huxley, ;; A. F. (1952) "A Quantitative Description of Membrane Current and its ;; Application to Conduction and Excitation in Nerve" Journal of ;; Physiology 117: 500-544) ;; (nemo-model hodgkin-huxley ((input v) (const Vrest = -65) (component (type membrane-capacitance) (const C = 1) (output C)) (component (type ionic-current) (component (type gate) ;; rate functions (defun amf (v) (0.1 * ((v + 40) / (1.0 - (exp ((neg (v + 40)) / 10)))))) (defun bmf (v) (4.0 * (exp ((neg (v + 65)) / 18)))) (defun ahf (v) (0.07 * (exp ((neg (v + 65)) / 20)))) (defun bhf (v) (1.0 / (1.0 + (exp ((neg (v + 35)) / 10))))) ;; model states ;; the value of state complex m is determined by state m1 (open state) ;; ;; each statement in the transitions block is of the form (-> SRC DEST RATE) ;; (reaction (m (transitions (<-> C O (amf (v)) (bmf (v))) ) ;(initial (amf (Vrest) / (amf (Vrest) + bmf (Vrest))) ) (conserve (1 = (C + O))) (open O) (power 3))) ;; the value of state complex h is determined by state h1 (open state) (reaction (h (transitions (<-> C O (ahf (v)) (bhf (v)))) ;(initial (ahf (Vrest) / (ahf (Vrest) + bhf (Vrest))) ) (conserve (1 = (C + O))) (open O) (power 1))) ;; state definitions exported by this model (output m h ) ) (component (type pore) (const gbar_Na = 120) (output gbar_Na ) ) (component (type permeating-ion) (name na) (const e_Na = 50) (output e_Na )) ) (component (type ionic-current) (component (type gate) ;; rate functions (defun anf (v) (0.01 * ((v + 55) / (1 - (exp ((neg (v + 55)) / 10)))))) (defun bnf (v) (0.125 * (exp ((neg (v + 65)) / 80)))) ;; model states ;; the value of state complex m is determined by state m1 (open state) ;; ;; each statement in the transitions block is of the form (-> SRC DEST RATE) ;; ;; the value of state complex n is determined by state n1 (open state) (reaction (n (transitions (<-> C O (anf (v)) (bnf (v))) ) ;(initial (anf (Vrest) / (anf (Vrest) + bnf (Vrest))) ) (conserve (1 = (C + O))) (open O) (power 4))) ;; state definitions exported by this model (output n) ) (component (type pore) (const gbar_K = 36) (output gbar_K )) (component (type permeating-ion) (name k) (const e_K = -77) (output e_K )) ) (component (type ionic-current) (name Leak) (component (type pore) (const gbar_Leak = 0.3) (output gbar_Leak )) (component (type permeating-ion) (name non-specific) (const e_Leak = -54.4) (output e_Leak )) ) ;; end leak current ))