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

O-LM interneuron model (Lawrence et al. 2006)

 Download zip file 
Help downloading and running models
Accession:102288
Exploring the kinetics and distribution of the muscarinic potassium channel, IM, in 2 O-LM interneuron morphologies. Modulation of the ion channel by drugs such as XE991 (antagonist) and retigabine (agonist) are simulated in the models to examine the role of IM in spiking properties.
Reference:
1 . Lawrence JJ, Saraga F, Churchill JF, Statland JM, Travis KE, Skinner FK, McBain CJ (2006) Somatodendritic Kv7/KCNQ/M channels control interspike interval in hippocampal interneurons. J Neurosci 26:12325-38 [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:
Cell Type(s): Hippocampus CA1 interneuron oriens alveus GABA cell;
Channel(s): I L high threshold; I N; I T low threshold; I A; I K; I K,leak; I M; I h; I K,Ca;
Gap Junctions:
Receptor(s): Muscarinic;
Gene(s):
Transmitter(s):
Simulation Environment: NEURON;
Model Concept(s): Ion Channel Kinetics; Oscillations; Detailed Neuronal Models; Action Potentials;
Implementer(s):
Search NeuronDB for information about:  Hippocampus CA1 interneuron oriens alveus GABA cell; Muscarinic; I L high threshold; I N; I T low threshold; I A; I K; I K,leak; I M; I h; I K,Ca;
/
RichyandStarfish
readme.html
cad.mod *
ICaL.mod *
ICaT.mod *
Ih.mod
IKa.mod *
IKCa.mod *
Ikdrf.mod *
Ikdrfaxon.mod *
Ikdrs.mod *
Ikdrsaxon.mod *
Ikleakaxon.mod *
Ikleaksd.mod *
IMminret.mod *
IMmintau.mod *
Ipassaxon.mod *
Ipasssd.mod *
Naaxon.mod *
Nadend.mod *
Nasoma.mod *
SIN.mod *
fig9.hoc
initactiveproxRichy.hoc
initactiveproxStarfish.hoc
initactivesdRichy.hoc
initactivesdStarfish.hoc
initsomaRichy.hoc
initsomaStarfish.hoc
mosinit.hoc
Richytrunctest2.hoc
screenshot.jpg
Starfishtrunc.hoc
                            
TITLE Calcium ion accumulation and diffusion
: The internal coordinate system is set up in PROCEDURE coord_cadifus()
: and must be executed before computing the concentrations.
: The scale factors set up in this procedure do not have to be recomputed
: when diam or DFree are changed.
: The amount of calcium in an annulus is ca[i]*diam^2*vol[i] with
: ca[0] being the second order correct concentration at the exact edge
: and ca[NANN-1] being the concentration at the exact center

NEURON {
	SUFFIX cad
	USEION ca READ cao, cai, ica WRITE cai, ica
	GLOBAL vol, Buffer0
	RANGE ipump
}
DEFINE NANN  4

UNITS {
        (mol)   = (1)
	(molar) = (1/liter)
	(mM)	= (millimolar)
	(um)	= (micron)
	(mA)	= (milliamp)
	FARADAY = (faraday)	 (10000 coulomb)
	PI	= (pi) (1)
}

PARAMETER {
	DFree = .6	(um2/ms)
	diam		(um)
	cao		(mM)
	ica		(mA/cm2)
	k1buf = 500	(/mM-ms)
	k2buf = 0.5	(/ms)
        k1=1.e10            (um3/s)
        k2=50.e7            (/s)	: k1*50.e-3
        k3=1.e10            (/s)	: k1
        k4=5.e6	            (um3/s)	: k1*5.e-4
	area		(um2)
} 
CONSTANT { volo=1  (liter)}

ASSIGNED {
	cai		(mM)
	vol[NANN]	(1)	: gets extra cm2 when multiplied by diam^2
	ipump           (mA/cm2)
	last_ipump           (mA/cm2)

}

STATE {
	ca[NANN]	(mM) <1.e-5> : ca[0] is equivalent to cai
	CaBuffer[NANN]  (mM)
	Buffer[NANN]    (mM)
        pump            (mol/cm2) <1.e-3>
        pumpca          (mol/cm2) <1.e-15>

}

LOCAL totpump, kd,totbuf

INITIAL {
           totpump=0.2
           pump=totpump/(1+1.e-18*k4*cao/k3)
           pumpca=2.e-22
	   ipump=0

           totbuf=1.2
           kd=k2buf/k1buf
           FROM i=0 TO NANN-1 {
                ca[i] = cai
		CaBuffer[i] =(totbuf*ca[i])/(kd+ca[i])
		Buffer[i] = totbuf - CaBuffer[i]
                }

}

BREAKPOINT {
	SOLVE state METHOD sparse
	last_ipump=ipump
	ica = ipump
}

LOCAL coord_done

INITIAL {
	if (coord_done == 0) {
		coord_done = 1
		coord()
	}
	: note Buffer gets set to Buffer0 automatically
	: and CaBuffer gets set to 0 (Default value of CaBuffer0) as well
	FROM i=0 TO NANN-1 {
		ca[i] = cai
	}
}

LOCAL frat[NANN] 	: gets extra cm when multiplied by diam

PROCEDURE coord() {
	LOCAL r, dr2
	: cylindrical coordinate system  with constant annuli thickness to
	: center of cell. Note however that the first annulus is half thickness
	: so that the concentration is second order correct spatially at
	: the membrane or exact edge of the cell.
	: note ca[0] is at edge of cell
	:      ca[NANN-1] is at center of cell
	r = 1/2					:starts at edge (half diam)
	dr2 = r/(NANN-1)/2			:half thickness of annulus
	vol[0] = 0
	frat[0] = 2*r
	FROM i=0 TO NANN-2 {
		vol[i] = vol[i] + PI*(r-dr2/2)*2*dr2	:interior half
		r = r - dr2
		frat[i+1] = 2*PI*r/(2*dr2)	:exterior edge of annulus
					: divided by distance between centers
		r = r - dr2
		vol[i+1] = PI*(r+dr2/2)*2*dr2	:outer half of annulus
	}
}

LOCAL dsq, dsqvol : can't define local variable in KINETIC block or use
		:  in COMPARTMENT
KINETIC state {
	COMPARTMENT i, diam*diam*vol[i]*1(um) {ca CaBuffer Buffer}
        COMPARTMENT (1.e10)*area {pump pumpca}
        COMPARTMENT (1.e15)*volo {cao}

	~ ca[0] << (-(ica-last_ipump)*PI*diam*frat[0]*1(um)/(2*FARADAY))
	FROM i=0 TO NANN-2 {
		~ ca[i] <-> ca[i+1] (DFree*frat[i+1]*1(um), DFree*frat[i+1]*1(um))
	}
	dsq = diam*diam*1(um)
	FROM i=0 TO NANN-1 {
		dsqvol = dsq*vol[i]
		~ ca[i] + Buffer[i] <-> CaBuffer[i] (k1buf*dsqvol,k2buf*dsqvol)
	}
        ~ca[0] + pump <-> pumpca ((1.e-11)*k1*area, (1.e7)*k2*area)
        ~pumpca       <-> pump + cao ((1.e7)*k3*area, (1.e-11)*k4*area)

        ipump = 2*FARADAY*(f_flux-b_flux)/area

	cai = ca[0]
}
	
COMMENT
At this time, conductances (and channel states and currents are
calculated at the midpoint of a dt interval.  Membrane potential and
concentrations are calculated at the edges of a dt interval.  With
secondorder=2 everything turns out to be second order correct.
ENDCOMMENT




Loading data, please wait...