Tutorial 3: Single Population Network
Overview
This tutorial demonstrates simulation of a single population consisting of multiple neurons.
Warning
bionetlite currently does not support spike input from external files. This tutorial confirms that population files and synaptic connection information files for biophysical neurons are generated.
See also
Corresponding BMTK tutorial: Tutorial: Multi-Cell, Single Population Network
Changes from BMTK to bionetlite
Only the import statement needs to be changed. All other code remains exactly the same.
Before (BMTK):
from bmtk.builder.networks import NetworkBuilder
After (bionetlite):
from bionetlite import NeuliteBuilder as NetworkBuilder
Generated Files
bionetlite generates files in the following directory:
If
base_diris set in the script:{base_dir}_nl/If
base_diris not set:neulite/
Directory Structure
neulite/ (または {base_dir}_nl/)
├── mcortex_population.csv
├── mcortex_mcortex_connection.csv
├── kernel/
│ └── config.h
└── data/
├── Scnn1a_473845048_m.swc
└── 472363762_fit.csv
mcortex_population.csv
Contains information for 100 neurons. The column structure is as follows:
#n_cell,n_comp,name,swc_file,ion_file
100,3682,Scnn1a_100,data/Scnn1a_473845048_m.swc,data/472363762_fit.csv
#n_cell: Number of cells (100)n_comp: Number of compartmentsname: Population nameswc_file: Path to SWC morphology fileion_file: Path to ion channel parameter file
mcortex_mcortex_connection.csv
Contains synaptic connection information. bionetlite applies the connection rules defined by bionet and determines specific connection locations (post cid).
#pre nid,post nid,post cid,weight,tau_decay,tau_rise,erev,delay,e/i
0,5,1523,0.00005,1.7,0.1,0.0,2,e
0,12,892,0.00005,1.7,0.1,0.0,2,e
...
#pre nid: Presynaptic neuron IDpost nid: Postsynaptic neuron IDpost cid: Postsynaptic compartment IDweight: Synaptic weighttau_decay: Decay time constant (ms)tau_rise: Rise time constant (ms)erev: Reversal potential (mV)delay: Synaptic delay (ms)e/i: Excitatory (e) or inhibitory (i)
Specification
bionetlite determines synaptic connection locations at the time save_edges() is called. This is normally a process performed at runtime by bionet.simulator. Connections are randomly created from compartments following predefined connection rules.
Next Steps
Tutorial 4: Network with Multiple Populations - Multiple population network
Basic Usage - Basic usage