Skip to main content

The Virtual Brain Ontology

Project description

TVBO logo

The Virtual Brain Ontology

Python package PyPI version PyPI - Downloads License

tvbo is a Python library to access the knowledge representation system (i.e., ontology) and data model for the neuroinformatics platform The Virtual Brain (TVB).

🚀 Installation

pip install tvbo

📖 Quick Start

Example: Lorenz Attractor Simulation

📝 Model Specification (YAML)
name: LorenzAttractor
parameters:
    sigma:
        value: 10
        label: Prandtl number
    rho:
        label: Rayleigh number
        value: 28
    beta:
        value: 2.6666666666666665
state_variables:
    X:
        equation:
            lhs: \dot{X}
            rhs: sigma * (Y - X)
    Y:
        equation:
            lhs: \dot{Y}
            rhs: X * (rho - Z) - Y
    Z:
        equation:
            lhs: \dot{Z}
            rhs: X * Y - beta * Z
🔧 Generate Code
from tvbo import Dynamics, SimulationExperiment

lorenz = Dynamics(
    parameters={
        "sigma": {"value": 10.0},
        "rho": {"value": 28.0},
        "beta": {"value": 8 / 3},
    },
    state_variables={
        "X": {"equation": {"rhs": "sigma * (Y - X)"}},
        "Y": {"equation": {"rhs": "X * (rho - Z) - Y"}},
        "Z": {"equation": {"rhs": "X * Y - beta * Z"}},
    },
)

code = SimulationExperiment(local_dynamics=lorenz).render_code('jax')
print(code)
▶️ Run Simulation
from tvbo import Dynamics, SimulationExperiment

lorenz = Dynamics(
    parameters={
        "sigma": {"value": 10.0},
        "rho": {"value": 28.0},
        "beta": {"value": 8 / 3},
    },
    state_variables={
        "X": {"equation": {"rhs": "sigma * (Y - X)"}},
        "Y": {"equation": {"rhs": "X * (rho - Z) - Y"}},
        "Z": {"equation": {"rhs": "X * Y - beta * Z"}},
    },
)

# Run simulation and plot results
SimulationExperiment(local_dynamics=lorenz).run(duration=1000).plot()

📚 Documentation

🔬 Features

  • 🧠 Access TVB ontology and knowledge base
  • 📊 Define and simulate dynamical systems
  • 🔄 Code generation for multiple backends (JAX, NumPy)
  • 📈 Built-in visualization tools
  • 🗃️ Structured metadata schema

📦 Installation Options

Standard Installation

pip install tvbo

With API Server Support

pip install tvbo[api]

With TVB Integration

pip install tvbo[tvb]

Full Installation (All Features)

pip install tvbo[all]

Note: The knowledge extra requires manual installation:

pip install git+https://github.com/neurommsig/neurommsig-knowledge.git

📄 License

Copyright © 2025 Charité Universitätsmedizin Berlin. This software is licensed under the terms of the European Union Public Licence (EUPL) version 1.2 or later.

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

tvbo-0.2.6.tar.gz (19.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tvbo-0.2.6-py3-none-any.whl (19.7 MB view details)

Uploaded Python 3

File details

Details for the file tvbo-0.2.6.tar.gz.

File metadata

  • Download URL: tvbo-0.2.6.tar.gz
  • Upload date:
  • Size: 19.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for tvbo-0.2.6.tar.gz
Algorithm Hash digest
SHA256 6bb2e1b2f1962a6083fd2e950d02b0412fbf343527b84bf215ee1d39a5159d12
MD5 141c93539155081478e6a412e59dda66
BLAKE2b-256 439f9fe563745b90cc2fe118d77e078d1e5462bd8d7415581fa26680b21996e2

See more details on using hashes here.

Provenance

The following attestation bundles were made for tvbo-0.2.6.tar.gz:

Publisher: publish-pypi.yml on virtual-twin/tvbo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tvbo-0.2.6-py3-none-any.whl.

File metadata

  • Download URL: tvbo-0.2.6-py3-none-any.whl
  • Upload date:
  • Size: 19.7 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for tvbo-0.2.6-py3-none-any.whl
Algorithm Hash digest
SHA256 a6b9fe87b8cb800c4f672239bbcff121b27e2cf3ba94136b7acb7e056fdfd606
MD5 15d827dfb9ad9a81e1873a8458280225
BLAKE2b-256 70b11f2c9e5b8d3fc5d7fe179e59b6c4e4b545840746919b8cfc480d9be0b9b0

See more details on using hashes here.

Provenance

The following attestation bundles were made for tvbo-0.2.6-py3-none-any.whl:

Publisher: publish-pypi.yml on virtual-twin/tvbo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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