bsb.connectivity package#

Subpackages#

Submodules#

bsb.connectivity.general module#

class bsb.connectivity.general.AllToAll(*args, _parent=None, _key=None, **kwargs)[source]#

Bases: ConnectionStrategy

All to all connectivity between two neural populations

connect(pre, post)[source]#
class bsb.connectivity.general.Convergence(*args, _parent=None, _key=None, **kwargs)[source]#

Bases: ConnectionStrategy

Connect cells based on a convergence distribution, i.e. by connecting each source cell to X target cells.

connect()[source]#
convergence: Distribution#

Base implementation of all the different configuration attributes. Call the factory function attr() instead.

get_node_name()#
class bsb.connectivity.general.FixedIndegree(*args, _parent=None, _key=None, **kwargs)[source]#

Bases: InvertedRoI, ConnectionStrategy

Connect a group of postsynaptic cell types to indegree uniformly random presynaptic cells from all the presynaptic cell types.

connect(pre, post)[source]#
get_node_name()#
indegree: int#

Base implementation of all the different configuration attributes. Call the factory function attr() instead.

bsb.connectivity.strategy module#

class bsb.connectivity.strategy.ConnectionStrategy(*args, _parent=None, _key=None, **kwargs)[source]#

Bases: ABC, HasDependencies

abstract connect(presyn_collection, postsyn_collection)[source]#
connect_cells(pre_set, post_set, src_locs, dest_locs, tag=None)[source]#
depends_on: list[ConnectionStrategy]#

The list of strategies that must run before this one

get_all_post_chunks()[source]#
get_all_pre_chunks()[source]#
get_cell_types()[source]#
get_deps()[source]#
get_node_name()#
get_output_names(pre=None, post=None)[source]#
get_region_of_interest(chunk)[source]#
name: str#

Name used to refer to the connectivity strategy

output_naming: str | None | dict[str, dict[str, str, None, list[str]]]#

Specifies how to name the output ConnectivitySets in which the connections between cell type pairs are stored.

postsynaptic: Hemitype#

Postsynaptic (target) neuron population

presynaptic: Hemitype#

Presynaptic (source) neuron population

queue(pool: JobPool)[source]#

Specifies how to queue this connectivity strategy into a job pool. Can be overridden, the default implementation asks each partition to chunk itself and creates 1 placement job per chunk.

scaffold: Scaffold#
strategy#

Base implementation of all the different configuration attributes. Call the factory function attr() instead.

class bsb.connectivity.strategy.Hemitype(*args, _parent=None, _key=None, **kwargs)[source]#

Bases: object

Class used to represent one (pre- or postsynaptic) side of a connection rule.

cell_types: list[CellType]#

List of cell types to use in connection.

get_node_name()#
labels: list[str]#

List of labels to filter the placement set by.

morpho_loader: Callable[[PlacementSet], MorphologySet]#

Function to load the morphologies (MorphologySet) from a PlacementSet. This override can allow temporary dynamic morphology generation during the connectivity phase, from a much smaller, or empty, MorphologySet. It is useful for example when the task would take too much disk space or time otherwise.

morphology_labels: list[str]#

List of labels to filter the morphologies by.

scaffold: Scaffold#
class bsb.connectivity.strategy.HemitypeCollection(hemitype, roi)[source]#

Bases: object

property placement#

Module contents#