Thalamic interneuron multicompartment model (Zhu et al. 1999)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:116862
This is an attempt to recreate a set of simulations originally performed in 1994 under NEURON version 3 and last tested in 1999. When I ran it now it did not behave exactly the same as previously which I suspect is due to some minor mod file changes on my side rather than due to any differences among versions. After playing around with the parameters a little bit I was able to get something that looks generally like a physiological trace in J Neurophysiol, 81:702--711, 1999, fig. 8b top trace. This sad preface is simply offered in order to encourage anyone who is interested in this model to make and post fixes. I'm happy to help out. Simulation by JJ Zhu To run nrnivmodl nrngui.hoc
References:
1 . Zhu JJ, Uhlrich DJ, Lytton WW (1999) Burst firing in identified rat geniculate interneurons. Neuroscience 91:1445-60 [PubMed]
2 . Zhu JJ, Lytton WW, Xue JT, Uhlrich DJ (1999) An intrinsic oscillation in interneurons of the rat lateral geniculate nucleus. J Neurophysiol 81:702-11 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Neuron or other electrically excitable cell;
Brain Region(s)/Organism: Thalamus;
Cell Type(s):
Channel(s): I Na,t; I L high threshold; I T low threshold; I K,leak; I h; I K,Ca; I CAN;
Gap Junctions:
Receptor(s):
Gene(s):
Transmitter(s):
Simulation Environment: NEURON;
Model Concept(s): Bursting; Oscillations;
Implementer(s): Zhu, J. Julius [jjzhu at virginia.edu];
Search NeuronDB for information about:  I Na,t; I L high threshold; I T low threshold; I K,leak; I h; I K,Ca; I CAN;
/
b09jan13
readme.html
AMPA.mod
cadecay.mod
clampex.mod *
cp.mod *
cp2.mod *
GABAA.mod
GABAB.mod
HH2.mod *
Iahp.mod *
Ican.mod *
Ih.mod *
IL.mod
IL3.mod *
IT.mod *
IT2.mod *
kdr2.mod *
kleak.mod *
kmbg.mod
naf2.mod *
nap.mod *
NMDA.mod
nthh.mod *
ntIh.mod *
ntleak.mod
ntt.mod *
pregencv.mod
vecst.mod
batch_.hoc
bg_cvode.inc
misc.h
mosinit.hoc *
netcon.inc
screenshot.jpg
                            
: $Id: HH2.mod,v 1.6 2004/06/06 16:00:30 billl Exp $
TITLE Hippocampal HH channels
:
: Fast Na+ and K+ currents responsible for action potentials
: Iterative equations
:
: Equations modified by Traub, for Hippocampal Pyramidal cells, in:
: Traub & Miles, Neuronal Networks of the Hippocampus, Cambridge, 1991
:
: range variable vtraub adjust threshold
:
: Written by Alain Destexhe, Salk Institute, Aug 1992
:
: Modified Oct 96 for compatibility with Windows: trap low values of arguments
:

INDEPENDENT {t FROM 0 TO 1 WITH 1 (ms)}

NEURON {
  SUFFIX hh2ad
  USEION na READ ena WRITE ina
  USEION k READ ek WRITE ik
  RANGE gnabar, gkbar, vtraub, ikhh2, inahh2
  RANGE m_inf, h_inf, n_inf
  RANGE tau_m, tau_h, tau_n
  RANGE m_exp, h_exp, n_exp
}


UNITS {
  (mA) = (milliamp)
  (mV) = (millivolt)
}

PARAMETER {
  gnabar  = .003  (mho/cm2)
  gkbar   = .005  (mho/cm2)

  ena        (mV)
  ek        (mV)
  celsius    (degC)
  dt              (ms)
  v               (mV)
  vtraub  = -63   (mV)
}

STATE {
  m h n
}

ASSIGNED {
  ina     (mA/cm2)
  ik      (mA/cm2)
  il      (mA/cm2)
  inahh2     (mA/cm2)
  ikhh2      (mA/cm2)
  m_inf
  h_inf
  n_inf
  tau_m
  tau_h
  tau_n
  m_exp
  h_exp
  n_exp
  tadj
}


BREAKPOINT {
  SOLVE state METHOD cnexp
  inahh2 = gnabar * m*m*m*h * (v - ena)
  ikhh2  = gkbar * n*n*n*n * (v - ek)
  ina =   inahh2
  ik  =    ikhh2 
}


DERIVATIVE state {   : exact Hodgkin-Huxley equations
  evaluate_fct(v)
  m' = (m_inf - m) / tau_m
  h' = (h_inf - h) / tau_h
  n' = (n_inf - n) / tau_n
}

UNITSOFF
INITIAL {
  :
  :  Q10 was assumed to be 3 for both currents
  :
  tadj = 3.0 ^ ((celsius-36)/ 10 )
  evaluate_fct(v)

  m = m_inf
  h = h_inf
  n = n_inf
}

PROCEDURE evaluate_fct(v(mV)) { LOCAL a,b,v2

  v2 = v - vtraub : convert to traub convention

  :       a = 0.32 * (13-v2) / ( Exp((13-v2)/4) - 1)
  a = 0.32 * vtrap(13-v2, 4)
  :       b = 0.28 * (v2-40) / ( Exp((v2-40)/5) - 1)
  b = 0.28 * vtrap(v2-40, 5)
  tau_m = 1 / (a + b) / tadj
  m_inf = a / (a + b)

  a = 0.128 * Exp((17-v2)/18)
  b = 4 / ( 1 + Exp((40-v2)/5) )
  tau_h = 1 / (a + b) / tadj
  h_inf = a / (a + b)

  :       a = 0.032 * (15-v2) / ( Exp((15-v2)/5) - 1)
  a = 0.032 * vtrap(15-v2, 5)
  b = 0.5 * Exp((10-v2)/40)
  tau_n = 1 / (a + b) / tadj
  n_inf = a / (a + b)

  m_exp = 1 - Exp(-dt/tau_m)
  h_exp = 1 - Exp(-dt/tau_h)
  n_exp = 1 - Exp(-dt/tau_n)
}
FUNCTION vtrap(x,y) {
  if (fabs(x/y) < 1e-6) {
    vtrap = y*(1 - x/y/2)
  }else{
    vtrap = x/(Exp(x/y)-1)
  }
}

FUNCTION Exp(x) {
  if (x < -100) {
    Exp = 0
  }else{
    Exp = exp(x)
  }
} 

Loading data, please wait...