Neural mass model of the sleeping cortex (Weigenand et al 2014)

 Download zip file 
Help downloading and running models
Accession:226472
Generates typical EEG data of sleeping Humans for sleep stages N2/N3 as well as wakefulness
Reference:
1 . Weigenand A, Schellenberger Costa M, Ngo HV, Claussen JC, Martinetz T (2014) Characterization of K-complexes and slow wave activity in a neural mass model. PLoS Comput Biol 10:e1003923 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Neural mass;
Brain Region(s)/Organism: Neocortex;
Cell Type(s): Neocortex V1 L2/6 pyramidal intratelencephalic GLU cell; Neocortex layer 2-3 interneuron;
Channel(s): I_K,Na; Na/K pump;
Gap Junctions:
Receptor(s): AMPA; Gaba;
Gene(s):
Transmitter(s):
Simulation Environment: C or C++ program (web link to model); MATLAB;
Model Concept(s): Bifurcation; Sleep; Activity Patterns;
Implementer(s): Schellenberger Costa, Michael [mschellenbergercosta at gmail.com];
Search NeuronDB for information about:  Neocortex V1 L2/6 pyramidal intratelencephalic GLU cell; AMPA; Gaba; I_K,Na; Na/K pump;
/*
 *	Copyright (c) 2015 University of Lübeck
 *
 *	Permission is hereby granted, free of charge, to any person obtaining a copy
 *	of this software and associated documentation files (the "Software"), to deal
 *	in the Software without restriction, including without limitation the rights
 *	to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 *	copies of the Software, and to permit persons to whom the Software is
 *	furnished to do so, subject to the following conditions:
 *
 *	The above copyright notice and this permission notice shall be included in
 *	all copies or substantial portions of the Software.
 *
 *	THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 *	IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 *	FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 *	AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 *	LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 *	OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 *	THE SOFTWARE.
 *
 *	AUTHORS:	Michael Schellenberger Costa: mschellenbergercosta@gmail.com
 *              Stefanie Gareis: gareis@inb.uni-luebeck.de
 */

/******************************************************************************/
/*                          Random number streams                             */
/******************************************************************************/
#pragma once
#include <random>

class randomStreamNormal {
public:
    explicit randomStreamNormal(double mean, double stddev)
    : mt(rand()), norm_dist(mean, stddev) {}
    explicit randomStreamNormal(double mean, double stddev, double seed)
    : mt(seed), norm_dist(mean, stddev) {}

    double operator ()(void) { return norm_dist(mt); }
private:
    std::mt19937_64                     mt;
    std::normal_distribution<double>    norm_dist;
};

class randomStreamUniformInt {
public:
    explicit randomStreamUniformInt(int lower_bound, int upper_bound)
    : mt(rand()), uniform_dist(lower_bound, upper_bound) {}
    explicit randomStreamUniformInt(int lower_bound, int upper_bound, double seed)
    : mt(seed), uniform_dist(lower_bound, upper_bound) {}

    int operator ()(void) { return uniform_dist(mt); }
private:
    std::mt19937_64                     mt;
    std::uniform_int_distribution<>     uniform_dist;
};

Loading data, please wait...