Layer V PFC pyramidal neuron used to study persistent activity (Sidiropoulou & Poirazi 2012)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:144089
"... Here, we use a compartmental modeling approach to search for discriminatory features in the properties of incoming stimuli to a PFC pyramidal neuron and/or its response that signal which of these stimuli will result in persistent activity emergence. Furthermore, we use our modeling approach to study cell-type specific differences in persistent activity properties, via implementing a regular spiking (RS) and an intrinsic bursting (IB) model neuron. ... Collectively, our results pinpoint to specific features of the neuronal response to a given stimulus that code for its ability to induce persistent activity and predict differential roles of RS and IB neurons in persistent activity expression. "
Reference:
1 . Sidiropoulou K, Poirazi P (2012) Predictive features of persistent activity emergence in regular spiking and intrinsic bursting model neurons. PLoS Comput Biol 8:e1002489 [PubMed]
Citations  Citation Browser
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): Neocortex V1 L6 pyramidal corticothalamic GLU cell;
Channel(s): I Na,p; I Na,t; I L high threshold; I A; I K; I K,Ca; I CAN;
Gap Junctions:
Receptor(s): GabaA; GabaB; AMPA; NMDA; IP3;
Gene(s):
Transmitter(s): Gaba; Glutamate;
Simulation Environment: NEURON;
Model Concept(s): Activity Patterns; Detailed Neuronal Models;
Implementer(s): Sidiropoulou, Kyriaki [sidirop at imbb.forth.gr];
Search NeuronDB for information about:  Neocortex V1 L6 pyramidal corticothalamic GLU cell; GabaA; GabaB; AMPA; NMDA; IP3; I Na,p; I Na,t; I L high threshold; I A; I K; I K,Ca; I CAN; Gaba; Glutamate;
// This template is used to create a band of sections by
// randomly selecting sections within a specified region (in
// interval [lo hi]). Sections can be selected with or without
// repetition and synapses can be allocated at predifined
// locations along these sections 
// written by Yiota Poirazi, July 2001, poirazi@LNC.usc.edu


objref synapse_band_shape, gaba_band_shape
synapse_band_shape=new Shape() // shape graph to plot AMPA and NMDA synapses
gaba_band_shape=new Shape()    // shape graph to plot GABA_A and GABA_B synapses

begintemplate SynapseBand

public pick_and_salloc, pick_and_SALLOC, pick, pick_and_remove, pick_and_SALLOC_GABAa, pick_and_SALLOC_GABAb
objref all_secs, secs_in_band, selected_secs, rnum, ltmp  //, radiatum
strdef exec_str

proc init () {
  all_secs=$o1     // list of all sections to choose from 
  lo=$2            // minimum distance from soma
  hi=$3            // maximum distance from soma
  actual_res=$4    // obsolete. Used only if more than one synapses are to be placed at a specific location
  desired_res=$5   // obsolete. Used only if more than one synapses are to be placed at a specific location
  PID=$6           // random number generator seed 

//  print "choosing sections that are between ", lo, " and ", hi, " microns from the soma"	

  secs_in_band=new List()
  if (PID < 0) {
     PID=-PID       // if PID < 0 choose sections branchwise
     sprint(exec_str,"choose_secs_branchwise(%s,%s,%g,%g,%g,%g)", all_secs,secs_in_band,lo,hi,actual_res,desired_res)
  } else {  	
     sprint(exec_str,"choose_secs(%s,%s,%g,%g,%g,%g)", all_secs,secs_in_band,lo,hi,actual_res,desired_res)
  }
  execute1(exec_str)  // use ../lib/choose-secs.hoc to choose sections and store them in "secs_in_band"

  rnum=new Random(PID)
}

proc cdto() {    // Access a given section
  ltmp=secs_in_band.object(num)
  access ltmp.section_ref.sec
//  print secname(), "accessed by SynapseBand.pick()"
}

proc cdto_rm() { // Remove the section just accessed
  ltmp=secs_in_band.object(num)
  access ltmp.section_ref.sec
  print secname(), " accessed by SynapseBand.pick(). cdto_rm() is removing it."
  secs_in_band.remove(num)
}

proc pick() {  //randomly (uniformly) pick a section in band and access it
  num=rnum.uniform(0,secs_in_band.count()-1)
  cdto(num)
}

proc pick_and_remove() { //randomly (uniform) pick a section in band, access and remove it 
    num=rnum.uniform(0,secs_in_band.count()-1)
    cdto_rm(num)
}

proc pick_and_salloc() { // randomly pick a section in band, access it and allocate a synapse (AMPA or NMDA) on it
  pick()
  sprint(exec_str,"salloc(%s,%s,%g)", $o1,$o2,ltmp.range_ref)     // in ../lib/salloc.hoc
  execute1(exec_str)
  sprint(exec_str,"synapse_band_shape.point_mark(%s,%d)", $o1,$3) // make a shape graph and print a 
  execute1(exec_str)						  // dot at the location of the synapse 
}

proc pick_and_SALLOC() { // same as above but made to work with both AMPA/NMDA and GABA synapses (not used)
  pick()
  sprint(exec_str,"SALLOC(%s,%s,%g,%d)", $o1,$o2,ltmp.range_ref,$4) // in ../lib/salloc.hoc
  execute1(exec_str)
  sprint(exec_str,"synapse_band_shape.point_mark(%s,%d)", $o1,$3)
  execute1(exec_str)
}

proc pick_and_SALLOC_GABAa() { // Used if only GABA_A synapses will be allocated
  pick()
  sprint(exec_str,"SALLOC_GABAa(%s,%g,%d,%g)", $o1,ltmp.range_ref, $3, $4)   // in ../lib/salloc.hoc 
  execute1(exec_str)
  sprint(exec_str,"gaba_band_shape.point_mark(%s,%d)", $o1, $2)
  execute1(exec_str)
}

proc pick_and_SALLOC_GABAb() {  // Used if only GABA_B synapses will be allocated
  pick()
  sprint(exec_str,"SALLOC_GABAb(%s,%g,%d,%g)", $o1,ltmp.range_ref, $3, $4)   // in ../lib/salloc.hoc
  execute1(exec_str)
  sprint(exec_str,"gaba_band_shape.point_mark(%s,%d)", $o1,$2)
  execute1(exec_str)
}

endtemplate SynapseBand