Striatum microcircuitry

This Use Case is a demonstration of how the Striatum microcircuitry is created, and simulated. It walks you through the steps taken to place the neurons in a striatal volume, how the putative synapses of the microcircuitry are detected, and pruned. Then finally it shows how the simulation is set up and run.

Setting up the environment:

First the source code needs to be downloaded from the central Collab storage. All the required files are packed into a tar.bz2 archive that is unpacked in the user Collab. The files are placed in a subdirectory called StriatumScaffold2018.

Placing neurons in 3D space:

The neurons are randomly placed in a volume by using NetworkPlaceNeurons. This reads in configuration data stored in the file “config/Network-striatum-cube-v7-channels-100-15.json” where the volume is defined, as well as a specification of what neurons to populate the volume with, and parameters for how to setup the connectivity in the next step (which neuron types they connect to, pruning parameters etc.). The config file has been automatically generated by makeStratiumConfigFile.py (included in the tar.bz2 file). The output of the cell placement is a pickle file which is used in the next step.

Creating network connectivity:

To create the connectivity, NetworkConnect is run. It reads the pickle file with position data and the network configuration file, imports the morphologies from swc files, and then proceeds to look for close appositions between the axons and dendrites of these neurons. The putative connections are then pruned using a set of rules, to get connectivity probabilities matching experimental data. The resulting connectivity is saved in a HDF5 file.

Plotting connectivity statistics:

Network_plot_statistics reads in the HDF5 file with the connectivity data and computes statistical measures, such as the number of connections between neuron types, and the connection probability.

Running the network simulation:

To run the network simulation using Parallel Neuron, the mod files needs first to be compiled. Then, NetworkSimulate can be used to simulate the network. The output is stored in two files, one with spike times of the neurons, and the other with voltage traces.