PyRates Integration
Bidirectional interoperability with PyRates dynamical systems toolbox
Overview
PyRates is a Python framework for numerical simulation and analysis of dynamical systems. TVBO provides full round-trip interoperability:
| Direction | Method | Use Case |
|---|---|---|
| TVBO → PyRates | model.to_yaml(format="pyrates") |
Use PyRates analysis tools |
| PyRates → TVBO | Dynamics.from_pyrates() |
Use TVBO simulation/export |
Tutorials
| Tutorial | Description |
|---|---|
| PyRates Overview | Basic round-trip interoperability |
| Analysis | Time series analysis and visualization |
| Bifurcation | Bifurcation diagram analysis |
| Heterogeneous Networks | Spatially varying parameters |
Quick Start
Export TVBO Model to PyRates
from tvbo import Dynamics
# Load a TVBO model
model = Dynamics.from_file("database/models/JansenRit.yaml")
# Export to PyRates YAML format
model.to_yaml(format="pyrates", path="jr_pyrates.yaml")Import PyRates Model to TVBO
from tvbo import Dynamics
# Import from PyRates YAML
model = Dynamics.from_pyrates("pyrates_model.yaml")
# Use with TVBO simulation
print(model.equations)Feature Mapping
| Feature | TVBO | PyRates |
|---|---|---|
| Differential equations | equation.rhs attribute |
var' = rhs syntax |
| Initial values | initial_value attribute |
variable(value) |
| Parameters | Parameter objects |
Numeric values |
| State variables | StateVariable objects |
Variables in equations |
| Coupling | CouplingFunction |
Operator connections |
Use Cases
Bifurcation Analysis
PyRates provides tools for computing bifurcation diagrams. Export your TVBO model to analyze stability:
from tvbo import Dynamics
model = Dynamics.from_file("JansenRit.yaml")
model.to_yaml(format="pyrates", path="jr.yaml")
# Use PyRates continuation tools
from pyrates.utility.bifurcation import PyCoBi
# ... bifurcation analysisParameter Sweeps
Run systematic parameter explorations:
from tvbo import Dynamics
model = Dynamics.from_file("WilsonCowan.yaml")
pyrates_yaml = model.to_yaml(format="pyrates")
# Use PyRates parameter sweep
from pyrates import grid_search
# ... parameter sweep