Parallel odor processing by mitral and middle tufted cells in the OB (Cavarretta et al 2016, 2018)

 Download zip file   Auto-launch 
Help downloading and running models
"[...] experimental findings suggest that MC and mTC may encode parallel and complementary odor representations. We have analyzed the functional roles of these pathways by using a morphologically and physiologically realistic three-dimensional model to explore the MC and mTC microcircuits in the glomerular layer and deeper plexiform layers. [...]"
1 . Cavarretta F, Burton SD, Igarashi KM, Shepherd GM, Hines ML, Migliore M (2018) Parallel odor processing by mitral and middle tufted cells in the olfactory bulb. Sci Rep 8:7625 [PubMed]
2 . Cavarretta F, Marasco A, Hines ML, Shepherd GM, Migliore M (2016) Glomerular and Mitral-Granule Cell Microcircuits Coordinate Temporal and Spatial Information Processing in the Olfactory Bulb. Front Comput Neurosci 10:67 [PubMed]
Citations  Citation Browser
Model Information (Click on a link to find other models with that property)
Model Type: Realistic Network;
Brain Region(s)/Organism: Olfactory bulb;
Cell Type(s): Olfactory bulb main tufted middle cell; Olfactory bulb main interneuron granule MC cell; Olfactory bulb main interneuron granule TC cell; Olfactory bulb (accessory) mitral cell; Olfactory bulb main tufted cell external; Olfactory bulb short axon cell;
Channel(s): I A; I Na,t; I_Ks; I K;
Gap Junctions: Gap junctions;
Receptor(s): AMPA; GabaA; NMDA;
Transmitter(s): Glutamate; Gaba;
Simulation Environment: NEURON;
Model Concept(s): Action Potentials; Action Potential Initiation; Active Dendrites; Long-term Synaptic Plasticity; Synaptic Integration; Synchronization; Pattern Recognition; Spatio-temporal Activity Patterns; Temporal Pattern Generation; Sensory coding; Sensory processing; Olfaction;
Implementer(s): Cavarretta, Francesco [francescocavarretta at]; Hines, Michael [Michael.Hines at];
Search NeuronDB for information about:  Olfactory bulb main interneuron granule MC cell; Olfactory bulb main tufted middle cell; Olfactory bulb main interneuron granule TC cell; GabaA; AMPA; NMDA; I Na,t; I A; I K; I_Ks; Gaba; Glutamate;
distrt.mod *
fi_stdp.mod *
ThreshDetect.mod * * *
blanes6.dic * *
Eta.txt *
fixnseg.hoc *
gj_nrn.hoc *
granule.hoc *
Kod.txt * * * *
Nod.txt *
odstim2.txt *
pad.txt *
realgloms.txt *
spike2file.hoc * *
input: a map with destination ranks as keys, the values are pickleable objects.
output: a map with source ranks as keys, each value is an object.
Transfer the map value (pickleable python object) to the proper destination rank,
A value associated with the destination rank will appear on the
destination rank as a value associated with the source rank.
Alternatively, if the input is a list of nhost objects (some can be None),
then so is the return value.

from common import *
import util

ptime = False

def all2all(data, size=0):
  enter = h.startsw()
  r = _all2all(data, size)
  if ptime and rank == 0: print 'all2all elapsed time = %g'% (h.startsw()-enter)
  return  r

def _all2all(data, size=0):
  if nhost == 1:
    if size == -1:
      return (0, 0)
    return data
  if type(data) is list:
    return pc.py_alltoall(data, size)
  elif type(data) is dict:
    d = []
    for i in range(nhost):
    for i in data:
      d[i] = data[i]
    d = pc.py_alltoall(d, size)
    if size == -1:
      return d
    z = {}
    for i,x in enumerate(d):
      if x != None:
        z.update({i : x})
    return z
  raise ValueError

if __name__ == '__main__':
  d = []
  for i in range(nhost):
  sizes = all2all(d, -1)
  d = all2all(d)
  for r in util.serialize():
    print rank, sizes, d