2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Упругий нецетральный удар двух движущихся шаров
Сообщение21.01.2015, 20:45 


21/01/15
2
Здравствуйте. В универе задали написать игру бильярд, но использовать готовые физ. движки запретили. Пришёл в ступор на той стадии, когда нужно смоделировать упругий нецентральный удар между двумя движущимися шарами. В интернете на удивление нашёл только взаимодействие подвижного шара с неподвижным. Уважаймые форумчане, подскажите пожалуйста либо дайте материал где это описывается. Грубо говоря, мне нужно зная координаты двух шаров и их векторов скорости получить новые вектора скорости после столкновения в общем случае.

 Профиль  
                  
 
 Re: Упругий нецетральный удар двух движущихся шаров
Сообщение21.01.2015, 20:50 
Заслуженный участник


25/02/08
2961
convict
Смотрите в ЛЛ(I)

 Профиль  
                  
 
 Re: Упругий нецетральный удар двух движущихся шаров
Сообщение21.01.2015, 20:57 


10/02/11
6786
$$m_1(\overline v_1^+-\overline v_1)=\overline R,\quad m_2(\overline v_2^+-\overline v_2)=-\overline R,\quad T^+=T$$
$m_i$ -- массы шаров; $\overline v_i^+,\overline v_i$ -- скорости шаров после удара и до удара соответственно; $\overline R$ -- "сила" реакции направлена вдоль прямой, соединяющей центры шаров; $T^+,T$ -- кинетическая энергия системы после удара и до удара соответственно

 Профиль  
                  
 
 Re: Упругий нецетральный удар двух движущихся шаров
Сообщение21.01.2015, 21:36 


21/01/15
2
Ms-dos4Б незнакомая мне аббревиатура. Не могли бы вы расшифровать?
Oleg Zubelevich, в моём случае масса одинакова. Про сохранение энергии понятно. Но как посчитать тот самый вектор R?

 Профиль  
                  
 
 Re: Упругий нецетральный удар двух движущихся шаров
Сообщение21.01.2015, 23:29 
Заслуженный участник
Аватара пользователя


30/01/06
72407
convict в сообщении #966428 писал(а):
незнакомая мне аббревиатура. Не могли бы вы расшифровать?

Ландау, Лифшиц. Теоретическая физика. Том 1. Механика.

Ландау-Лифшица часто называют "библией" теорфизики.

----------------

Задача про бильярд становится намного сложнее, если требуется учитывать качение... Вот тут-то Oleg Zubelevich и развернётся...

 Профиль  
                  
 
 Re: Упругий нецетральный удар двух движущихся шаров
Сообщение22.01.2015, 08:22 
Заслуженный участник


28/12/12
7931
convict в сообщении #966398 писал(а):
В интернете на удивление нашёл только взаимодействие подвижного шара с неподвижным. Уважаймые форумчане, подскажите пожалуйста либо дайте материал где это описывается. Грубо говоря, мне нужно зная координаты двух шаров и их векторов скорости получить новые вектора скорости после столкновения в общем случае.

Найденного в интернете, вообще говоря, достаточно: переходите в систему, где один шар неподвижен, применяете найденное, переходите обратно.

 Профиль  
                  
 
 Re: Упругий нецетральный удар двух движущихся шаров
Сообщение22.01.2015, 10:58 


11/12/14
893
Код:
    float k = 2.0f; // k = [ 1.0f ... 2.0f ]
    float coef = mass / (mass + whom->mass);
    Vertex3Df relSpeed = speed - whom->speed;
    Vertex3Df nRelSpeed = -((-normal) & relSpeed) * normal;
    nRelSpeed *= k;
    speed -= (1.0f - coef) * nRelSpeed;
    whom->speed += coef * nRelSpeed;

тут ООП-ный код, текущий объект - шар, а whom - шар с которым столкновение происходит.
mass, speed поля масс и скоростей соответственно, raduis в данном расчете не нужен
normal - нормаль столкновения, в сущности вектор соединяющий центры шаров, но единичной длины. в какую сторону направлен уже не помню.
ессесно используется векторная алгебра, так что operator& - скалярное умножение векторов (dot product).
k контролирует степень упругости удара, при 2 - абсолютно упругий.

 Профиль  
                  
 
 Re: Упругий нецетральный удар двух движущихся шаров
Сообщение22.01.2015, 11:06 


10/02/11
6786
convict в сообщении #966428 писал(а):
оём случае масса одинакова. Про сохранение энергии понятно. Но как посчитать тот самый вектор R?

я Вам написал 5 уравнений с 5 неизвестными, что еще надо програмеру для счастья?

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Модераторы: photon, whiterussian, profrotter, Jnrty, Aer, Парджеттер, Eule_A, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group