Installation#
This guide will walk you through the installation of the aeon_mecha
package, the main package for interacting with raw Aeon data. It also includes instructions for setting up data access to the Aeon data hosted on SWC’s Ceph storage (currently only applicable to SWC members).
aeon_mecha
#
Note
We always recommend installing aeon_mecha
inside a
conda
or mamba environment,
to avoid dependency conflicts with other packages.
In the following we assume you have conda
installed,
but the same commands will also work with mamba
/micromamba
.
All commands below should be run in a bash shell (Windows users can use the ‘mingw64’ terminal that is included when installing git).
Setting up on SWC’s HPC
If setting up on SWC’s remote HPC system, you will have to first connect to the HPC using SSH and add miniconda to your system path.
ssh <your_SWC_username>@ssh.swc.ucl.ac.uk
ssh hpc-gw1
module load miniconda
Optional: Add the following commands to the .profile
file to add miniconda as an environment module and Bonsai and its dependencies to your system path on startup (this will be initialized each time you SSH into the HPC). This file should be located in the home directory, i.e. ~/.profile
. If it does not exist, create it with touch ~/.profile
.
# Set env modules
module load miniconda
# Save Bonsai and deps to path
export PATH=$PATH:/ceph/aeon/aeon/code/bonsai/Bonsai.Player/bin/Debug/net5.0
export DOTNET_ROOT=/ceph/aeon/aeon/code/dotnet
export PATH=$PATH:/ceph/aeon/aeon/code/dotnet
Clone the aeon_mecha
repository into the ~/ProjectAeon/aeon_mecha
directory.
mkdir ~/ProjectAeon
cd ~/ProjectAeon
git clone https://github.com/SainsburyWellcomeCentre/aeon_mecha
cd aeon_mecha
Create the aeon
conda environment and activate it.
conda create -n aeon -c conda-forge python>=3.11
conda activate aeon
Install the aeon_mecha
package in editable mode.
pip install -e .
pip install -e .[dev] # works on most shells
or
pip install -e '.[dev]' # works on zsh (the default shell on macOS)
This will install the package alongside all dev
dependencies.
Setting up SWC Ceph data access#
Important
You must be an SWC aeon
project member to access Aeon data hosted on
SWC’s Ceph storage. The required sets of credentials are as follows:
Microsoft Teams: contact Jai Bhagat, Gonçalo Lopes, or Dario Campagner
SWC Github organization: contact SWC Helpdesk
SWC Github
aeon
project: contact Jai Bhagat or Gonçalo LopesSWC HPC: contact SWC Helpdesk
aeon
HPC Linux group: contact SWC HelpdeskDatajoint database username: contact Thinh Nguyen
To be granted these credentials, please send a single email to all contact parties requesting this access.
Note
The links below point to the SWC internal wiki, which is only accessible from within the SWC network (or using VPN).
In order to access Aeon data locally, you need to be on the SWC network or connected via VPN. You also need to mount the Ceph storage on your local machine. The Ceph storage path for different operating systems can be found here, replacing xxxxxxxx
with aeon
.
For using an IDE (e.g. VS Code, PyCharm Professional, Jupyter, etc.) to access Aeon data, you will need to configure the connection to SWC’s HPC using SSH.
Please ensure you have met all the prerequisites before proceeding.
In order to avoid typing the SSH commands each time you log into the HPC, we recommend modifying the SSH config file following this guide.
The next step is to configure your IDE to connect to the swc-gateway
node via SSH. These instructions can typically be found in your IDE’s online documentation. Here are the instructions for VS Code, and for PyCharm Professional.
Within the aeon
conda environment, Aeon data can be accessed directly from Ceph or the DataJoint database using the aeon_mecha
API. Examples for retrieving and visualizing the data can be found in the User Guide.