M1 Network Model¶
A multiscale model of mouse primary motor cortex (M1).
The code requires the netpyne package, a NEURON/Python-based modularized framework for network simulations with MPI. Using this modularized structure, user can define different models (including cell types, populations, connectivities, etc.) just by modifying a single parameters file.
Additional details of the modelling framework and M1 model can be found here:
The parameter file M1_ynorm_izhi.py describes a mouse M1 model with 14 populations; size 300um x 300um x 1350um, has 10,734 Izhikevich cells, 5,050,532 synapses, and cortical depth-dependent connectivity based on multiple published experimental studies.
Setup and execution¶
Requires NEURON with Python and MPI support.
- Type or
./compile or the equivalentnrnivmodl mod`. This should create a directory called either i686 or x86_64, depending on your computer's architecture.
- To run type:
./runsim [num_proc]or the equivalent
mpiexec -np [num_proc] nrniv -python -mpi init.py
The simulation should produce a raster plot with 54,562 spikes (avg rate of 5.08 Hz) over 1 second, showing ~15 Hz oscillations (see below).
Overview of file structure:¶
/sim/init.py: Main executable; calls functions from other modules. Sets what parameter file to use.
/sim/M1_ynorm_izhi.py: Parameters file for M1 Network model. Includes simulation (simConfig) and network (netParams) parameters.
/sim/cells/izhi2007.py: Python class (wrapper) for Izhikevich 2007 neuron model
/sim/mod/izhi2007b.mod: NMODL definition of Izhikevich 2007 neuron model
/data: where the model and simulation data is stored (eg. .pkl, .mat, .json files)
For further information please contact: firstname.lastname@example.org
Working on conversion of model to NeuroML 2 via export from NetPyNE
This model was originally developed in: NetPyNE
The code for this model is hosted on GitHub: https://github.com/OpenSourceBrain/M1NetworkModel.git