Repository containing all data and code/notebooks relevant to the Formose Reservoir Computation publication.
data
contains the extracted ion signals, input flow profiles, as well as the processed data to perform the various reservoir computation taskspreprocess
contains notebooks converting the raw ion signals together with the input flow profiles into processed data filesanalysis
contains notebooks used to perform the various reservoir computation tasks and for creation of all data-related figures in the publication and supporting information.plots
andplots_extended
contain all data-related figures for the main manuscript and supporting information respectively (these are generated from the notebooks in theanalysis
directory)tables
contains tables in csv and latex format with scores and accuracies of training tasks
The code in this repository requires Python 3.11 together with a few standard packages (numpy, pandas, scikit-learn, etc...).
All packages can be installed by creating a Conda environment from environment.yaml
.
A typical installation should take less than 1 hour.
For calculation of the in silico carbon metabolism model, we use AMICI. To correctly install AMICI, extra steps are required: Installation of the AMICI Python package has the following prerequisites:
- Python>=3.9
- SWIG>=3.0
- CBLAS compatible BLAS library (e.g., OpenBLAS, CBLAS, Atlas, Accelerate, Intel MKL)
- a C++17 compatible C++ compiler and a C compiler (e.g., g++, clang, Intel C++ compiler, mingw)
On Ubuntu, the requirements can be installed via apt
:
sudo apt install libatlas-base-dev swig
# optionally for HDF5 support (recommended):
sudo apt install libhdf5-serial-dev
On OSX, the requirements can be installed via homebrew
:
brew install swig
# optionally for HDF5 support:
brew install hdf5
# optionally for parallel simulations:
brew install libomp
Installation on Windows directly is not recommended. We advice using the Windows Subsystem for Linux (WSL) and follow the instructions for installation on linux.
After installing the AMICI requirements, the environment with all Python packages can be installed by running:
conda env create -f environment.yaml
after which the environment can be activated by running:
conda activate formose_rc
Figures created in the Jupyter notebooks use Arial as a font. This font is not installed on Ubuntu by default, but can be installed by running:
sudo apt install ttf-mscorefonts-installer
sudo fc-cache -f
and subsequently deleting the matplotlib font cache:
rm ~/.cache/matplotlib -rf