Gamma-beta alternation in the olfactory bulb (David, Fourcaud-Trocmé et al., 2015)

 Download zip file 
Help downloading and running models
Accession:185014
This model, a simplified olfactory bulb network with mitral and granule cells, proposes a framework for two regimes of oscillation in the olfactory bulb: 1 - a weak inhibition regime (with no granule spike) where the network oscillates in the gamma (40-90Hz) band 2 - a strong inhibition regime (with granule spikes) where the network oscillates in the beta (15-30Hz) band. Slow modulations of sensory and centrifugal inputs, phase shifted by a quarter of cycle, possibly combined with short term depression of the mitral to granule AMPA synapse, allows the network to alternate between the two regimes as observed in anesthetized animals.
Reference:
1 . David F, Courtiol E, Buonviso N, Fourcaud-Trocmé N (2015) Competing Mechanisms of Gamma and Beta Oscillations in the Olfactory Bulb Based on Multimodal Inhibition of Mitral Cells Over a Respiratory Cycle. eNeuro [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 mitral GLU cell; Olfactory bulb main interneuron granule MC GABA cell;
Channel(s): I_Ks;
Gap Junctions:
Receptor(s): GabaA; AMPA;
Gene(s):
Transmitter(s):
Simulation Environment: Brian; Python;
Model Concept(s): Short-term Synaptic Plasticity; Gamma oscillations; Beta oscillations; Olfaction;
Implementer(s):
Search NeuronDB for information about:  Olfactory bulb main mitral GLU cell; Olfactory bulb main interneuron granule MC GABA cell; GabaA; AMPA; I_Ks;
For any help, contact:
Nicolas Fourcaud-Trocmé: nicolas.fourcaud-trocme@cnrs.fr
François David: francois.david5@free.fr

############################################################

* This model has been run with:

    Python 2.6/2.7 (https://www.python.org/)
    BRIAN 1.4.1 (http://briansimulator.org/)

* Oscillation analysis and time-frequency plots are done with:

    OpenElectrophy 0.2 (http://neuralensemble.org/trac/OpenElectrophy)

    Note that if OpenElectrophy is not installed as a global module,
    OpenElectrophy path can be provided in "oscillation_analysis.py" line 18

###########################################################################

File details:

* model_mitral_clean.py and model_granule_clean.py: 
    contain equations and some fixed parameters of mitral and granule cell models
    Mitral cell model is issued from David et al. Plos Comp Biol (2009),
    Granule cell model is a standard QIF model with f-I curve estimated based on Davison (2001, PhD Thesis)
    
* reseau_mitral_granule_fig_param_dic.py:
    it's the main script to describe full network and launch network simulations. 
    It contains a dictionary of model parameters with all default values and comments on the role of most parameters. 
    The "reseau_mitral_granule" function run the network and return some recordings. It can be safely multiprocessed.
    The "main" section (starting line 229) shows how to run either a single model or a set of models while varying one parameter.
    Each model run can be configured by feeding a distinct dictionay of parameters "param_dict".
    A set of dictionary parameters used in the article is given in "params_for_article_fig.py" and can be easily imported (see commented lines)
    
* oscillation_analysis.py, plot_single_run_from_file.py, plot_multi_run_from_file.py:
    contains functions to analyse gamma/beta oscillations and plot output of network simulations 
    (either detailed output for single simulations, or simplified output as a function of the varied parameters for multiple simulations)
    Note that simulation outputs can be saved in a file (see options in "reseau_mitral_granule_fig_param_dic.py") and 
    later plotted with "plot_single_run_from_file.py" or "plot_multi_run_from_file.py" (see their "main" sections).
    If OpenElectrophy is not installed on the computer, timefrequency plots and oscillation analysis are skipped.
    
* populationstatemonitor.py: is a simple helper function derived from BRIAN simulator "Statemonitor"