reservoirpy.datasets.lorenz#

reservoirpy.datasets.lorenz(
n_timesteps: int,
rho: float = 28.0,
sigma: float = 10.0,
beta: float = 2.6666666666666665,
x0: list | ndarray = [1.0, 1.0, 1.0],
h: float = 0.03,
**kwargs,
) ndarray[source]#

Lorenz attractor timeseries as defined by Lorenz in 1963 [6] [7].

\[\begin{split}\frac{\mathrm{d}x}{\mathrm{d}t} &= \sigma (y-x) \\ \frac{\mathrm{d}y}{\mathrm{d}t} &= x(\rho - z) - y \\ \frac{\mathrm{d}z}{\mathrm{d}t} &= xy - \beta z\end{split}\]
Parameters:
  • n_timesteps (int) – Number of timesteps to generate.

  • rho (float, default to 28.0) – \(\rho\) parameter of the system.

  • sigma (float, default to 10.0) – \(\sigma\) parameter of the system.

  • beta (float, default to 8/3) – \(\beta\) parameter of the system.

  • x0 (array-like of shape (3,), default to [1.0, 1.0, 1.0]) – Initial conditions of the system.

  • h (float, default to 0.03) – Time delta between two discrete timesteps.

  • **kwargs – Other parameters to pass to the scipy.integrate.solve_ivp solver.

Return type:

ndarray

Examples

>>> from reservoirpy.datasets import lorenz
>>> timeseries = lorenz(10000)
>>> timeseries.shape
(10000, 3)
../../_images/reservoirpy-datasets-lorenz-1.png
Returns:

Lorenz attractor timeseries.

Return type:

array of shape (n_timesteps, 3)

Parameters:

References