L5 PFC microcircuit used to study persistent activity (Papoutsi et al. 2014, 2013)

 Download zip file 
Help downloading and running models
Accession:155057
Using a heavily constrained biophysical model of a L5 PFC microcircuit we investigate the mechanisms that underlie persistent activity emergence (ON) and termination (OFF) and search for the minimum network size required for expressing these states within physiological regimes.
References:
1 . Papoutsi A, Sidiropoulou K, Cutsuridis V, Poirazi P (2013) Induction and modulation of persistent activity in a layer V PFC microcircuit model. Front Neural Circuits 7:161 [PubMed]
2 . Papoutsi A, Sidiropoulou K, Poirazi P (2014) Dendritic nonlinearities reduce network size requirements and mediate ON and OFF states of persistent activity in a PFC microcircuit model. PLoS Comput Biol 10:e1003764 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Dendrite; Connectionist Network;
Brain Region(s)/Organism: Neocortex;
Cell Type(s): Neocortex L5/6 pyramidal GLU cell;
Channel(s): I Na,p; I Na,t; I L high threshold; I A; I CAN; I Potassium; I R; I_AHP;
Gap Junctions:
Receptor(s): GabaA; GabaB; AMPA; NMDA;
Gene(s):
Transmitter(s):
Simulation Environment: NEURON;
Model Concept(s): Active Dendrites; Working memory;
Implementer(s): Papoutsi, Athanasia [athpapoutsi at gmail.com];
Search NeuronDB for information about:  Neocortex L5/6 pyramidal GLU cell; GabaA; GabaB; AMPA; NMDA; I Na,p; I Na,t; I L high threshold; I A; I CAN; I Potassium; I R; I_AHP;
/
L5microcircuit
mechanism
ampa.mod
ampain.mod
cadyn.mod
cal.mod
can.mod
car.mod
cat.mod
gabaa.mod *
gabaain.mod
gabab.mod
h.mod
ican.mod
iks.mod
kadist.mod
kca.mod
kct.mod
kdr.mod *
naf.mod
nap.mod
netstim.mod *
NMDA.mod
NMDA_syn.mod
sinclamp.mod *
vecstim.mod *
                            
:  Vector stream of events

NEURON {
	ARTIFICIAL_CELL VecStim
	RANGE delay
}

ASSIGNED {
	index
	etime (ms)
	space
	delay
}

PARAMETER { 
	::delay = 0.0
} 

INITIAL {
	index = 0
	: delay = 0
	element()
	if (index > 0) {
		net_send(delay + etime - t, 1)
	}
}

NET_RECEIVE (w) {


	if (flag == 1) {
		net_event(t)
		element()
		if (index > 0) {
			net_send(delay + etime - t, 1)
		}
	}
}

VERBATIM
extern double* vector_vec();
extern int vector_capacity();
extern void* vector_arg();
ENDVERBATIM

PROCEDURE element() {
VERBATIM	
  { void* vv; int i, size; double* px;
	i = (int)index;
	if (i >= 0) {
		vv = *((void**)(&space));
		if (vv) {
			size = vector_capacity(vv);
			px = vector_vec(vv);
			if (i < size) {
				etime = px[i];
				index += 1.;
			}else{
				index = -1.;
			}
		}else{
			index = -1.;
		}
	}
  }
ENDVERBATIM
}

PROCEDURE play() {
VERBATIM
	void** vv;
	vv = (void**)(&space);
	*vv = (void*)0;
	if (ifarg(1)) {
		*vv = vector_arg(1);
	}
ENDVERBATIM
}
        


Loading data, please wait...