Skip to content

Core Kymata codebase, including statistical analysis and plotting tools

License

Notifications You must be signed in to change notification settings

kymata-atlas/kymata-core

Repository files navigation

Unit Tests Passed Linting Checks Passed CodeFactor

Logo

Kymata Core

Core codebase for the Kymata Atlas
Explore the docs »


Overview · Setup · Citing · Licence

About The Project

Kymata Core is the central codebase underlying the Kymata Atlas.1 It is maintained by the Kymata Research Group.

The central pipeline includes:

  • Standard preprocessing and source localisation steps for neural sensor data (MEG, EEG, ECoG);
  • Gridsearch approaches for function mapping;
  • Information Processing Pathway Map2 generation (both offline generation and evaluation);
  • Plotting functionality

The codebase is released under an MIT license to ensure the transparency of the results in the Kymata Atlas. While comments and issues are welcomed, we are unable to prioritise installation or usage support (please see our code of conduct).

(back to top)

Getting Started

This provides an overview of how to set Kymata Core locally.

Prerequisites

  • Python

    Confirm you have the correct version of Python installed. Type

    $ pyenv versions

    This should confirm that python 3.11 or above is installed. If it isn't already there, install it using pyenv install. You should be able to confirm you are using the correct version using

    $ python -V
  • Poetry

    This package uses Poetry to manage packages. See python-poetry.org for installation instructions.

Installation

  1. Clone this repository:

    $ git clone https://github.com/kymata-atlas/kymata-core.git
  2. To install the python packages you will need to use Poetry. Assuming you have installed Poetry, type:

    $ poetry install

    to load the pakages needed.

  3. At this point, you should be able to either run the xx from the terminal

    $ poetry run invokers/run_gridsearch.py

    or activate in this environment in an IDE such as PyCharm.

Running tests, linting, and generating documentation

This will be done automatically via Github actions.

To run the tests manually, run:

$ poetry run pytest

To run linting manually, run:

$ poetry run ruff check

To serve the documentation locally, run:

$ poetry run mkdocs serve check

(back to top)

Usage

Please refer to the documentation, or see the demos/ folder for example code, including test data.

(back to top)

Citing the codebase

Please use the following reference when citing the codebase or the kymata package:

TBC

(back to top)

Licence

Distributed under the MIT License. See LICENSE for more information.

(back to top)

References

Footnotes

  1. Thwaites, Wieser, Soltan, Wingfield, Parish, Yang, Lakra, Woolgar, Zhang (2024) The Kymata Atlas (In Prep.)

  2. Thwaites, Zhang and Woolgar (2024) Information Processing Pathway Maps: A New Frontier in Cortical Processing (In Prep.)