A two networks model of connectivity-dependent oscillatory activity (Avella OJ et al. 2014)

 Download zip file 
Help downloading and running models
Accession:155705
Activity in a cortical network may express a single oscillation frequency, alternate between two or more distinct frequencies, or continually express multiple frequencies. In addition, oscillation amplitude may fluctuate over time. Interactions between oscillatory networks may contribute, but their effects are poorly known. Here, we created a two model networks, one generating on its own a relatively slow frequency (slow network) and one generating a fast frequency (fast network). We chose the slow or the fast network as source network projecting feed-forward connections to the other, or target network, and systematically investigated how type and strength of inter-network connections affected target network activity. Our results strongly depended on three factors: the type of the relevant (main) connection, its strength and the amount of source synapses. For high inter-network connection strengths, we found that the source network could completely impose its rhythm on the target network. Interestingly, the slow network was more effective at imposing its rhythm on the fast network than the other way around. The strongest entrainment occurred when excitatory cells of the slow network projected to excitatory or inhibitory cells of the fast network. Just as observed in rat activity at the prefrontal cortex satisfies the behavior described above, such that together, our results suggest that input from other oscillating networks may markedly alter a network’s frequency spectrum and may partly be responsible for the rich repertoire of temporal oscillation patterns observed in the brain.
Reference:
1 . Avella Gonzalez OJ, van Aerde KI, Mansvelder HD, van Pelt J, van Ooyen A (2014) Inter-network interactions: impact of connections between oscillatory neuronal networks on oscillation frequency and pattern. PLoS One 9:e100899 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Realistic Network;
Brain Region(s)/Organism:
Cell Type(s):
Channel(s):
Gap Junctions:
Receptor(s): GabaA; AMPA;
Gene(s):
Transmitter(s):
Simulation Environment: NEURON;
Model Concept(s): Oscillations; Brain Rhythms;
Implementer(s): Avella G. Oscar Javier [oscarjavella at gmail dot com];
Search NeuronDB for information about:  GabaA; AMPA;
/
AvellaEtAl2014
Two_netsPaper
mods
all_mods
AMPAg.mod *
GABA_input_.mod
K_pyr_bk.mod *
Na_pyr_bk.mod *
nmdaR.mod *
                            
: ampa.mod
: saturating synapse model using discrete events

NEURON {
  POINT_PROCESS AMPA_S
  RANGE g, g_eff,g_specif,cellu_area
  RANGE Cdur, Alpha, Beta, Erev, Rinf, Rtau
  NONSPECIFIC_CURRENT i
}

UNITS {
  (nA)   = (nanoamp)
  (mV)   = (millivolt)
  (uS) 	= (microsiemens)
  (um)  = (microns)
}

PARAMETER {
  Cdur  = 1.0   (ms)  : transmitter duration (rising phase)
  Alpha = 1.1   (/ms) : forward (binding) rate
  Beta  = 0.19  (/ms) : backward (dissociation) rate
  Erev  = 0     (mV)  : equilibrium potential
  g_specif = 1e-5	(uS/um2)		: conductance
  cellu_area= 1   (um2)
  g                 (uS)
}

ASSIGNED {
  v     (mV)   : postsynaptic voltage
  i     (nA)   : current = g*(v - Erev)
  g_eff (uS)   : conductance
  Rtau  (ms)   : time constant of channel binding
  Rinf  : fraction of open channels if xmtr was present "forever"
  synon : sum of weights of all synapses that are in the "onset" state
}

STATE { Ron Roff }  : initialized to 0 by default
: Ron and Roff are the total conductances of all synapses
:   that are in the "onset" (transmitter pulse ON)
:   and "offset" (transmitter pulse OFF) states, respectively

INITIAL {
  Rinf = Alpha / (Alpha + Beta)
  Rtau = 1 / (Alpha + Beta)
  synon = 0
  g=g_specif*cellu_area
}

BREAKPOINT {
  SOLVE release METHOD cnexp
  g_eff = g*(Ron + Roff)
  i = g_eff*(v - Erev)
}

DERIVATIVE release {
  Ron' = (synon*Rinf - Ron)/Rtau
  Roff' = -Beta*Roff
}

NET_RECEIVE(weight, on, r0, t0 (ms)) {
  : on == 1 if transmitter is present ("onset" state), otherwise 0
  : flag is an implicit argument of NET_RECEIVE, normally 0
  if (flag == 0) {
    : a spike happened, so start onset state if not already in onset state
    if (!on) {
      : this synapse joins the set of synapses in the onset state
      synon = synon + weight
      r0 = r0*exp(-Beta*(t - t0)) : r0 at start of onset state
      :printf("r0aaa is %g\n", r0)
      : r0 joins the "onset" conductance pool,
      :   which grows according to Ron' = ...
      :   and leaves the "offset" conductance pool,
      :   which decays according to Roff' = ...
      Ron = Ron + r0
      Roff = Roff - r0
      t0 = t
      on = 1
      net_send(Cdur, 1)
    } else {
      : already in onset state, so move offset time
      net_move(t+Cdur)
    }
  }
  if (flag == 1) {
    : "turn off transmitter"
    : i.e. this synapse joins the set of synapses in the offset state
    synon = synon - weight
    : r0 at start of offset state
    :printf("Ron and Roff are %g\t%g\n", Ron,Roff)
    r0 = weight*Rinf + (r0 - weight*Rinf)*exp(-(t - t0)/Rtau)
    :printf("r0 is %g\n", r0)
    : r0 leaves the "onset" conductance pool,
    :   and joins the "offset" conductance pool
    Ron = Ron - r0
    Roff = Roff + r0
    t0 = t
    on = 0
  }
  :printf("the conductance is %g\n",g_eff )
}

Loading data, please wait...