Comments 21
> полная модель физического тела будет описываться шестью такими уравнениями (или четырьмя для 2D случая)
Может быть, не четырьмя, а тремя? В двумерном случае у тела три степени свободы: две координаты и один угол.
Может быть, не четырьмя, а тремя? В двумерном случае у тела три степени свободы: две координаты и один угол.
+4
это если тело жесткое, мб?
а для тела, способного менять свою форму, придется считать все 4 координаты
а для тела, способного менять свою форму, придется считать все 4 координаты
0
Угу, если не изменяет память, число степеней свободы твёрдого тела считается как d(d+1)/2. (для одно и двухатомных газов в термодинамике меньшие величины берутся, но для «сложных» объектов такая формула)
d=2 → 3
d=3 → 6
d=2 → 3
d=3 → 6
0
s — оператор Лапласса (d/dt)
Оператор Лапласа (в трехмерном пространстве) это:

Раз уж в статье поставлен вопрос о быстродействии, сразу возникает ряд вопросов. Как вы собираетесь решать ДУ: численно или аналитически? Если численно — то каким методом? Можно ли считать, что движение по каждой из степеней свободы происходит независимо от движение по всем остальным степеням свободы? Почему?
+8
Как решать описано во втором источнике. ДУ -> Форма Коши -> Модель пространства состояний -> Разностные уравнения.
В описанной задаче как раз не ставится вопрос возможности линеаризации. Наоборот составляются упрощенные линейные модели независимо для каждой координаты. Как следствие каждая модель описывает одномерный случай, перекрестных связей нет и поэтому оператор Лапласса записан в виде d/dt.
Вопрос точности описания реального объекта (какого-то конкретно) с его перекрестными связями в геймдеве вообще не главный. Главное — примерное правдоподобие движения, удобство описания и не слишком высокая нагрузка на процессор.
В описанной задаче как раз не ставится вопрос возможности линеаризации. Наоборот составляются упрощенные линейные модели независимо для каждой координаты. Как следствие каждая модель описывает одномерный случай, перекрестных связей нет и поэтому оператор Лапласса записан в виде d/dt.
Вопрос точности описания реального объекта (какого-то конкретно) с его перекрестными связями в геймдеве вообще не главный. Главное — примерное правдоподобие движения, удобство описания и не слишком высокая нагрузка на процессор.
0
Вопрос точности описания реального объекта (какого-то конкретно) с его перекрестными связями в геймдеве вообще не главный. Главное — примерное правдоподобие движения, удобство описания и не слишком высокая нагрузка на процессор.
Тогда в чем преимущество вашей модели перед той, которая использована в изучаемом движке?
-1
>…
Модель не моя…
Во-первых, «исключительное преимущество» не утверждается. Во-вторых, эти подходы просто разные. В-третьих, в качестве плюса можно указать бóльшую правдоподобность, бóльшую гибкость и функциональность.
Движок Farseer взят в качестве примера и не конкуренции ради. Но если сравнивать, то его модели реализуют лишь часть функционала, описанного в статье. С помощью описанного подхода можно реализовать поведение объекта такое же как в Farseer и более сложное без добавления дополнительных объектов.
Модель не моя…
Во-первых, «исключительное преимущество» не утверждается. Во-вторых, эти подходы просто разные. В-третьих, в качестве плюса можно указать бóльшую правдоподобность, бóльшую гибкость и функциональность.
Движок Farseer взят в качестве примера и не конкуренции ради. Но если сравнивать, то его модели реализуют лишь часть функционала, описанного в статье. С помощью описанного подхода можно реализовать поведение объекта такое же как в Farseer и более сложное без добавления дополнительных объектов.
0
Вот слайды с рабочиим моделями были бы весьма уместны…
0
Делал на WPF (или на SL — надо порыться в загашниках) демку:
1) квадрат на черном поле играет роль динамического объекта с двумя степенями свободы
2) по нажатию кнопки подается случайное входное воздействие — требуемая позиция (x;y)
3) в зависимости от заданной передаточной функции можно наблюдать разную динамику
Надо код подготовить и выложить на github или еще куда.
1) квадрат на черном поле играет роль динамического объекта с двумя степенями свободы
2) по нажатию кнопки подается случайное входное воздействие — требуемая позиция (x;y)
3) в зависимости от заданной передаточной функции можно наблюдать разную динамику
Надо код подготовить и выложить на github или еще куда.
0
Какой модуль используете для вычислений control или scipy.signal?
0
А есть open source аэродиномические движется для симуляции парашюта?
Можно ли на. Farseerengine сделать что-то типа. Cut the rope?
Можно ли на. Farseerengine сделать что-то типа. Cut the rope?
0
Что общего между названием статьи и ее содержимым? Как связана передаточная функция с уравнением движенияи и как получить координаты? При чем тут устойчивость и что это вообще такое? Насколько важна «устойчивость» кирпича, который мы бросили во вражескую морду?
Самый простой способ посчитать физику это: построить мат. модель движения, записать ее в нормальной форме, найти на шаге интегрирования производные (то есть левые части) и, если шаг достаточно мал, на следующем шаге прибавить к переменной ее производную, помноженную на шаг.
Вы пошли с обратного конца и описали аппарат, который применяется в принципе для другого — для анализа систем на устойчивость и получения характеристик переходного процесса.
И, кстати, в приведенной системе отрицательные коэф. не имеют физического смысла, поскольку являются постоянными времени или коэф. демпфирования.
Самый простой способ посчитать физику это: построить мат. модель движения, записать ее в нормальной форме, найти на шаге интегрирования производные (то есть левые части) и, если шаг достаточно мал, на следующем шаге прибавить к переменной ее производную, помноженную на шаг.
Вы пошли с обратного конца и описали аппарат, который применяется в принципе для другого — для анализа систем на устойчивость и получения характеристик переходного процесса.
И, кстати, в приведенной системе отрицательные коэф. не имеют физического смысла, поскольку являются постоянными времени или коэф. демпфирования.
0
> Что общего между названием статьи и ее содержимым?
> Как связана передаточная функция с уравнением движенияи и как получить координаты? При чем тут устойчивость и что это вообще такое?
Устойчивость в статье не главная линия повествования. Из уравнений движения в операторной форме передаточная функция строится элементарными преобразованиями (правило пропорций). В статье дана ссылка на предыдущий пост в серии. По ссылке можно легко узнать как по уравнению движения построить дискретную модель в пространстве состояний. Фазовый вектор в этой модели и позволяет получить координаты и производные от координат.
> Вы пошли с обратного конца и описали аппарат, который применяется в принципе для другого — для анализа систем на устойчивость и получения характеристик переходного процесса.
Аппарат анализа систем на устойчивость — прежде всего это АЧХ/ФЧХ, потом диаграммы Найквиста, Боде и пр. Получение характеристик переходного процесса — вычисление перерегулирования, колебательности и длительности переходного процесса. Ни того, ни другого в статье не описано. Приведены лишь графики, демонстрирующие влияние коэффициентов уравнения движения на поведение динамического объекта.
> И, кстати, в приведенной системе отрицательные коэф. не имеют физического смысла, поскольку являются постоянными времени или коэф. демпфирования.
При имитации конкретного физического объекта возможно и не имеет. И то не факт.
Если строить характеристическое уравнение на основе элементарных звеньев, среди которых помимо звеньев с одним действительным корнем имеются и колебательные звенья с комплексными корнями, после раскрытия скобок и приведения подобных можно как раз поиметь отрицательные коэффициенты.
Да и на самом деле в геймдеве задачи могут сильно отличаться от педантичной, точной имитации некоего конкретного объекта из жизни.
> Как связана передаточная функция с уравнением движенияи и как получить координаты? При чем тут устойчивость и что это вообще такое?
Устойчивость в статье не главная линия повествования. Из уравнений движения в операторной форме передаточная функция строится элементарными преобразованиями (правило пропорций). В статье дана ссылка на предыдущий пост в серии. По ссылке можно легко узнать как по уравнению движения построить дискретную модель в пространстве состояний. Фазовый вектор в этой модели и позволяет получить координаты и производные от координат.
> Вы пошли с обратного конца и описали аппарат, который применяется в принципе для другого — для анализа систем на устойчивость и получения характеристик переходного процесса.
Аппарат анализа систем на устойчивость — прежде всего это АЧХ/ФЧХ, потом диаграммы Найквиста, Боде и пр. Получение характеристик переходного процесса — вычисление перерегулирования, колебательности и длительности переходного процесса. Ни того, ни другого в статье не описано. Приведены лишь графики, демонстрирующие влияние коэффициентов уравнения движения на поведение динамического объекта.
> И, кстати, в приведенной системе отрицательные коэф. не имеют физического смысла, поскольку являются постоянными времени или коэф. демпфирования.
При имитации конкретного физического объекта возможно и не имеет. И то не факт.
Если строить характеристическое уравнение на основе элементарных звеньев, среди которых помимо звеньев с одним действительным корнем имеются и колебательные звенья с комплексными корнями, после раскрытия скобок и приведения подобных можно как раз поиметь отрицательные коэффициенты.
Да и на самом деле в геймдеве задачи могут сильно отличаться от педантичной, точной имитации некоего конкретного объекта из жизни.
0
Only those users with full accounts are able to leave comments. Log in, please.
Классическая механика: о диффурах «на пальцах»