Computer models of corticospinal neurons replicate in vitro dynamics (Neymotin et al. 2017)

 Download zip file 
Help downloading and running models
Accession:195615
"Corticospinal neurons (SPI), thick-tufted pyramidal neurons in motor cortex layer 5B that project caudally via the medullary pyramids, display distinct class-specific electrophysiological properties in vitro: strong sag with hyperpolarization, lack of adaptation, and a nearly linear frequency-current (FI) relationship. We used our electrophysiological data to produce a pair of large archives of SPI neuron computer models in two model classes: 1. Detailed models with full reconstruction; 2. Simplified models with 6 compartments. We used a PRAXIS and an evolutionary multiobjective optimization (EMO) in sequence to determine ion channel conductances. ..."
Reference:
1 . Neymotin SA, Suter BA, Dura-Bernal S, Shepherd GM, Migliore M, Lytton WW (2017) Optimizing computer models of corticospinal neurons to replicate in vitro dynamics. J Neurophysiol 117:148-162 [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: Neocortex;
Cell Type(s): Neocortex M1 L5B pyramidal pyramidal tract cell; Neocortex primary motor area pyramidal layer 5 corticospinal cell;
Channel(s): I A; I h; I_KD; I K,Ca; I L high threshold; I Na,t; I N; Ca pump; Kir;
Gap Junctions:
Receptor(s):
Gene(s):
Transmitter(s):
Simulation Environment: NEURON; Python;
Model Concept(s): Parameter Fitting; Activity Patterns; Active Dendrites; Detailed Neuronal Models; Simplified Models;
Implementer(s): Suter, Benjamin ; Neymotin, Sam [samn at neurosim.downstate.edu]; Dura-Bernal, Salvador [salvadordura at gmail.com]; Forzano, Ernie ;
Search NeuronDB for information about:  Neocortex M1 L5B pyramidal pyramidal tract cell; I Na,t; I L high threshold; I N; I A; I h; I K,Ca; I_KD; Ca pump; Kir;
/
spidemo
data
readme.html
cadad.mod
cal2.mod
can_mig.mod
h_kole.mod
kap_BS.mod
kBK.mod
kdmc_BS.mod
kdr_BS.mod
misc.mod *
nax_BS.mod
savedist.mod
vecst.mod *
archfig.py
axonMorph.py
BS0284.ASC
BS0409.ASC
conf.py
Fig6.py
figure_1.png
misc.h
morph.py
mosinit.py
PTcell.BS0284.cfg *
PTcell.BS0409.cfg
PTcell.cfg *
sim.py
SPI6.cfg
SPI6.py
utils.py
                            
TITLE K-A channel from Klee Ficker and Heinemann
: modified to account for Dax A Current --- M.Migliore Jun 1997
: modified to be used with cvode  M.Migliore 2001
: thread-safe 2010-05-31 Ben Suter
: 2010-11-07 Ben Suter, removing "ka" from parameter names, reformatting, setting sh = 0 (was 24 mV)
:
: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
: Copyright 2011, Benjamin Suter (for changes only)
: Used in model of corticospinal neuron BS0284 and published as:
:  "Intrinsic electrophysiology of mouse corticospinal neurons: a characteristic set of features embodied in a realistic computational model"
:  by Benjamin Suter, Michele Migliore, and Gordon Shepherd
:  Submitted September 2011
: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::


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

PARAMETER {
    v                   (mV)
    celsius             (degC)
    ek

    sh      = 0
    gbar    = 0.008     (mho/cm2)
    vhalfn  = 11        (mV)
    vhalfl  = -56       (mV)
    a0l     = 0.05      (/ms)
    a0n     = 0.05      (/ms)
    zetan   = -1.5      (1)
    zetal   = 3         (1)
    gmn     = 0.55      (1)
    gml     = 1         (1)
    lmin    = 5         (mS)
    nmin    = 0.4       (mS)
    pw      = -1        (1)
    tq      = -40
    qq      = 5
    q10     = 5
    qtl     = 1
}


NEURON {
    SUFFIX kap
    USEION k READ ek WRITE ik
    RANGE gbar, g, sh, tq, vhalfn, vhalfl, ik : 
:        GLOBAL ninf,linf,taul,taun,lmin
}

STATE {
    n
    l
}

ASSIGNED {
    ik      (mA/cm2)
    ninf
    linf
    taul
    taun
    g
}

INITIAL {
    rates(v)
    n=ninf
    l=linf
}


BREAKPOINT {
    SOLVE states METHOD cnexp
    g = gbar*n*l
    ik = g*(v-ek)
}


FUNCTION alpn(v(mV)) {
    LOCAL zeta
    zeta=zetan+pw/(1+exp((v-tq-sh)/qq))
    alpn = exp(1.e-3*zeta*(v-vhalfn-sh)*9.648e4/(8.315*(273.16+celsius)))
}

FUNCTION betn(v(mV)) {
    LOCAL zeta
    zeta=zetan+pw/(1+exp((v-tq-sh)/qq))
    betn = exp(1.e-3*zeta*gmn*(v-vhalfn-sh)*9.648e4/(8.315*(273.16+celsius)))
}

FUNCTION alpl(v(mV)) {
    alpl = exp(1.e-3*zetal*(v-vhalfl-sh)*9.648e4/(8.315*(273.16+celsius)))
}

FUNCTION betl(v(mV)) {
    betl = exp(1.e-3*zetal*gml*(v-vhalfl-sh)*9.648e4/(8.315*(273.16+celsius)))
}

DERIVATIVE states {     : exact when v held constant; integrates over dt step
    rates(v)
    n' = (ninf - n) / taun
    l' = (linf - l) / taul
}

PROCEDURE rates(v (mV)) { :callable from hoc
    LOCAL a,qt
    qt = q10^((celsius-24)/10)

    a = alpn(v)
    ninf = 1/(1 + a)
    taun = betn(v)/(qt*a0n*(1+a))
    if (taun<nmin) {
        taun=nmin
    }

    a = alpl(v)
    linf = 1/(1+ a)
    taul = 0.26*(v+50-sh)/qtl
    if (taul<lmin/qtl) {
        taul=lmin/qtl
    }
}

Loading data, please wait...