appositionizer looks at the physical location of cells morphologies, and detects autaptic appositions between sections (see attachment for a sample of 2 cells). An additional filtering step is added to filter/remove appositions that lies within a given inter-bouton interval (in practice a certain fixed distance between two autaptic appositions throughout the axonal section).
In addition to this user guide we also provide a detailed Developer Guide.
A complete example of how to build appositionizer can be found in the [Dockerfile](Dockerfile) in this repository.
For a fully manual build on Ubuntu, install the following essential libraries:
apt-get install build-essential catch2 cmake git libeigen3-dev libhdf5-openmpi-dev librandom123-dev librange-v3-dev libtbb-dev libyaml-cpp-dev ninja-build
Then make sure the following dependencies are installed and accessible via the environment
variable $CMAKE_PREFIX_PATH
:
Afterwards configure and build the project:
cmake -B build -S . cmake --build build cmake --install build
appositionizer uses parts of a circuit building recipe stored either in JSON or YAML. See the recipe documentation for further details.
The necessary components are the bouton interval specification, which controls when cylinder-cylinder overlap region on the same section are merged (up to a distance of region_gap µm between adjacent overlap regions) and how appositions are then distributed along the merged region (spaced randomly using the specified minimum and maximum distances between appositions in µm). An example configuration:
"bouton_interval": { "min_distance": 5.0, "max_distance": 7.0, "region_gap": 5.0 }
The second appositionizer specific setting is used to inflate the cylinders representing apical or basal dendrites. This allows to account for spines that would form between the actual cylindrical surfaces of dendrites and axons. Please note that spine lengths have be specified for all cell mtype values present in the circuit as follows:
"structural_spine_lengths": [ { "mtype": "L1_SLAC", "spine_length": 2.5 }, { "mtype": "L23_PC", "spine_length": 2.5 } ]
The development of this software was supported by funding to the Blue Brain Project, a research center of the École polytechnique fédérale de Lausanne (EPFL), from the Swiss government's ETH Board of the Swiss Federal Institutes of Technology.
Copyright (c) 2024 Blue Brain Project/EPFL