Lorenz
experimental.network_dynamics.dynamics.Lorenz(**kwargs)Lorenz chaotic dynamical system with multi-coupling support.
The classic three-dimensional chaotic system with support for structural coupling.
Notes
State equations:
\[ \begin{aligned} \frac{dx}{dt} &= \sigma(y - x) + c_{\text{structural}} \\ \frac{dy}{dt} &= x(\rho - z) - y \\ \frac{dz}{dt} &= xy - \beta z \end{aligned} \]
where \(c_{\text{structural}}\) is the structural coupling input.
Attributes
| Name | Type | Description |
|---|---|---|
| STATE_NAMES | tuple of str | State variable names: ("x", "y", "z") |
| INITIAL_STATE | tuple of float | Default initial conditions: (1.0, 1.0, 1.0) |
| COUPLING_INPUTS | dict | Coupling specification: {'structural': 1} (single structural coupling to x) |
| DEFAULT_PARAMS | Bunch | Model parameters: sigma=10.0 (Prandtl number), rho=28.0 (Rayleigh number), beta=8/3 (geometric parameter) |
Examples
>>> dynamics = Lorenz()
>>> dynamics = Lorenz(sigma=15.0, rho=30.0)Methods
| Name | Description |
|---|---|
| dynamics | Compute Lorenz system derivatives with coupling. |
dynamics
experimental.network_dynamics.dynamics.Lorenz.dynamics(
t,
state,
params,
coupling,
external,
)Compute Lorenz system derivatives with coupling.
Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| t | float | Current time (unused for autonomous system) | required |
| state | jnp.ndarray | Current state with shape [3, n_nodes] containing (x, y, z) |
required |
| params | Bunch | Model parameters: sigma, rho, beta | required |
| coupling | Bunch | Coupling inputs with attribute .structural[1, n_nodes] |
required |
| external | Bunch | External inputs (currently unused) | required |
Returns
| Name | Type | Description |
|---|---|---|
| derivatives | jnp.ndarray | State derivatives with shape [3, n_nodes] containing (dx/dt, dy/dt, dz/dt) |