https://github.com/bluebrain/brain-indexer
Create indexes of simple shapes and find all indexed elements that intersect with a query region.
Science Score: 13.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (16.0%) to scientific vocabulary
Keywords
Repository
Create indexes of simple shapes and find all indexed elements that intersect with a query region.
Basic Info
- Host: GitHub
- Owner: BlueBrain
- License: apache-2.0
- Language: C++
- Default Branch: main
- Homepage: https://brain-indexer.readthedocs.io/en/stable/
- Size: 3.67 MB
Statistics
- Stars: 1
- Watchers: 7
- Forks: 2
- Open Issues: 10
- Releases: 2
Topics
Metadata Files
README.md
[!WARNING] The Blue Brain Project concluded in December 2024, so development has ceased under the BlueBrain GitHub organization. Future development will take place at: https://github.com/openbraininstitute/brain-indexer
brain-indexer
brain-indexer is a library for efficient spatial queries on large datasets (TBs
and more). It is currently based on boost::rtree.
It provides a high level Python API for indexes of simple geometric shapes (boxes, spheres and cylinders) and the required functionalities to create indexes of synapses and morphologies.
Installation
From PyPI
A version of brain-indexer without processing on multiple nodes is available on PyPI and
can easily be installed with:
console
pip install brain-indexer
From source
brain-indexer requires Boost with a minimum version of 1.79.0, but preferably 1.80.0 or
newer. If your system does not provide such a version, one can install a more recent one
into /opt/boost/ as follows:
console
wget -qO- https://boostorg.jfrog.io/artifactory/main/release/1.85.0/source/boost_1_85_0.tar.bz2 | tar xjf -
cd boost_1_85_0
./bootstrap.sh
./b2 --prefix=/opt/boost --with-serialization --with-filesystem --with-test install
When using a custom Boost installation like this, it is imperative to set the following
environment variables to make sure that all libraries are found:
console
export SKBUILD_CMAKE_DEFINE="CMAKE_INSTALL_RPATH_USE_LINK_PATH=ON"
export CMAKE_PREFIX_PATH=/opt/boost
If multi-node processing via MPI is required, the following system dependencies have to be
installed:
console
sudo apt-get install -y libopenmpi-dev
Then the installation of brain-indexer can proceed as usual, either with MPI support:
console
gh repo clone BlueBrain/brain-indexer
pip install "./brain-indexer[mpi]"
or without support:
console
gh repo clone BlueBrain/brain-indexer
pip install ./brain-indexer/
Where to start
We provide two Jupyter notebooks with a hands-on introduction to brain-indexer:
- A basic introduction in basic_tutorial.ipynb
- More complex use-cases in advanced_tutorial.ipynb
Examples
More examples on how to use brain-indexer are available in the examples folder:
- segment_index.py: simple indexing and querying of a segment index
- synapses_index.py: simple indexing and querying of a synapse index
- segment_index_sonata.py: indexing and querying of a segment index using SONATA files
- segment_multi_index_sonata.py: indexing and querying of a segment multi-index using SONATA files
- synapse_multi_index_sonata.py: indexing and querying of a synapse multi-index using SONATA files
Also, the tests folder contains some tests that double also as examples on how to use
brain-indexer.
Acknowledgment
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) 2019-2024 Blue Brain Project/EPFL
Owner
- Name: The Blue Brain Project
- Login: BlueBrain
- Kind: organization
- Email: bbp.opensource@epfl.ch
- Location: Geneva, Switzerland
- Website: https://portal.bluebrain.epfl.ch/
- Repositories: 226
- Profile: https://github.com/BlueBrain
Open Source Software produced and used by the Blue Brain Project
GitHub Events
Total
- Issues event: 7
- Watch event: 1
- Push event: 1
- Fork event: 1
Last Year
- Issues event: 7
- Watch event: 1
- Push event: 1
- Fork event: 1
Issues and Pull Requests
Last synced: 12 months ago
All Time
- Total issues: 11
- Total pull requests: 11
- Average time to close issues: N/A
- Average time to close pull requests: 2 days
- Total issue authors: 1
- Total pull request authors: 1
- Average comments per issue: 0.0
- Average comments per pull request: 0.45
- Merged pull requests: 11
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 8
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 1
- Pull request authors: 0
- Average comments per issue: 0.0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- matz-e (9)
Pull Request Authors
- matz-e (11)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 2
-
Total downloads:
- pypi 8,984 last-month
-
Total dependent packages: 0
(may contain duplicates) -
Total dependent repositories: 0
(may contain duplicates) - Total versions: 3
- Total maintainers: 3
spack.io: py-brain-indexer
Spatial indexer for geometries and morphologies
- Homepage: https://github.com/BlueBrain/brain-indexer
- License: []
-
Latest release: 3.0.0
published almost 2 years ago
Rankings
Maintainers (1)
pypi.org: brain-indexer
A spatial index implementation for spheres, morphologies and synapses
- Homepage: https://github.com/BlueBrain/brain-indexer
- Documentation: https://brain-indexer.readthedocs.io/
- License: apache-2.0
-
Latest release: 3.1.1
published about 1 year ago
Rankings
Maintainers (2)
Dependencies
- python latest build
- docopt-ng *
- libsonata !=0.1.15
- morphio *
- numpy >=1.13.1
- numpy-quaternion *
- tqdm *
- actions/cache v3 composite
- ./.github/actions/boost-cache * composite
- ./.github/actions/mpi-setup * composite
- actions/checkout v3 composite
- ./.github/actions/mpi-setup * composite
- actions/checkout v3 composite
- actions/checkout v4 composite
- actions/download-artifact v4 composite
- actions/setup-python v4 composite
- ./.github/actions/boost-cache * composite
- actions/checkout v4 composite
- ./.github/actions/boost-cache * composite
- ./.github/actions/mpi-setup * composite
- actions/checkout v3 composite
- actions/checkout v4 composite
- actions/download-artifact v4 composite
- actions/setup-python v4 composite
- actions/setup-python v5 composite
- actions/upload-artifact v4 composite
- pypa/gh-action-pypi-publish release/v1 composite
- ./.github/actions/boost-cache * composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- Jinja2 *
- docutils <0.18
- m2r2 *
- mistune <2.0.0
- setuptools *
- sphinx <5.1.0,>=5.0.0
- sphinx-bluebrain-theme *
- sphinxcontrib-programoutput *