: $Id: nafpr.mod,v 1.1 2009/11/05 15:09:12 samn Exp $ COMMENT //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% // // NOTICE OF COPYRIGHT AND OWNERSHIP OF SOFTWARE // // Copyright 2007, The University Of Pennsylvania // School of Engineering & Applied Science. // All rights reserved. // For research use only; commercial use prohibited. // Distribution without permission of Maciej T. Lazarewicz not permitted. // mlazarew@seas.upenn.edu // //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ENDCOMMENT NEURON { SUFFIX nafpr USEION na WRITE ina RANGE gna, ina } UNITS { (mA) = (milliamp) (mV) = (millivolt) (mS) = (millisiemens) } PARAMETER { gna = 30 (mS/cm2) ena = 55 (mV) } ASSIGNED { v (mV) ina (mA/cm2) minf (1) hinf (1) tauh (ms) } STATE { h } INITIAL { rates(v) h = hinf } BREAKPOINT { SOLVE states METHOD cnexp ina = (1e-3) * gna * minf^2 * h * (v-ena) } DERIVATIVE states { rates(v) h' = (hinf-h)/tauh } :ina PROCEDURE rates(v(mV)) { LOCAL a, b a = fun3(v, -46.9, -0.32, -4) b = fun3(v, -19.9, 0.28, 5) minf = a/(a+b) a = fun1(v, -43, 0.128, -18) b = fun2(v, -20, 4, -5) hinf = a/(a+b) tauh = 1.0/(a+b) } INCLUDE "aux_fun.inc"