---
name: lorenz_step
kind: function
lang: go
domain: datascience
version: "1.0.0"
purity: pure
signature: "LorenzStep(s LorenzState, dt float64, p LorenzParams) LorenzState"
description: "Paso del atractor de Lorenz (sistema caótico determinista). Integración Euler con parámetros configurables. Incluye LorenzSeries para generar N pasos."
tags: [lorenz, chaos, attractor, simulation, math, dynamical-systems]
uses_functions: []
uses_types: []
returns: []
returns_optional: false
error_type: ""
imports: []
params:
  - name: s
    desc: "estado actual del atractor como {X, Y, Z} (coordenadas 3D del sistema)"
  - name: dt
    desc: "paso temporal de integración (ej: 0.005 segundos, valores menores = más preciso)"
  - name: p
    desc: "parámetros del sistema Lorenz (sigma≈10, rho≈28, beta≈8/3 para el butterfly clásico)"
output: "nuevo estado después de un paso de integración Euler, coordenadas típicamente en rango [-20, 20]"
tested: false
tests: []
test_file_path: ""
file_path: "functions/datascience/lorenz_step.go"
---

## Ejemplo

```go
p := DefaultLorenzParams()
state := LorenzState{X: 1, Y: 1, Z: 1}

// Un paso
next := LorenzStep(state, 0.005, p)

// Serie completa
series := LorenzSeries(LorenzState{X: 1, Y: 1, Z: 1}, 0.005, p, 10000)
```

## Notas

El atractor de Lorenz es un sistema de ecuaciones diferenciales que produce comportamiento caótico determinista. Con los parámetros clásicos (sigma=10, rho=28, beta=8/3), el sistema converge al famoso "butterfly attractor". X oscila típicamente entre -20 y 20.
