ModelDB is moving. Check out our new site at https://modeldb.science. The corresponding page is https://modeldb.science/50997.

Ribbon Synapse (Sikora et al 2005)

 Download zip file 
Help downloading and running models
Accession:50997
A model of the ribbon synapse was developed to replicate both pre- and postsynaptic functions of this glutamatergic juncture. The presynaptic portion of the model is rich in anatomical and physiological detail and includes multiple release sites for each ribbon based on anatomical studies of presynaptic terminals, presynaptic voltage at the terminal, the activation of voltage-gated calcium channels and a calcium-dependent release mechanism whose rate varies as a function of the calcium concentration that is monitored at two different sites which control both an ultrafast, docked pool of vesicles and a release ready pool of tethered vesicles. See paper for more and details.
Reference:
1 . Sikora MA, Gottesman J, Miller RF (2005) A computational model of the ribbon synapse. J Neurosci Methods 145:47-61 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Synapse;
Brain Region(s)/Organism:
Cell Type(s): Retina ganglion GLU cell; Retina bipolar GLU cell;
Channel(s): I L high threshold;
Gap Junctions:
Receptor(s): AMPA; NMDA;
Gene(s):
Transmitter(s): Glutamate;
Simulation Environment: NEURON;
Model Concept(s): Intrinsic plasticity; Calcium dynamics;
Implementer(s): Sikora, Michael [Sikora at umn.edu];
Search NeuronDB for information about:  Retina ganglion GLU cell; Retina bipolar GLU cell; AMPA; NMDA; I L high threshold; Glutamate;
TITLE HH style channels for spiking retinal ganglion cells
:
: Modified from Fohlmeister et al, 1990, Brain Res 510, 343-345
: by TJ Velte March 17, 1995
: must be used with calcium pump mechanism, i.e. capump.mod
:
:

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

NEURON {
	SUFFIX spike
	USEION na READ ena WRITE ina
	USEION k READ ek WRITE ik
	USEION ca READ cai, eca, cao WRITE ica
	RANGE gnabar, gkbar, gabar, gcabar, gkcbar
	RANGE m_inf, h_inf, n_inf, p_inf, q_inf, c_inf
	RANGE tau_m, tau_h, tau_n, tau_p, tau_q, tau_c
	RANGE m_exp, h_exp, n_exp, p_exp, q_exp, c_exp
        RANGE idrk, iak, icak

}


UNITS {
	(molar) = (1/liter)
	(mM) = (millimolar)
	(mA) = (milliamp)
	(mV) = (millivolt)

}

PARAMETER {
	gnabar	= 0.04	(mho/cm2)
	gkbar	= 0.012 (mho/cm2)
	gabar	= 0.036	(mho/cm2)
	gcabar	= 0.002	(mho/cm2)
	gkcbar	= 0.00005 (mho/cm2)
	ena	= 35	(mV)
	ek	= -75	(mV)
	eca		(mV)
	cao	= 1.8	(mM)
	cai     = 0.0001 (mM)
	dt              (ms)
	v               (mV)

}

STATE {
	m h n p q c 
}

INITIAL {
: The initial values were determined at a resting value of -66.3232 mV in a single-compartment
:	m = 0.0155
:	h = 0.9399
:	n = 0.0768
:	p = 0.0398
:	q = 0.4526
:	c = 0.0016
: at -60 mV
        m = 0.0345
        h = 0.8594
        n = 0.1213
        p = 0.0862
        q = 0.2534
        c = 0.0038
}

ASSIGNED {
	ina	(mA/cm2)
	ik	(mA/cm2)
         idrk    (mA/cm2)
         iak     (mA/cm2)
         icak    (mA/cm2)
	ica	(mA/cm2)
	m_inf h_inf n_inf p_inf q_inf c_inf
	tau_m tau_h tau_n tau_p tau_q tau_c
	m_exp h_exp n_exp p_exp q_exp c_exp

}

BREAKPOINT {
	SOLVE states
	ina = gnabar * m*m*m*h * (v - ena)
        idrk = gkbar * n*n*n*n * (v - ek)
        iak =  gabar * p*p*p*q * (v - ek)
        icak = gkcbar * ((cai / 0.001)/ (1 + (cai / 0.001))) * (v - ek)
        ik = idrk + iak + icak
	ica = gcabar * c*c*c * (v - eca)

}

PROCEDURE states() {	: exact when v held constant
	evaluate_fct(v)
	m = m + m_exp * (m_inf - m)
	h = h + h_exp * (h_inf - h)
	n = n + n_exp * (n_inf - n)
	p = p + p_exp * (p_inf - p)
	q = q + q_exp * (q_inf - q)
	c = c + c_exp * (c_inf - c)

	VERBATIM
	return 0;
	ENDVERBATIM

}

UNITSOFF

PROCEDURE evaluate_fct(v(mV)) { LOCAL a,b
	
:NA m
	a = (-0.6 * (v+30)) / ((exp(-0.1*(v+30))) - 1)
	b = 20 * (exp((-1*(v+55))/18))
	tau_m = 1 / (a + b)
	m_inf = a * tau_m

:NA h
	a = 0.4 * (exp((-1*(v+50))/20))
	b = 6 / ( 1 + exp(-0.1 *(v+20)))
	tau_h = 1 / (a + b)
	h_inf = a * tau_h

:K n (non-inactivating, delayed rectifier)
	a = (-0.02 * (v+40)) / ((exp(-0.1*(v+40))) - 1)
	b = 0.4 * (exp((-1*(v + 50))/80))
	tau_n = 1 / (a + b)
	n_inf = a * tau_n

:K (inactivating)
	a = (-0.006 * (v+90)) / ((exp(-0.1*(v+90))) - 1)
	b = 0.1 * (exp((-1*(v + 30))/10))
	tau_p = 1 / (a + b)
	p_inf = a * tau_p

	a = 0.04 * (exp((-1*(v+70))/20))
	b = 0.6 / ( 1 + exp(-0.1 *(v+40)))	
	tau_q = 1 / (a + b)
	q_inf = a * tau_q

:CA channel
	a = (-0.3 * (v+13)) / ((exp(-0.1*(v+13))) - 1)
	b = 10 * (exp((-1*(v + 38))/18))
	tau_c = 1 / (a + b)
	c_inf = a * tau_c

: State vars to inifinity
	m_exp = 1 - exp(-dt/tau_m)
	h_exp = 1 - exp(-dt/tau_h)
	n_exp = 1 - exp(-dt/tau_n)
	p_exp = 1 - exp(-dt/tau_p)
	q_exp = 1 - exp(-dt/tau_q)
	c_exp = 1 - exp(-dt/tau_c)

}

UNITSON

Loading data, please wait...