Effects of electric fields on cognitive functions (Migliore et al 2016)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:190559
The paper discusses the effects induced by an electric field at power lines frequency on neuronal activity during cognitive processes.
Reference:
1 . Migliore R, De Simone G, Leinekugel X, Migliore M (2017) The possible consequences for cognitive functions of external electric fields at power line frequency on hippocampal CA1 pyramidal neurons. Eur J Neurosci 45:1024-1031 [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: Hippocampus;
Cell Type(s): Hippocampus CA1 pyramidal GLU cell;
Channel(s): I Na,t; I A; I K; I h;
Gap Junctions:
Receptor(s): AMPA;
Gene(s):
Transmitter(s): Glutamate;
Simulation Environment: NEURON;
Model Concept(s): Activity Patterns; Dendritic Action Potentials; Detailed Neuronal Models; Action Potentials; Synaptic Integration; Extracellular Fields; Gamma oscillations; Pattern Recognition; Spatio-temporal Activity Patterns;
Implementer(s): Migliore, Michele [Michele.Migliore at Yale.edu]; Migliore, Rosanna [rosanna.migliore at cnr.it];
Search NeuronDB for information about:  Hippocampus CA1 pyramidal GLU cell; AMPA; I Na,t; I A; I K; I h; Glutamate;
/
MiglioreEJN2016
readme.html
distr.mod *
distr2.mod
fzap.mod *
Gfluct.mod
h.mod *
kadist.mod *
kaprox.mod *
kdrca1.mod *
na3n.mod *
naxn.mod *
netstimm.mod *
xtrau.mod *
anatscale.hoc *
biophys.hoc
biophysPLAST.hoc
calcd.hoc
calcrxcu.hoc
ef_fig.png
efheader.hoc *
fig1B.hoc
fixnseg.hoc *
freq50.xfm
geo5038804.hoc *
init.hoc
interpxyzu.hoc *
LTDran.hoc
media-st er.xfm
mosinit.hoc
Napical.txt
no_ef_fig.png
Plast.hoc
setnseg.hoc *
setpointersu.hoc *
soma.hoc
synapses.hoc
voltage.ses
zapstimu.hoc
                            
// based on interpxyz.hoc,v 1.2 2005/09/10 23:02:15
/* Computes xyz coords of nodes in a model cell 
   whose topology & geometry are defined by pt3d data.
   Expects sections to already exist, and that the xtrau mechanism has been inserted
 */


// original data, irregularly spaced
objref xx, yy, zz, length
// interpolated data, spaced at regular intervals
objref xint, yint, zint, range

proc grindaway() { local ii, nn, kk, xr
  forall {
//    if (ismembrane("xtra")) {
    if (ismembrane("xtrau")) {
    // get the data for the section
      nn = n3d()
      xx = new Vector(nn)
      yy = new Vector(nn)
      zz = new Vector(nn)
      length = new Vector(nn)

      for ii = 0,nn-1 {
        xx.x[ii] = x3d(ii)
        yy.x[ii] = y3d(ii)
        zz.x[ii] = z3d(ii)
        length.x[ii] = arc3d(ii)
      }

      // to use Vector class's .interpolate() 
      // must first scale the independent variable
      // i.e. normalize length along centroid
      length.div(length.x[nn-1])

      // initialize the destination "independent" vector
      range = new Vector(nseg+2)
      range.indgen(1/nseg)
      range.sub(1/(2*nseg))
      range.x[0]=0
      range.x[nseg+1]=1

      // length contains the normalized distances of the pt3d points 
      // along the centroid of the section.  These are spaced at 
      // irregular intervals.
      // range contains the normalized distances of the nodes along the 
      // centroid of the section.  These are spaced at regular intervals.
      // Ready to interpolate.

      xint = new Vector(nseg+2)
      yint = new Vector(nseg+2)
      zint = new Vector(nseg+2)
      xint.interpolate(range, length, xx)
      yint.interpolate(range, length, yy)
      zint.interpolate(range, length, zz)

//      // for each node, assign the xyz values to x_xtra, y_xtra, z_xtra
      // for each node, assign the xyz values to x_xtrau, y_xtrau, z_xtrau
//      for ii = 0, nseg+1 {
// don't bother computing coords of the 0 and 1 ends
// also avoid writing coords of the 1 end into the last internal node's coords
      for ii = 1, nseg {
        xr = range.x[ii]
/*
        x_xtra(xr) = xint.x[ii]
        y_xtra(xr) = yint.x[ii]
        z_xtra(xr) = zint.x[ii]
*/
        x_xtrau(xr) = xint.x[ii]
        y_xtrau(xr) = yint.x[ii]
        z_xtrau(xr) = zint.x[ii]
      }
    }
  }
}