Ця пiсочниця моделює рiй куль, якi стрибають i стикаються всерединi 2D-коробки, обробляючи кожен удар через iмпульсний вiдгук зiткнення, що використовується у фiзичних рушiях та iграх. Збереження iмпульсу лежить в основi всього — вiд ударiв у бiльярдi й аналiзу автоаварiй до стикування космiчних апаратiв. Цiкаво те, що єдиний коефiцiєнт — вiдновлення e — плавно налаштовує систему мiж абсолютно пружною та абсолютно липкою поведiнкою, тодi як повний iмпульс лишається незмiнним.
j = -(1 + e)(v_rel . n) / (1/m1 + 1/m2) — j - величина iмпульсу, e - коеф. вiдновлення, v_rel - вiдносна швидкiсть, n - одинична нормаль контакту, m1, m2 - двi маси. Швидкостi оновлюються як v1 += j*n/m1 та v2 -= j*n/m2.
Коли двi рiвнi маси стикаються пружно по прямiй, вони просто обмiнюються швидкостями — саме тому биток у бiльярдi може зупинитися намертво, вiдправивши цiльову кулю майже на повнiй швидкостi.
При зiткненнi двох тiл теорема iмпульсу визначає обмiн: повний iмпульс системи зберiгається незалежно вiд коефiцiєнта вiдновлення e. e=1 — абсолютно пружне зiткнення (зберiгається й кiнетична енергiя); e=0 — абсолютно непружне (тiла злипаються, максимальна втрата енергiї у виглядi тепла).
Перемiщуйте слайдер Коеф. вiдновлення (e) мiж 0 та 1 для переходу мiж режимами. Слайдер Спiввiдн. мас змiнює вiдносну масу кулi. Додайте Гравiтацiю для бiльш складних взаємодiй. Перетягнiть будь-яку кулю мишею для перемiщення.
Коефiцiєнт вiдновлення вперше дослiджував Ньютон, а згодом формалiзував Пуасон. Реальнi значення: сталева куля об сталеву пластину ~0.9, гумовий м'яч ~0.7, м'яка глина ~0. У бiльярдi биток (e ≈ 0.97) передає майже весь iмпульс цiльовiй кулi при прямому зiткненнi рiвних мас.
Ця симуляцiя моделює систему куль, що рухаються та зiштовхуються всерединi обмеженого 2D-простору, пiдпорядковуючись класичнiй ньютонiвськiй механiцi. Кожне зiткнення обробляється за допомогою iмпульсної фiзики: розрахований iмпульс уздовж нормалi контакту оновлює швидкостi обох куль, зберiгаючи при цьому сумарний лiнiйний iмпульс системи. Коефiцiєнт вiдновлення (e) визначає, скiльки кiнетичної енергiї залишається пiсля удару — вiд абсолютно пружного (e=1) до абсолютно непружного (e=0) зiткнення.
Механiка двовимiрних зiткнень лежить в основi безлiчi практичних застосувань — вiд бiльярду й снукера до iнженерiї краш-тестiв автомобiлiв, симуляцiй молекулярної динамiки та конструювання спортивного iнвентарю, як-от тенiсних ракеток i крикетних м'ячiв.
У будь-якому зiткненнi iзольованих тiл сумарний лiнiйний iмпульс системи залишається незмiнним до i пiсля удару. У двовимiрному просторi це означає, що й x-складова, i y-складова загального iмпульсу зберiгаються окремо одна вiд одної. Цей принцип дiє незалежно вiд того, пружне зiткнення чи непружне, i незалежно вiд коефiцiєнта вiдновлення.
Слайдер Кiлькiсть куль (2–20) визначає, скiльки куль бере участь у симуляцiї. Слайдер Спiввiдношення мас змiнює вiдносну масу куль, що чергуються, — так можна побачити асиметричний обмiн швидкостями. Перетягуйте слайдер Коефiцiєнт вiдновлення (e) вiд 0 (кулi злипаються) до 1 (абсолютно пружний вiдскок). Увiмкнiть Гравiтацiю, щоб отримати ефект накопичення куль. Також можна перетягнути будь-яку кулю мишею чи пальцем прямо пiд час роботи симуляцiї.
Коефiцiєнт вiдновлення (e) — це вiдношення вiдносної швидкостi розльоту до вiдносної швидкостi зближення тiл уздовж нормалi контакту пiсля удару. Значення e=1 означає, що кiнетична енергiя не втрачається (абсолютно пружне зiткнення); e=0 означає, що тiла пiсля удару рухаються разом (абсолютно непружне зiткнення). Реальнi приклади: сталева куля об сталеву плиту — приблизно 0.9, гумовий м'яч — близько 0.7, тенiсний м'яч на кортi — приблизно 0.75, м'яка глина — практично 0.
Величина iмпульсу обчислюється за формулою: j = -(1 + e)(v_rel · n) / (1/m1 + 1/m2), де e — коефiцiєнт вiдновлення, v_rel — вектор вiдносної швидкостi, n — одинична нормаль контакту, а m1 i m2 — маси куль. Далi швидкостi оновлюються як v1 += j*n/m1 та v2 -= j*n/m2. Ця формула гарантує збереження iмпульсу та коректне розсiювання енергiї для будь-якого значення e вiд 0 до 1.
Класичний приклад — бiльярд i снукер: коли биток вдаряє кулю однакової маси пiд кутом, у межi пружного зiткнення (e близьке до 1) обидвi кулi розлiтаються пiд прямим кутом одна до одної. В iнженерiї краш-тестiв 2D-моделi зiткнень використовують для прогнозування деформацiї автомобiля та руху пасажирiв пiд час бокових ударiв. Прискорювачi елементарних частинок спираються на 2D- (i 3D-) динамiку зiткнень для передбачення кутiв розсiювання субатомних частинок.
Поширена помилка — вважати, що важча куля просто вiдштовхує легшу, сама залишаючись незмiнною. Насправдi швидкiсть змiнюється в обох куль: у важчої — менше, у легшої — значно бiльше. Коли дуже важка куля пружно вдаряє нерухому дуже легку кулю, важка майже не сповiльнюється, а легка вiдскакує зi швидкiстю, що майже вдвiчi перевищує швидкiсть важкої, — саме такий ефект спостерiгають у демонстрацiях на кшталт «колиски Ньютона».
Математичний опис пружних зiткнень розробив Християн Гюйгенс приблизно у 1668 роцi — вiн сформулював правила обмiну швидкостями для тiл однакової та рiзної маси. Iсаак Ньютон увiв поняття коефiцiєнта вiдновлення у своїй працi «Principia Mathematica» (1687). Симеон-Денi Пуассон пiзнiше, на початку XIX столiття, запропонував бiльш строгий iмпульсний пiдхiд, що й лежить в основi сучасних алгоритмiв обробки зiткнень.
Обробка 2D-зiткнень — фундаментальний будiвельний блок, спiльний для багатьох типiв симуляцiй. Рушiї фiзики твердого тiла (якi використовують iгри й робототехнiка) розширюють цей пiдхiд обертальними iмпульсами та тертям. Симуляцiї рiдин методом SPH обробляють взаємодiю багатьох частинок, що є статистичним аналогом повторюваних зiткнень. Симуляцiї тканини й м'яких тiл використовують подiбнi технiки iмпульсної корекцiї для розв'язання обмежень. Симуляцiї молекулярної динамiки газiв розглядають взаємодiю атомiв як послiдовнiсть двочастинкових пружних зiткнень.
Iгровi рушiї, як-от Unity та Unreal Engine, використовують iмпульснi розв'язувачi зiткнень у реальному часi для 2D i 3D об'єктiв. Iнженери робототехнiки моделюють контакт захвату манiпулятора за тими самими рiвняннями. Розробники спортивного iнвентарю моделюють удари м'яча об биту чи ракетку, щоб оптимiзувати передачу енергiї. Iнженери з безпеки автомобiлiв застосовують 2D-моделi зiткнень ще на раннiх етапах проєктування, до дорогих повномасштабних краш-тестiв, що суттєво скорочує час i вартiсть розробки.
Серед актуальних тем — симуляцiї сипких (гранульованих) матерiалiв, де одночасно взаємодiють тисячi частинок; косi та обертальнi зiткнення куль, що потребують поєднання лiнiйних i кутових iмпульсних моделей; а також перехiд вiд класичної до квантової механiки зiткнень на наномасштабi. Дослiдники також удосконалюють алгоритми виявлення зiткнень у реальному часi, застосовуючи просторове хешування на широкiй фазi та розв'язувачi GJK/EPA на вузькiй фазi, достатньо ефективнi для складних форм у масштабних VR- та робототехнiчних застосунках.