Modelling reduced excitability in aged CA1 neurons as a Ca-dependent process (Markaki et al. 2005)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:119266
"We use a multi-compartmental model of a CA1 pyramidal cell to study changes in hippocampal excitability that result from aging-induced alterations in calcium-dependent membrane mechanisms. The model incorporates N- and L-type calcium channels which are respectively coupled to fast and slow afterhyperpolarization potassium channels. Model parameters are calibrated using physiological data. Computer simulations reproduce the decreased excitability of aged CA1 cells, which results from increased internal calcium accumulation, subsequently larger postburst slow afterhyperpolarization, and enhanced spike frequency adaptation. We find that aging-induced alterations in CA1 excitability can be modelled with simple coupling mechanisms that selectively link specific types of calcium channels to specific calcium-dependent potassium channels."
Reference:
1 . Markaki M, Orphanoudakis S, Poirazi P (2005) Modelling reduced excitability in aged CA1 neurons as a calcium-dependent process Neurocomputing 65-66:305-314
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: Hippocampus;
Cell Type(s): Hippocampus CA1 pyramidal GLU cell;
Channel(s): I Na,p; I Na,t; I L high threshold; I N; I A; I K; I M; I K,Ca; I R;
Gap Junctions:
Receptor(s):
Gene(s):
Transmitter(s):
Simulation Environment: NEURON;
Model Concept(s): Activity Patterns; Aging/Alzheimer`s;
Implementer(s):
Search NeuronDB for information about:  Hippocampus CA1 pyramidal GLU cell; I Na,p; I Na,t; I L high threshold; I N; I A; I K; I M; I K,Ca; I R;
/
CA1_Aged
lib
basic_graphics.hoc *
basic-graphics.hoc *
choose-secs.hoc *
current-balance.hoc
cut-sections.hoc *
deduce-ratio.hoc *
find-gmax.hoc *
GABA_shiftsyn.hoc *
GABA_shiftsyn_bg.hoc *
ken.h *
map-segments-to-3d.hoc *
maxmin.hoc *
mod_func.c *
newshiftsyn *
newshiftsyn.c *
num-rec.h *
salloc.hoc *
shiftsyn-init_bg.hoc *
shiftsyn-initA.hoc *
spikecount.hoc *
tune-epsps.hoc *
vector-distance.hoc *
verbose-system.hoc *
                            
// For each band of AMPA and NMDA synapses, this function makes a file with
// the stimulation train and shifts the activation time (by temporal_offset) 
// written by Yiota Poirazi, July 2001, poirazi@LNC.usc.edu

double iaryE[1000]
objref varyE[1000], s_file, stimtmp, rpid, shiftsynf
stimtmp=new Vector()
strdef shiftsyn_filename, syscmd, estr, shiftsyns

proc shiftsyn_init () { local synapses, temporal_offset, hertz, gmax_default, PID, lo, hi
    total_synapses = $1        // number of synapses in the band
    tstop = $2		       // stimulation end time
    dt = $3
    hertz = $4                 // stimulation train frequency 
    synch = $5                 // synchronous or a synchronous stimulation of synapses
    perio = $6		       // periodic or not periodic stimulation
    PID = $7
    PID = abs(PID)             // only positive random seeds used for spike train generation 
    temporal_offset = $8       // shift stimulation time by temporal_offset
    skip = $9		       // time points to skip before starting the spike train
    items = int(tstop/dt)      // number of stimuli (firing patterns) for each synapse

// Make the desired activation pattern file and
// Set AMPA and NMDA pointers to activation pattern

   if (hertz > 3) {           // in most cases 
        sprint(shiftsyn_filename,"shiftsyn-%d-%.2f-%.2f-%.2f-%.2f-%.2f-%d-%.2f",\
            total_synapses,tstop,dt,hertz,synch,perio,PID,temporal_offset)   // filename
              
        sprint(syscmd,"newshiftsyn shiftsyn %d %g %g %g %g %g %d %g",\
         total_synapses,tstop,dt,hertz,synch,perio,PID,temporal_offset)  // use newshiftsyn to make
								         // stimulation train

        system(syscmd)       // Same as typing syscmd in DOS, execute above command
        print  syscmd
        s_file = new File()
        s_file.ropen(shiftsyn_filename) // open the stimulation train file
        stimtmp.scanf(s_file) //read temporal stimulation pattern in a 1-d vector
        s_file.close()
  
  } else {
  
// for single shock experiments, set the single spike at t = 0+offset (synchronous stimulation for all synapses)
     
       stimtmp = new Vector(items*total_synapses,0) 
       offset = temporal_offset/dt
       for i = 0, total_synapses-1 {
          stimtmp.x[total_synapses*offset + i] = 1
       } 
 }
 
 for i=0,total_synapses-1 {
//    printf(" -- synapse %d\n", i)

    varyE[i] = new Vector(items)  // for each synapse, save firing pattern in this vector

  // Put the firing patterns from stimtmp (1-d vector) for each syanpse i
 
    for j=0,items-1 {   
            varyE[i].x[j]=stimtmp.x[i + j*total_synapses] 

    }
 }

//  print "setpointer to each synapse"

    for s=0, total_synapses-1 {
        sprint(estr,"varyE[%d].play(&iaryE[%d])", s,s)
        execute1(estr)
//        print estr

        sprint(estr,"setpointer ampa[%d].pre, iaryE[%d]", s+skip,s)
        execute1(estr)
//        print estr

        sprint(estr,"setpointer nmda[%d].pre, iaryE[%d]", s+skip,s)
        execute1(estr)
//        print estr
         
      
       }
    
sprint(econ.syscmd,  "rm %s", shiftsyn_filename) // remove firing pattern file
print  econ.syscmd
system(econ.syscmd) 

}