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

Cerebellum granule cell FHF (Dover et al. 2016)

 Download zip file 
Help downloading and running models
Accession:206267
"Neurons in vertebrate central nervous systems initiate and conduct sodium action potentials in distinct subcellular compartments that differ architecturally and electrically. Here, we report several unanticipated passive and active properties of the cerebellar granule cell's unmyelinated axon. Whereas spike initiation at the axon initial segment relies on sodium channel (Nav)-associated fibroblast growth factor homologous factor (FHF) proteins to delay Nav inactivation, distal axonal Navs show little FHF association or FHF requirement for high-frequency transmission, velocity and waveforms of conducting action potentials. ...'
Reference:
1 . Dover K, Marra C, Solinas S, Popovic M, Subramaniyam S, Zecevic D, D'Angelo E, Goldfarb M (2016) FHF-independent conduction of action potentials along the leak-resistant cerebellar granule cell axon. Nat Commun 7:12895 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Axon; Dendrite;
Brain Region(s)/Organism: Cerebellum;
Cell Type(s): Cerebellum interneuron granule GLU cell;
Channel(s): I A; I Calcium; I K; I K,Ca; I M; I Na,p; I Na,t; I Potassium; I Sodium; Kir;
Gap Junctions:
Receptor(s): AMPA; Gaba; NMDA;
Gene(s):
Transmitter(s):
Simulation Environment: NEURON;
Model Concept(s):
Implementer(s): Solinas, Sergio [solinas at unipv.it]; Subramaniyam, Sathyaa [sakthisathyaa at gmail.com]; D'Angelo, Egidio [dangelo at unipv.it]; Goldfarb, Mitchell goldfarb at genectr.hunter.cuny.edu];
Search NeuronDB for information about:  Cerebellum interneuron granule GLU cell; AMPA; NMDA; Gaba; I Na,p; I Na,t; I A; I K; I M; I K,Ca; I Sodium; I Calcium; I Potassium; Kir;
/
GrC_FHF_ModelDB
images
README.html
AmpaCOD.mod
GRC_CA.mod *
GRC_CALC.mod *
GRC_GABA.mod *
GRC_KA.mod *
GRC_KCA.mod *
GRC_KIR.mod *
GRC_KM.mod
GRC_KV.mod *
GRC_LKG1.mod *
GRC_LKG2.mod *
GRC_LKG3.mod
GRC_NA.mod
Grc_sine.mod
NmdaS.mod
Pregen.mod *
CClamp_soma.ses
ComPanel.hoc
Fig5.ses
Grc_Cell.hoc
helper_procedures.hoc
Ina.ses
KOFHF.DAPF.slowalfabeta.REV5.30.2016.ses
modComPanel.hoc
mosinit.hoc
Parametri.hoc
Start.hoc
WTFHF.DAPF.slowalfabeta.REV5.30.2016.ses
                            
: $Id: pregen.mod,v 1.3 2000/05/16 11:16:56 hines Exp $
: comments at end

NEURON	{ 
  POINT_PROCESS SpikeGenerator
  RANGE y
  RANGE fast_invl, slow_invl, burst_len, start, end,delay
  RANGE noise
}

PARAMETER {
	fast_invl	= 10 (ms)	: time between spikes in a burst (msec)
	slow_invl	= 0 (ms)	: burst period (msec)
: actually, above is interburst period in conformity with original version
: see
	burst_len	= 10		: burst length (# spikes)
	start		= 50 (ms)	: start of first interburst interval
	end		= 1e10 (ms)	: time to stop bursting
	noise		= 0		: amount of randomeaness (0.0 - 1.0)
	delay		= 4
}

ASSIGNED {
	y
	burst
	event (ms)
	burst_off (ms)
	burst_on (ms)
	toff (ms)
	on
}

PROCEDURE seed(x) {
	set_seed(x)
}

INITIAL {
	on = 1
	toff = 1e9
	y = -90
	burst = 0
	event = start - slow_invl
	:
	event_time()
	while (on == 1 && event < 0) {
		event_time()
	}
	if (on == 1) {
		net_send(event, 1)
	}
}	

FUNCTION interval(mean (ms)) (ms) {
	if (mean <= 0.) {
		mean = .01 (ms) : I would worry if it were 0.
		: since mean is a local variable, if the number it is set
		: to is dimensionless, mean will be dimensionless.
	}
	if (noise == 0) {
		interval = mean
	}else{
		interval = (1. - noise)*mean + noise*(mean*exprand(1)+delay) : (delay+noise*mean*exprand(1))
	}
}

PROCEDURE event_time() {
	if (slow_invl == 0 || (burst != 0. && burst_len > 1)) {
		event = event + interval(fast_invl)
		if (event > burst_on + burst_off) {
			burst = 0.
		}
	}else{
		burst = 1.
: if slow_invl from beginning of burst to beginning of burst
:		event = event + interval(slow_invl - (burst_len-1)*fast_invl)
: use following if slow_invl is interburst interval
		event = event + interval(slow_invl)
		burst_on = event
		burst_off = interval((burst_len - 1)*fast_invl)-1e-6
	}
	if (event > end) {
		on = 0
	}
}

NET_RECEIVE (w) {
:printf("Pregen receive t=%g flag=%g\n", t, flag) 
	if (flag == 1 && on == 1) {
		y = 20
		net_event(t)
		event_time()
		net_send(event - t, 1)
		net_send(.1, 2)
	}
	if (flag == 2) {
		y = -90
	}
}

COMMENT
Presynaptic spike generator
---------------------------

This mechanism has been written to be able to use synapses in a single
neuron receiving various types of presynaptic trains.  This is a "fake"
presynaptic compartment containing a fast spike generator.  The trains
of spikes can be either periodic or noisy (Poisson-distributed), and 
either tonic or bursting.

Parameters;
   noise: 	between 0 (no noise-periodic) and 1 (fully noisy)
   fast_invl: 	fast interval, mean time between spikes (ms)
   slow_invl:	slow interval, mean burst silent period (ms), 0=tonic train
   burst_len: 	mean burst length (nb. spikes)

Written by Z. Mainen, modified by A. Destexhe, The Salk Institute

Modified by Michael Hines for use with CVode

Modified by Michael Hines to use logical event style with NET_RECEIVE
ENDCOMMENT


Loading data, please wait...