sanjayankur31 / Sinha2016

Simulation code for simulations run in my PhD

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Sinha2016

Source code for my Ph.D. simulations.

Requirements

  • my fork of NEST. It's kept in sync with upstream. The only difference between the two is that my fork does not use the internal implementation of NEST that updates network connectivity. Instead, required algorithms are implemented in the simulation script in Python and connectivity is updated in NEST using the PyNEST API. The NEST development team intends to remove structural plasticity from NEST core in the future. The plan is to develop a standalone structural plasticity manager that will interface with different simulators.
  • you can use my scripts to post-process the data

Outputs from the simulation

Spike raster files

neuronID    spiketime(ms)
  • Name format: spikes-{rank}-{neuron-set}.gdf
  • Collected throughout the simulation
  • One file per MPI rank
  • These files can be easily combined using the linux sort command to get a combined list of spikes, since each spike raster file is already sorted by time.

For the following neuron sets:

  • LPZ centre E
  • LPZ border E
  • Peri LPZ E
  • LPZ centre I
  • LPZ border I
  • Peri LPZ I
  • Pattern/signal neurons
  • Background/noise neurons
  • Recall neurons
  • Stim neurons

Used to generate:

  • Mean firing rate vs time plots
  • ISI CV vs time plots
  • Population firing rate at particular time plot (snapshots)
  • SNR value
  • Raster plots showing E and I spikes

Synaptic weight files

time(ms), comma separated conductances(nS)

Last line specifies max number of conductance columns
  • Name format: 00-synaptic-weights-{synapse-group}-{rank}.txt
  • Collected at particular times - set by the recording period in the simulation
  • One file per MPI rank
  • The conductances from various rank files will need to be merged. Since these files won't be too large, I can use pandas dataframes to quickly do this.

One file for each of the following synapse groups:

  • EE
  • EI
  • II
  • IE

Used to generate:

  • Plots with Means and STDs of synaptic conductances

Calcium concentration files

neuron_ID Ca_concentration

tab seprated
  • Name format: 02-calcium-{neuron-set}-{rank}-{time}.txt
  • One file per region per recording time per rank.
  • Will need to be merged, again using pandas dataframes

For the following neuron sets:

  • LPZ centre E
  • LPZ border E
  • Peri LPZ E
  • LPZ centre I
  • LPZ border I
  • Peri LPZ I

Used to generate:

  • Plots showing means + STDs of calcium concentrations for different regions.

Per neuron synaptic element files

neuronID  a_total a_connected d_ex_total d_ex_connected d_in_total d_in_connected
  • Name format: 03-synaptic-elements-{neuron-set}-{rank}-{time}.txt
  • Collected at particular times
  • New file at each collection time
  • One file per MPI rank

For the following neuron sets:

  • LPZ centre E
  • LPZ border E
  • Peri LPZ E
  • LPZ centre I
  • LPZ border I
  • Peri LPZ I

Used to generate:

  • Plots showing a snapshot of the network
  • Evolution of synaptic elements for different regions at different times.

Per neuron synapse loss files

gid total_conns conns_deleted
  • Name format: 04-synapses-deleted-{region}-{rank}.txt
  • Collected after synapses are deleted per structural plasticity update
  • One file per region
  • Only published by rank 0 (since all ranks would publish identical data)

For each of these regions:

  • LPZ centre E
  • LPZ border E
  • Peri LPZ E
  • LPZ centre I
  • LPZ border I
  • Peri LPZ I

Used to generate:

  • Plots showing synapse loss for individual neurons
  • Plots showing mean synapse loss for network

Per neuron synapse gain files

gid conns_gained
  • Name format: 04-synapses-formed-{region}-{rank}.txt
  • Collected after new synapses are formed per structural plasticity update
  • One file per MPI rank, although all files should be identical

For each of these regions:

  • LPZ centre E
  • LPZ border E
  • Peri LPZ E
  • LPZ centre I
  • LPZ border I
  • Peri LPZ I

Used to generate:

  • Plots showing synapse gain for individual neurons
  • Plots showing mean synapse gain for network

The data from the two together will give:

  • Plots showing synaptic turnover as the network evolves

About

Simulation code for simulations run in my PhD

License:Other


Languages

Language:Python 100.0%