tvb.JansenRit
experimental.network_dynamics.dynamics.tvb.JansenRit(**kwargs)Jansen-Rit neural mass model with multi-coupling support.
This implementation accepts two coupling inputs (instantaneous and delayed), both of which add into the excitatory interneuron population equation.
Notes
The model describes the dynamics of three neural populations: pyramidal cells, excitatory interneurons, and inhibitory interneurons.
State equations:
\[ \begin{aligned} \frac{dy_0}{dt} &= y_3 \\ \frac{dy_3}{dt} &= A a S(y_1 - y_2) - 2a y_3 - a^2 y_0 \\ \frac{dy_1}{dt} &= y_4 \\ \frac{dy_4}{dt} &= A a (\mu + a_2 J S(a_1 J y_0) + c_{\text{instant}} + c_{\text{delayed}}) - 2a y_4 - a^2 y_1 \\ \frac{dy_2}{dt} &= y_5 \\ \frac{dy_5}{dt} &= B b (a_4 J S(a_3 J y_0)) - 2b y_5 - b^2 y_2 \end{aligned} \]
Sigmoid function:
\[S(v) = \frac{2 \nu_{\text{max}}}{1 + \exp(r(v_0 - v))}\]
State variables:
- \(y_0\): Average membrane potential of pyramidal cells
- \(y_1\): Average membrane potential of excitatory interneurons
- \(y_2\): Average membrane potential of inhibitory interneurons
- \(y_3, y_4, y_5\): Time derivatives of \(y_0, y_1, y_2\)
Attributes
| Name | Type | Description |
|---|---|---|
| STATE_NAMES | tuple of str | State variable names: ("y0", "y1", "y2", "y3", "y4", "y5") |
| INITIAL_STATE | tuple of float | Default initial conditions: (0.0, 5.0, 5.0, 0.0, 0.0, 0.0) |
| COUPLING_INPUTS | dict | Coupling input specification: {'instant': 1, 'delayed': 1} |
| DEFAULT_PARAMS | Bunch | Standard Jansen-Rit parameters (A, B, a, b, v0, nu_max, r, J, a_1-a_4, mu) |
Methods
| Name | Description |
|---|---|
| dynamics | Compute Jansen-Rit dynamics with two coupling inputs. |
dynamics
experimental.network_dynamics.dynamics.tvb.JansenRit.dynamics(
t,
state,
params,
coupling,
external,
)Compute Jansen-Rit dynamics with two coupling inputs.
Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| t | float | Current time (unused for autonomous system) | required |
| state | jnp.ndarray | Current state with shape [6, n_nodes] containing (y0, y1, y2, y3, y4, y5) |
required |
| params | Bunch | Model parameters including: A, B, a, b, v0, nu_max, r, J, a_1, a_2, a_3, a_4, mu | required |
| coupling | Bunch | Coupling inputs with attributes .instant[1, n_nodes] and .delayed[1, n_nodes] |
required |
| external | Bunch | External inputs (currently unused) | required |
Returns
| Name | Type | Description |
|---|---|---|
| derivatives | jnp.ndarray | State derivatives with shape [6, n_nodes] |
| auxiliaries | jnp.ndarray | Auxiliary variables with shape [3, n_nodes] containing sigmoid function values |