Cells

The basic unit of abstraction in an Arbor model is a cell. A cell represents the smallest model that can be simulated. Cells interact with each other via spike exchange and gap junctions.

Identifiers used to uniquely refer to cells and objects like synapses on cells.

Identifier

Type

Description

gid

integral

The unique global identifier of a cell.

index

integral

The index of an item in a cell-local collection. For example the 7th synapse on a cell.

cell_member

tuple (gid, index)

The global identification of a cell-local item with index into a cell-local collection on the cell identified by gid. For example, the 7th synapse on cell 42.

Each cell has a global identifier gid, which is used to refer to cells in recipes. To describe or refer to cell-to-cell interactions, the following object types need to be enumerated:

  1. Sources

  2. Targets

  3. Gap Junction Sites

Cells interact with other cells via connections or gap junctions. Connections are formed from sources to targets. Gap junctions are formed between two gap junction sites.

A cell can have multiple sources, targets and gap junction site objects. Each object has a local index relative to other objects of the same type on that cell. A unique (gid, index) pair defined by a cell_member can be used to uniquely identify objects on a cell in a global model.

Cell kinds

The 4 types of cell supported by Arbor

Cell Kind

Description

cable

Cell with morphology described by branching 1D cable segments and user configurable mechanisms.

lif

Single-compartment no-mechanism leaky integrate-and-fire neuron.

spiking

Proxy cell that generates spikes from a user-supplied time sequence.

benchmark

Proxy cell used for benchmarking (developer use only).

  1. Cable Cells

    Cable cells are morphologically-detailed cells represented as branching linear 1D segments. They can be coupled to other cell types via the following mechanisms:

    1. Spike exchange over a connection with fixed latency. Cable cells can receive spikes from any kind of cell, and can be a source of spikes cells that have target sites (i.e. cable and lif cells).

    2. Direct electrical coupling between two cable cells via gap junctions.

    Key concepts:

    • Morphology: The morphology of a cable cell is composed of a branching tree of one-dimensional line segments. Strictly speaking, Arbor represents a morphology is an acyclic directed graph, with the soma at the root.

    • Detectors: Spike detectors generate spikes when the voltage at location on the cell passes a threshold. Detectors act as sources of connections.

    • Synapses: Synapses act as targets of connections. A synapse is described by a synapse type (with associated parameters) and location on a cell.

    • Gap Junction Sites: These refer to the sites of gap junctions. They are declared by specifying a location on a branch of the cell.

    Because cable cells are the main cell kind in Arbor and have more properties than listed here, they have a dedicated page.

  2. LIF Cells

    A single compartment leaky integrate and fire neuron with one source and one target. LIF cells does not support adding additional sources or targets or gap junctions.

  3. Spiking Cells

    Spike source from values inserted via a schedule description. It is a point neuron with one built-in source and no targets. It does not support adding additional sources or targets. It does not support gap junctions.

  4. Benchmark Cells

    Proxy cell used for benchmarking, and used by developers to benchmark the spike exchange and event delivery infrastructure.

Most Arbor users will want to use the cable cell, because it’s the only cell kind that supports complex morphologies and user-defined mechanisms. See cable cells dedicated page. The LIF cell can be used to build networks with point-neurons.