# [Unity] Strange Attractor

**Lorenz Attractor**

`dx/dt = -px + py`

dy/dt = -xz + rx -y

dz/dt = xy - bz

**Thomas’ Cyclically **Symmetric Attractor

`dx/dt = siny - bx`

dy/dt = sinz - by

dz/dt = sinx - bz

Delay each particle based on its ID

`p.life = (float)id * -1e-05`

`p.life.x += DT;`

if (p.life.x > 0) {

p.velocity = ThomasAttractor(p.position);

p.position += p.velocity;

}