Code to analyse the MANC connectome and perform connectome-constrained modelling
vnc_networks/
contains the main codebase It includes the follwing subdirectories:- the files defining the main classes to work with: Connections, Neurons, CMatrix
vnc_networks/specific_neurons/
: code to analyse specific neuronsvnc_networks/utils/
: utility functions
scripts/
contains the scripts to run the analysisexamples/
contains examples of how to use the codegenerate_plots/
contains the scripts to generate the plots potentially used for the paper
data_dumps/
contains the data dumps used for the analysisplots/
contains the plots generated by the scriptspreprocessing/
contains preprocessed data used for recurring analysis
The codebase is structured around the following classes:
Connections
: to load and manipulate the connectomeNeurons
: to load and manipulate the neuronsCMatrix
: to load and manipulate the connectivity matrix
The codebase is designed to be modular and flexible. It is possible to load the connectome and the neurons, and then perform any analysis on them.
The classes interact in the following manner:
Connections
loads the connectome and provides methods to extract the connectivity matrix. The connections between neurons can be modified by
providing a list of subdivided Neurons
objects or a list of neurons that are not connected together. An example use case is the split a neuron into subparts
restricted to a specific region of the connectome.
It is possible to initialise a CMatrix
object from the Connections
object, by
providing an adjacency matrix and the ids of the neurons corresponding to the rows and columns of the matrix.
Note on neuron ids: the neuron bodyids
are the same as the ones used in the connectome. Given that we can subset or split neurons, the neuron ids are
remapped to unique ids named uid
. The uid
is used to index the neurons in the CMatrix
object.