Система Лоренца — це три пов'язані нелінійні звичайні диференціальні рівняння, вперше виведені метеорологом Едвардом Лоренцом у 1963 році під час моделювання атмосферної конвекції: ẍ = σ(y − x), ẏ = x(ρ − z) − y, ż = xy − βz. За класичними параметрами σ = 10, ρ = 28, β = 8/3 траєкторія ніколи не замикається, але назавжди залишається в обмеженій фрактальній ділянці фазового простору — дивному атракторі Лоренца. Система є прототипом детермінованого хаосу: найменша різниця початкових умов зростає експоненційно, роблячи довгостроковий прогноз неможливим, незважаючи на повністю детерміновані рівняння.
Ця симуляція інтегрує рівняння Лоренца в реальному часі методом Рунге–Кутта четвертого порядку (крок dt = 0.005) всередині Three.js WebGL сцени з вільною орбітальною камерою (OrbitControls). Кожна точка стрічки-сліду забарвлюється одним із чотирьох режимів: миттєва швидкість, поточне крило (x < 0 або x > 0), висота по осі z, або плин часу — що робить топологію дивного атрактора візуально виразною. П'ять пресетів дозволяють досліджувати якісно різну поведінку: класичний хаос при ρ = 28, поблизу біфуркації при ρ = 24, справжня periodična орбіта при ρ = 99.96, перехідний хаос при ρ = 21, та спрощена атмосферна модель Лоренца-84.
Рівняння Лоренца — це три пов'язані ЗДР першого порядку: dx/dt = σ(y − x), dy/dt = x(ρ − z) − y, dz/dt = xy − βz. Вони моделюють конвекційні валики рідини, що нагрівається знизу (конвекція Релея–Бенара). Змінна x пропорційна швидкості конвективного перекидання, y — горизонтальному перепаду температури, z — спотворенню вертикального профілю температури. Лоренц вивів їх у 1963 р. з рівнянь Нав'є–Стокса, залишивши лише три моди Фур'є.
Перетягуйте 3D-полотно, щоб обертати атрактор; прокручуйте або стискайте пальцями, щоб масштабувати; правою кнопкою — для панорамування. Повзунки у верхній панелі дозволяють змінювати σ, ρ і β у реальному часі, а повзунок «Слід» регулює кількість показаних кроків інтеграції. Випадний список «Колір» перемикає режими: за швидкістю, крилом, висотою або часом. Меню «Пресет» миттєво застосовує п'ять відомих наборів параметрів. «Пауза» та «Скинути» також доступні.
При погляді зверху (вздовж осі z) дві петлі орбіт нагадують крила метелика — траєкторія спірально розкручується на одній частці, а потім перемикається на іншу. Цей образ дав назву «ефекту метелика». Лоренц популяризував метафору у лекції 1972 р.: «Чи може помах крил метелика в Бразилії викликати торнадо в Техасі?» — описуючи, як малі збурення зростають експоненційно в хаотичних системах.
Симуляція використовує класичний метод Рунге–Кутта четвертого порядку (RK4) з фіксованим кроком dt = 0.005 і 6 під-кроками на кадр (ефективне просування 0.03 за кадр при 60 fps). RK4 забезпечує четвертий порядок точності — локальна похибка відсікання O(dt⁵) — що важливо для жорсткої хаотичної системи Лоренца, де простіший метод Ейлера швидко накопичує помилки у фазовому просторі.
Дивний атрактор — це атрактор у фазовому просторі, що має фрактальну структуру. Атрактор Лоренца має гаусдорфову (фрактальну) розмірність приблизно 2.06, що означає: він займає нульовий об'єм, але більш складний, ніж поверхня. Сусідні траєкторії розбігаються зі швидкістю, що визначається максимальним показником Ляпунова λ₁ ≈ 0.906 с⁻¹, підтверджуючи детермінований хаос: передбачуваність скорочується вдвічі кожні ≈ 0.76 одиниці часу.
Параметр ρ контролює рушійну силу (аналог числа Релея в конвекції). При ρ < 1 всі траєкторії сходяться до початку координат. При 1 < ρ < 24.74 система має дві стійкі нерухомі точки (стаціонарні конвекційні валики). Поблизу ρ ≈ 24.74 відбувається субкритична біфуркація Хопфа і виникає хаос. При ρ = 28 існує відомий дивний атрактор. Поблизу ρ = 99.96 знову з'являється periodична орбіта — «вікно» в хаотичному режимі. Меню «Пресет» дозволяє перемикатися між цими якісно різними поведінками.
σ — число Прандтля, відношення кінематичної в'язкості до теплопровідності. Для повітря σ ≈ 0.72; Лоренц використав σ = 10, що підходить для води і забезпечує стабільний хаос. Зменшення σ нижче 1 зазвичай пригнічує хаос. β — геометричний фактор, пов'язаний зі співвідношенням сторін конвекційної комірки; для класичного кругового валика β = 8/3 ≈ 2.667. Зміна β зсуває положення нерухомих точок-«крил» і трохи змінює фрактальну розмірність атрактора, але рідко усуває хаос при стандартних ρ = 28.
На кожному кроці інтеграції миттєва швидкість обчислюється як модуль вектора швидкості у фазовому просторі: |v| = √(ẍ² + ẏ² + ż²). Він лінійно відображається з діапазону 0–30 у значення відтінку 240°–0° (синій для повільних, червоний для швидких). Слід показує синій колір (повільно) на внутрішніх спіралях кожної частки — де траєкторія щільно закручується — і червоний (швидко) поблизу сідловидної ділянки переходу між двома крилами.
Кільцевий буфер довжиною, що відповідає значенню повзунка сліду, зберігає лише останні N кроків інтеграції. Коли буфер заповнений, кожна нова точка перезаписує найстарішу, тому використання пам'яті залишається постійним. Геометрія Three.js перебудовується щокадру шляхом зчитування буфера в хронологічному порядку та завантаження впорядкованих масивів з плаваючою комою на GPU через BufferAttribute.
Так. Кожна орбіта існує у тривимірному фазовому просторі (x, y, z). Сам атрактор — нескінченно тонка множина з фрактальною розмірністю ≈ 2.06 — по суті нескінченно складена двовимірна поверхня. У двох вимірах ви бачили б лише проєкцію: вигляд збоку показує два пов'язані спіралі, вигляд зверху — крила метелика. Ця симуляція дозволяє вільно обертатися навколо об'єкта, щоб оцінити справжню 3D-геометрію.
Ефект метелика часто неправильно розуміють як буквальне твердження, що метелик спричиняє торнадо. Насправді йдеться про те, що в хаотичній системі мала зміна початкових умов призводить до експоненційно відмінних результатів з часом — що робить довгостроковий прогноз принципово обмеженим, але не означає, що метелик є реальною фізичною причиною. Друге поширене хибне уявлення — що хаос означає випадковість. Система Лоренца є повністю детермінованою: при однакових початкових умовах траєкторія щоразу однакова. Позірна випадковість виникає з експоненційної чутливості до найменших неточностей будь-якого реального вимірювання.