Skip to main content

A package for performing whole brain simulations

Project description

TVB FRAMEWORK

The Virtual Brain framework is a complete framework including:

  • a plugable workflow manager;

  • a data persistence layer (with a relational DB and File Storage);

  • an HTML5 based user interface;

  • visualizers for neuro-science related entities.

The easiest way to make use of this code, is to obtain a Distribution of TVB with Python and all the necessary packages linked, and then clone this repo nearby. More details in our documentation.

Alternatively, if you plan to develop long term with TVB, extensively modify code, add new dependencies, or you simply prefer to use your own Python installation, you may want to read this: here.

If you don’t require the framework features listed above, the simulator and associated scientific modules can be used independently; please see the tvb-library folder.

Framework structure

tvb-gdist
    |
    |
tvb-library     tvb-data
      \          /
        \       /
        tvb.config
            |
            |
        tvb.core
            |
            |
        tvb.adapters
            |
            |
        tvb.config.init
            |
            |
        tvb.interfaces

tvb-data should be installed from Zenodo: https://zenodo.org/record/10128131. After download, unzip and execute python setup.py develop in the correct env.

Usage

To use TVB code, clone from GitHub (https://github.com/the-virtual-brain/tvb-root), or get from Pypi:

pip install tvb-framework
python -m tvb.interfaces.web.run WEB_PROFILE tvb.config

Your port 8080 should be free, as a CherryPy service will try to run there. Your default browser should automatically open http://localhost:8080/ which is the way to interact with TVB Web Interface.

Testing

For testing the package, the Pytest framework is used. Pytest can be installed using pip.

In addition to tvb-framework needed just for launching the web, tests require few extra dependencies just for test (e.g. pytest-benchmark), which need to be installed manually. The entire list of these dependencies for testing is found in tvb_framework/setup.py under extras_require.

Pytest will run all files in the current directory and its subdirectories of the form test_*.py or *_test.py. More generally, it follows standard test discovery rules

The command for running our tests has two forms. Recommendation when working with a git clone of tvb-framework:

cd [folder_where_tvb_framework_is]
pytest tvb/test/framework [--profile=TEST_POSTGRES_PROFILE] [--junitxml=path]
# default profile value is TEST_SQLITE_PROFILE

The second alternative form of running TVB tests, when installing TVB from Pypi, is:

pip install -U tvb-framework
pytest --pyargs tvb.tests.framework

Coverage

A coverage report can be generated with:

pip install pytest-cov
cd [folder_where_tvb_framework_is]
py.test --cov=tvb tvb/tests/ --cov-branch --cov-report xml:[file_where_xml_will_be_generated]

Further Resources

Acknowledgments

This project has received funding from the European Union’s Horizon 2020 Framework Programme for Research and Innovation under the Specific Grant Agreement Nos. 785907 (Human Brain Project SGA2), 945539 (Human Brain Project SGA3) and VirtualBrainCloud 826421.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tvb_framework-2.9.1.tar.gz (10.1 MB view details)

Uploaded Source

Built Distribution

tvb_framework-2.9.1-py3-none-any.whl (11.3 MB view details)

Uploaded Python 3

File details

Details for the file tvb_framework-2.9.1.tar.gz.

File metadata

  • Download URL: tvb_framework-2.9.1.tar.gz
  • Upload date:
  • Size: 10.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.10

File hashes

Hashes for tvb_framework-2.9.1.tar.gz
Algorithm Hash digest
SHA256 d69d29548c24cdcaeff7a25122dad95f3ff5a5e40a924558b2835448d14b174b
MD5 cc33588d48e1e59aeca4e1ab0aa49cc8
BLAKE2b-256 c033b22002f48e8020d5a2b6fc76cda9b93bd6c87f8963b092caa7d84dd8d7f3

See more details on using hashes here.

File details

Details for the file tvb_framework-2.9.1-py3-none-any.whl.

File metadata

File hashes

Hashes for tvb_framework-2.9.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c736de85ddd4e2e3c94cbaf457f5aac604c671180e30621c5315dc9ae4a36afe
MD5 77c8dc7f670915b2bbf0c96db565668b
BLAKE2b-256 4271da2d2be176d00b74413c1600d68237e7ec457cfcb308c82a7b243b0c5e62

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page