💨 Ґратковий газ FHP

Булеві частинки на гексагональній ґратці стикаються та рухаються за простими правилами збереження, усереднюючись в емерджентну гідродинамічну течію — поведінка Нав'є-Стокса з чистої дискретної геометрії.

ХіміяІнтерактивна
Клацніть / перетягніть на полотні, щоб намалювати тверді клітини перешкоди · Частинки вводяться з лівого краю

Як це працює

Модель FHP розміщує булеві "частинки" у вузлах трикутної ґратки, де кожен вузол має шість сусідів з кроком 60° (0°, 60°, 120°, 180°, 240°, 300°). Виключення означає, що щонайбільше одна частинка може рухатись у кожному з шести напрямків у вузлі. Кожен крок часу застосовує дві локальні операції одночасно всюди: зіткнення — таблиця пошуку, що перевпорядковує зайняті напрямки у вузлі, зберігаючи кількість частинок та імпульс, і поширення, яке зсуває кожну частинку на один крок ґратки вздовж її напрямку.

Сире заповнення окремого вузла — це просто шум, один біт на напрямок. Цей симулятор ділить ґратку на невеликі блоки і щокадру усереднює вектори напрямків зайнятих частинок усередині кожного блоку, отримуючи плавне поле стрілок, яке ви бачите: це усереднення (coarse-graining) — саме той крок, завдяки якому континуальна гідродинаміка виникає з дискретного, оборотного мікроскопічного набору правил. Мальована твердa область відбиває частинки, що потрапляють у неї (bounce-back), чого достатньо для виникнення точок застою, відокремлених зсувних шарів і, при високих швидкостях на вході, зриву вихорів позаду перешкоди.

Напрямки: θ_i = i·60°, i = 0..5
Зіткнення двох частинок: {i, i+3} → {i+1, i+4} або {i-1, i+2} (випадково, зі збереженням імпульсу)
Зіткнення трьох частинок: {0,2,4} ↔ {1,3,5} (поворот на 60°)
Усереднена швидкість: u(блок) = (1/N)·Σ по зайнятих напрямках (cos θ_i, sin θ_i)

Часті запитання

Що таке ґратковий газовий автомат і чим FHP відрізняється від справжньої молекулярної динаміки?

Ґратковий газовий автомат (LGA) замінює неперервні координати та швидкості частинок булевими числами заповнення на фіксованій ґратці: кожен вузол може містити щонайбільше одну частинку на кожен дозволений напрямок. На відміну від молекулярної динаміки, LGA еволюціонує через два дискретні локальні кроки — зіткнення та поширення, застосовані одночасно до кожного вузла. Обчислення набагато дешевше, і все одно відтворює рівняння Нав'є-Стокса в макроскопічній границі.

Чому FHP потребувала гексагональної ґратки з 6 напрямками замість квадратної?

Ранній квадратний ґратковий газ (HPP) зберігає масу та імпульс, але має лише 4-кратну обертальну симетрію, яка проникає в макроскопічні рівняння як нефізична залежність тиску та в'язкості від напрямку. Гексагональна ґратка має 6-кратну симетрію — мінімум, необхідний для ізотропності тензора в'язкості. Фріш, Хасслахер і Помо показали у 1986 році, що ця геометрична зміна відтворює коректну поведінку Нав'є-Стокса.

Що насправді роблять кроки зіткнення та поширення?

Поширення переміщує кожну частинку на один крок ґратки вздовж напрямку руху. Зіткнення — суто локальна таблиця пошуку: дві частинки лоб-у-лоб (180°) розсіюються в одну з двох перпендикулярних пар, обрану випадково; три частинки через 120° обертаються разом на 60°; будь-яка інша конфігурація проходить без змін. Обидва правила лише перепризначають зайняті напрямки, тому кількість частинок та імпульс у вузлі не змінюються.

Чому ці правила зіткнень зберігають масу та імпульс?

Збереження маси автоматичне, бо зіткнення ніколи не створюють і не знищують зайняті напрямки. Збереження імпульсу випливає із симетрії: пара лоб-у-лоб має нульовий сумарний імпульс, і обидві перпендикулярні вихідні пари теж мають нульовий імпульс; обертання трьох частинок відображає одну симетричну трійку на іншу таку саму.

Як усереднення перетворює дискретні булеві значення на плавне поле течії?

Заповнення одного вузла — це, по суті, шум. Усереднення по блоку з багатьох вузлів, підсумовування кожного зайнятого напрямку як одиничного вектора та ділення на кількість вузлів дає локальну середню швидкість, яка плавно змінюється в просторі й часі — саме та процедура, яку статистична механіка використовує для переходу від мікростанів до макрополів.

Як FHP моделює обтікання перешкоди та зрив вихорів?

Тверда область використовує граничні умови відбиття: будь-яка частинка, що потрапляє у твердий вузол, змінює напрямок на протилежний і виходить тим самим шляхом. Частинки накопичуються з навітряного боку та розріджуються позаду; в усередненому полі швидкості це дає точку застою спереду, відокремлені зсувні шари та, при вищих швидкостях, почергові вихори позаду — ґратковий аналог вихрової доріжки фон Кармана.

Хто винайшов модель FHP і чому вона важлива історично?

Модель названа на честь Урієля Фріша, Бросла Хасслахера та Іва Помо, які опублікували її у 1986 році після того, як квадратний попередник (HPP) показав нездатність давати ізотропну гідродинаміку. FHP стала першим клітинним автоматом, для якого довели відтворення рівнянь Нав'є-Стокса, і вона надихнула метод ґраткового Больцмана, який сьогодні є стандартним інструментом обчислювальної гідродинаміки.

Які основні обмеження моделі ґраткового газу FHP?

Кожен вузол містить лише жменьку булевих частинок, тож окремі запуски дуже шумні; отримання чистого поля швидкості вимагає усереднення по багатьох вузлах або запусках. Модель обмежена низькими числами Маха, має ефективну в'язкість, залежну від швидкості, а виключення обмежує густину. Це стимулювало появу методів ґраткового Больцмана, які значною мірою замінили FHP у практичній ОГД.

Що означає принцип виключення на ґратці FHP?

Виключення означає, що кожен вузол може містити щонайбільше одну частинку на напрямок, максимум шість загалом, усі з однаковою одиничною швидкістю. Це спрощення моделі, а не фізична вимога реальних газів — воно робить стан вузла невеликим булевим числом і робить автомат точно оборотним та легким для паралельного оновлення.

Що відбувається з частинками на краях змодельованої ґратки?

Верхній і нижній краї періодично замикаються, уникаючи штучних стін, що порушували б течію. Лівий край діє як вхід, куди безперервно вводяться нові частинки у напрямках руху вперед зі швидкістю, що задається повзунком густини, а правий край — відкритий вихід: частинки просто залишають область, імітуючи аеродинамічну трубу зі стаціонарним потоком.

Про цю симуляцію

Автор: Команда MySimulator · Редакційна перевірка: Редакція MySimulator

Оновлено: 11 липня 2026 р.

Цей симулятор запускає справжній ґратковий газовий автомат FHP: кожен вузол гексагональної сітки містить до шести булевих частинок, по одній на кожен з напрямків з кроком 60°, які стикаються за суворими правилами збереження маси та імпульсу, а потім поширюються до сусідів. Заповнення одного вузла — це шум, але усереднення векторів напрямків по невеликих блоках щокадру виявляє плавне поле швидкості у вигляді стрілок — вигляд аеродинамічної труби на те, як течія, подібна до Нав'є-Стокса, може виникнути з нічого, крім дискретної, оборотної геометрії. Намалюйте перешкоду, підвищіть густину на вході — і спостерігайте, як в усередненому полі з'являються точки застою, зсувні шари та зрив вихорів.

🔬 Що показано

Гексагональний ґратковий газовий автомат, що тече праворуч від входу аеродинамічної труби, усереднений у поле стрілок по блоках, щоб емерджентний візерунок течії був видимий замість сирого шуму частинок. Мальована тверда область відбиває частинки через bounce-back, породжуючи сліди та зрив вихорів.

🎮 Як користуватись

Оберіть розмір ґратки, виберіть коло, плоску пластину або відсутність перешкоди зі списку, або клацніть і перетягніть безпосередньо на полотні, щоб намалювати власні тверді клітини (клацання правою кнопкою стирає). Підвищіть повзунок густини на вході, щоб вводити більше частинок з лівого краю, і використовуйте повзунок швидкості, щоб виконувати більше кроків автомата на кадр.

💡 Чи знали ви?

FHP стала першим клітинним автоматом, для якого математично довели відтворення нестисливих рівнянь Нав'є-Стокса в континуальній границі — чисто дискретний, булевий набір правил дає ту саму велкомасштабну фізику, що й диференціальні рівняння, якими інженери проєктують крила літаків.

Часті запитання

Чому я бачу стрілки, а не окремі точки частинок?

Сире заповнення частинками булеве й надзвичайно шумне на масштабі одного вузла. Симулятор підсумовує вектори напрямків зайнятих частинок усередині кожного невеликого блоку та ділить на розмір блоку щокадру — це саме той крок усереднення, який відновлює плавне макроскопічне поле швидкості з мікроскопічної дискретності; малювання сирих точок виглядало б просто як шум.

Що означає показник "Re (ґраткові од.)"?

Це спрощений безрозмірний показник, побудований на швидкості ін'єкції на вході та розмірі перешкоди у ґраткових клітинах, що заміняє справжнє число Рейнольдса (яке залежить від фізичної в'язкості, а не лише від швидкості ін'єкції). Низькі значення відповідають плавній, ламінарній усередненій течії; високі значення відповідають видимому зриву вихорів позаду перешкоди — та сама якісна тенденція, що й для справжніх чисел Рейнольдса.

Чому течія іноді виглядає по-різному після кожного скидання?

Правило зіткнення двох частинок випадково розсіює пари лоб-у-лоб в один із двох перпендикулярних результатів, а ін'єкція на вході також рандомізована. Ця вбудована випадковість навмисна — вона імітує молекулярний хаос і означає, що повторні запуски з однаковими налаштуваннями все одно дають дещо інші, але статистично подібні візерунки течії.

Чому верх і низ ґратки замикаються по колу?

Періодичне замикання вертикальних країв уникає введення штучних твердих стін, які відбивали б частинки й спотворювали поле течії біля верху та низу видимої області. Це фактично моделює нескінченно високу аеродинамічну трубу, тож фізично важливі лише вхід, вихід і будь-яка перешкода, яку ви намалюєте.

Чи можу я намалювати більше однієї перешкоди?

Так. Малювання мишею додає тверді клітини поверх будь-якої форми, обраної у списку, тож ви можете розширити коло, додати додаткові блокатори або повністю побудувати власну геометрію вручну. Клацання правою кнопкою і перетягування стирає тверді клітини назад у відкриті вузли, що можуть переносити частинки.

Це той самий алгоритм, що використовується в реальному інженерному ПЗ ОГД?

Не напряму — промислова обчислювальна гідродинаміка здебільшого використовує метод ґраткового Больцмана, який FHP безпосередньо надихнула, або континуальні розв'язувачі Нав'є-Стокса. Сама FHP сьогодні використовується переважно для навчання та дослідження концептуальних питань статистичної механіки, оскільки демонструє, що гідродинаміка може виникнути з повністю дискретного, точно оборотного мікроскопічного правила.