Cell List FilesΒΆ
The Cell List file is a plain text file that, as its name suggests, gives a list of the neurons that are to be simulated. Each line in the file corresponds to one neuron, and gives its type and position.
Note
SNAPPy currently contains several limitations that are remnants of its origins as a simulator for Xenopus tadpole swimming networks. The most important of these is that the number of neurons must always be even and neurons are divided into two groups: those on the left side of the body and those on the right. The lines in the first half of the Cell List file correspond to the neurons on the left hand side and the the lines in the second half of the file specify the right hand side neurons. The only functional significance of body side is in regard to gap junctions: these are only ever created betweens that are on the same side of the body (see the Simulation Parameters file documentation for more details). This restriction will be removed in a later version.
Each line in the Cell List file should contain five numbers separated by either spaces or tabs, and nothing else (trailing whitespace characters are OK). In order, these numbers should be:
Cell ID integer A unique number that identifies the neuron. These numbers should start at 1 for the first neuron and increase in steps of 1. This means that the first column effectively gives the line number within the file. Cell Type ID integer This number specifies the type of the neuron. Specifically, it is an index into the types array in the Simulation Parameters file. For example, a value of 1 indicates that the given neuron is of the type given by the first entry in the types array, and so on. Position decimal This column can be used to specify the position of the neuron in an arbitrary direction, in units of \(\mu m\). Neuron positions are used to determine whether gap junctions should exist between pairs of neurons, and for the calculation of spike conductance delays (see the Simulation Parameters file documentation for details). Unused 1 decimal This column is currently unused by the simulator. Use a value of 0.0. Unused 2 decimal This column is currently unused by the simulator. Use a value of 0.0.
The following example shows the contents of a Cell List file that defines a network of six neurons, evenly spaced in a line with \(100 \mu m\) between them. The neurons are alternatively of type 1 and type 2:
1 1 0.0 0.0 0.0
2 2 100.0 0.0 0.0
3 1 200.0 0.0 0.0
4 2 300.0 0.0 0.0
5 1 400.0 0.0 0.0
6 2 500.0 0.0 0.0
Note
As discussed above, this network is considered by the simulator to be made up of two body sides, with neurons 1-3 on the left hand side and neurons 4-6 on the right. However, unless gap junctions are used this will be of no functional significance.