Девлог #95 – Пакет прикладної науки: 12 нових симуляцій у 11 категоріях

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

12 симуляцій у 11 категоріях

Пакет прикладної науки, двомовний з першого дня

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

650
Усього симуляцій
12
Нових у цьому пакеті
11
Зачеплених категорій
95
№ Девлогу

Нові симуляції

🔴

Гравітаційний червоний зсув відносність

Червоний зсув Шварцшильда для світла, що піднімається з гравітаційної ями. П'ять тіл від Землі до чорної діри, анімований фотон, довжина хвилі якого зсувається до червоного, і експеримент Паунда-Ребки (z ≈ 2.46×10−¹&sup5;).

🌈

Дифракційна ґратка оптика

Інтенсивність інтерференції N щілин зі структурою головного максимуму та обвідної sinc, рівняння ґратки, монохроматичне проти білого світла, роздільна здатність R = mN та 6 пресетів.

🌲

Випадковий ліс машинне навчання

Бутстреп-агрегування плюс випадкові підмножини ознак дерев рішень. Порівняйте одне перенавчене дерево з ансамблем з 50 дерев, розбиття за домішкою Джині, помилку поза мішком (OOB) і згладжену межу рішення.

🌊

Ель-Ніньйо (ENSO) клімат

Модель осцилятора із затримкою для Ель-Ніньйо-Південної осциляції: нахилений термоклин Тихого океану, поріг Океанічного індексу Ніньйо ±0,5°C та нерегулярний цикл 2-7 років.

👁️

Гештальт-групування сприйняття

Шість принципів групування в дії: близькість, схожість, замкненість (трикутник Канідзи), неперервність, спільна доля та фігура-тло (ваза Рубіна).

🎲

Ймовірність кубиків ігрова математика

Розподіл суми кубиків як згортка, що сходиться до гаусіани (центральна гранична теорема), закон великих чисел, формули середнього й дисперсії та реальні шанси в казино.

🏰

Процедурне підземелля геймдев

Три класичні алгоритми генерації: розбиття BSP, випадкові кімнати, з'єднані графом коридорів з остовного дерева, та печери клітинних автоматів — усі керовані одним лінійним конгруентним генератором із зерном.

🔢

Числа Каталана комбінаторика

Послідовність Каталана і п'ять її бієкцій: збалансовані дужки, шляхи Дика, бінарні дерева, тріангуляції багатокутника та непересічні хорди, зі співвідношенням Cₙ₊₁/Cₙ → 4.

🧱

Підпірна стіна будівельна інженерія

Активний тиск ґрунту за Ренкіном, результуюча сила, що діє на H/3, коефіцієнти запасу проти перекидання та ковзання, ексцентриситет основи та анімований режим руйнування.

🩸

Гемодіаліз медтехніка

Протитечійний кліренс сечовини, кінетика одного пулу, ціль адекватності Kt/V та коефіцієнт зниження сечовини — математика, що стоїть за призначенням діалізу.

🌱

Фотосинтез агрономія

Крива світлової реакції з точками компенсації та насичення, закон обмежувальних факторів Блекмана, темнове дихання та пресети C3 проти C4.

💧

Іригація і вода ґрунту агрономія

Водний баланс ґрунту, польова вологоємність і точка в'янення, тригер допустимого управлінського виснаження, евапотранспірація культури ET = ET₀·Kc та дефіцитна іригація.

Гравітаційний червоний зсув: світло, що піднімається з ями

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

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

Класичний земний тест — експеримент Паунда-Ребки (1959), що виміряв крихітний червоний зсув гамма-променів, які піднімаються 22,5-метровою вежею в Гарварді — частковий зсув лише близько 2,46×10−¹&sup5;, підтверджений за допомогою ефекту Мессбауера.

R_s   = 2GM / c^2                  (радіус Шварцшильда)
f_recv / f_emit = sqrt(1 - R_s/r_emit) / sqrt(1 - R_s/r_recv)
z     = (lambda_recv - lambda_emit) / lambda_emit
Паунд-Ребка:  z = gh/c^2 ≈ 2.46e-15  (h = 22.5 м)

Дифракційна ґратка: інтерференція N щілин

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

Картина інтенсивності — це добуток двох факторів: члена багатощілинної інтерференції, який різко загострюється зі зростанням числа щілин N, та обвідної однощілинної дифракції sinc, що модулює висоту піків. Головні максимуми з'являються там, де різниця ходу між сусідніми щілинами становить ціле число довжин хвиль, що задається рівнянням ґратки. Здатність розділити дві близькі довжини хвилі — роздільна здатність — масштабується як з порядком m, так і з числом освітлених щілин N.

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

I(theta) = I0 * [ sin(N*delta/2) / (N*sin(delta/2)) ]^2 * sinc^2(beta)
delta    = (2*pi*d/lambda) * sin(theta)        (фаза між щілинами)
d * (sin(theta_i) + sin(theta_m)) = m*lambda   (рівняння ґратки)
R        = lambda / d(lambda) = m*N            (роздільна здатність)

Випадковий ліс: мудрість багатьох дерев

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

Кожне розбиття обирається так, щоб максимізувати зменшення домішки Джині — міри того, наскільки перемішані мітки класів у вузлі. Оскільки кожне дерево навчається на бутстреп-вибірці, приблизно третина даних залишається поза кожним деревом; ці зразки поза мішком (out-of-bag) дають чесну оцінку узагальнення без крос-валідації.

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

Gini(node) = 1 - sum_k p_k^2          (домішка, p_k = частка класу)
Бутстреп: вибірка n точок з поверненням для кожного дерева
Мішок ознак: обрати sqrt(p) ознак на кожному розбитті
OOB помилка: передбачити кожну точку, використовуючи лише дерева, що її не бачили
Голосування: клас більшості серед усіх дерев

Ель-Ніньйо: осцилятор із затримкою

Ель-Ніньйо-Південна осциляція (ENSO) — найбільше джерело міжрічної кліматичної мінливості на Землі. Вона виникає через пов'язаний зворотний зв'язок між тропічним Тихим океаном та атмосферою над ним: тепла температура поверхні моря послаблює пасатні вітри, що вирівнює термоклин, що ще більше нагріває поверхню — позитивний зворотний зв'язок, який вийшов би з-під контролю, якби не негативний зворотний зв'язок із затримкою, який несуть повільні океанські хвилі, що перетинають басейн.

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

Симуляція нахиляє термоклин Тихого океану в реальному часі й відстежує Океанічний індекс Ніньйо, оголошуючи подію Ель-Ніньйо чи Ла-Нінья щоразу, коли індекс перетинає ±0,5°C протягом тривалого періоду.

dT/dt = a*T(t) - b*T(t - tau) - eps*T(t)^3
  a   : локальне пов'язане зростання (зворотний зв'язок Б'єркнеса)
  b   : затриманий хвильовий зворотний зв'язок (негативний)
  tau : затримка перетину/відбиття океанської хвилі
Подія ONI:  |T| > 0.5 C стало;  період ≈ 2-7 років

Гештальт-групування: як організовується зір

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

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

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

Ймовірність кубиків: від згортки до дзвоноподібної кривої

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

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

E[sum]   = n * (s + 1) / 2
Var[sum] = n * (s^2 - 1) / 12          (n кубиків, s граней у кожного)
P_sum    = P_die * P_die * ... (n-кратна згортка)
ЦГТ:  стандартизована сума -> Normal(0,1) зі зростанням n
ЗВЧ:  вибіркове середнє -> E[X] зі зростанням кидків

Процедурне підземелля: три генератори, одне зерно

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

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

LCG:  x = (a*x + c) mod m            (детерміноване, керується зерном)
BSP:  розбити прямокутник; рекурсія; кімната на лист; з'єднати сусідів
Кімнати+MST: розмістити прямокутники; відкинути перекриття; коридори через остовне дерево
Печери: випадкове заповнення p; повторити: клітина = (сусідні_стіни >= 5)

Числа Каталана: одна послідовність, багато облич

Числа Каталана 1, 1, 2, 5, 14, 42, 132… з'являються у вражаючому діапазоні задач підрахунку. Симуляція показує п'ять із них як живі, керовані бієкції, роблячи наочним дивовижний факт, що всі вони підраховуються тією самою послідовністю.

n-те число Каталана підраховує способи збалансувати n пар дужок, монотонні ґраткові шляхи, що залишаються нижче діагоналі (шляхи Дика), форми бінарних дерев з n внутрішніми вузлами, тріангуляції опуклого багатокутника та способи провести непересічні хорди, що з'єднують 2n точок на колі. Перетягніть повзунок для n, і кожна панель перерахує в такт.

C_n = (2n)! / ((n+1)! * n!) = binom(2n, n) / (n + 1)
Рекурентність:  C_{n+1} = sum_{i=0..n} C_i * C_{n-i}
Асимптотичне співвідношення:  C_{n+1} / C_n -> 4  зі зростанням n
n:    0 1 2 3 4  5   6
C_n:  1 1 2 5 14 42 132

Підпірна стіна: тиск ґрунту та безпека

Підпірна стіна утримує масу ґрунту, яка інакше осіла б до свого природного кута природного укосу. Проєктування такої стіни означає кількісне визначення горизонтальної сили, яку чинить ґрунт, і доведення, що стіна не перекинеться, не ковзне вперед і не перевантажить основу під собою.

Теорія Ренкіна дає коефіцієнт активного тиску ґрунту як функцію кута тертя ґрунту. Тиск зростає лінійно з глибиною, тож результуюча сила діє на одній третині висоти стіни від основи. Симуляція обчислює коефіцієнти запасу проти перекидання й ковзання, ексцентриситет результуючої на основі та відтворює анімоване руйнування, коли коефіцієнт запасу падає нижче порогу.

K_a   = tan^2(45 - phi/2)              (активний коефіцієнт Ренкіна)
P_a   = 0.5 * K_a * gamma * H^2        (сила, що діє на H/3)
FS_overturning = M_resist / M_overturn   >= 2.0
FS_sliding     = (mu * N) / P_a          >= 1.5
e     = B/2 - (M_net / N)               (ексцентриситет основи)

Гемодіаліз: мембрана замість нирки

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

Проведення двох потоків протитечійно — у протилежних напрямках — підтримує високий градієнт концентрації по всій довжині мембрани, максимізуючи кліренс. Симуляція моделює спадну концентрацію сечовини в крові за допомогою кінетики одного пулу й повідомляє два клінічні показники адекватності: безрозмірний Kt/V і коефіцієнт зниження сечовини.

C(t)  = C0 * exp(-K * t / V)           (кінетика сечовини одного пулу)
  K   : кліренс діалізатора (мл/хв)
  V   : об'єм розподілу сечовини
Kt/V  >= 1.2     (ціль адекватності на сеанс)
URR   = (C0 - C_end) / C0 * 100%

Фотосинтез: крива світлової реакції

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

Симуляція моделює чисту асиміляцію непрямокутною гіперболою, керованою квантовим виходом і максимальною швидкістю насичення світлом, за вирахуванням постійного члена темнового дихання. Вона відзначає точки компенсації й насичення та ілюструє закон обмежувальних факторів Блекмана — ідею, що найповільніший вхідний фактор обмежує загальну швидкість. Пресети C3 і C4 показують, чому рослини C4, які концентрують CO₂ навколо свого фіксувального ферменту, перевершують рослини C3 в яскравих, спекотних умовах.

A_net = (phi*I * A_max) / (phi*I + A_max) - R_d
  phi   : квантовий вихід (моль CO2 на моль фотонів)
  I     : потік фотонів;   A_max : швидкість насичення світлом
  R_d   : темнове дихання
Точка компенсації:  A_net = 0
Точка насичення:    dA/dI ≈ 0  (обмеження Блекмана)

Іригація: водне «відро» ґрунту

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

Відро обмежене двома властивостями ґрунту: польовою вологоємністю — водою, що утримується після того, як гравітація зливає надлишок, і точкою в'янення, нижче якої коріння більше не може отримувати воду. Доступна для рослини вода лежить між ними, а частка допустимого управлінського виснаження встановлює тригер для наступної іригації. Потреба культури у воді — це базова евапотранспірація, масштабована коефіцієнтом культури; симуляція також досліджує дефіцитну іригацію, де свідоме недополив економить воду за скромної втрати врожаю.

delta_S = P + I - ET - D - R           (водний баланс ґрунту)
  P,I : опади, іригація;  D,R : дренаж, стік
ET    = ET0 * Kc                       (евапотранспірація культури)
TAW   = (FC - WP) * root_depth         (загальна доступна вода)
Тригер іригації, коли виснаження >= MAD * TAW

Що далі

На цьому пакет прикладної науки завершується — 12 симуляцій, 11 категорій, усі двомовні, доводячи бібліотеку до 650. Тепер, коли будівельна інженерія, медтехніка й агрономія представлені краще, наступний пакет повернеться до фізичного та математичного стрижня, продовжуючи заповнювати прогалини в сприйнятті та ігровій математиці. Перегляньте все в архіві блогу.

← Девлог #94: Хвиля 73 Усі дописи →