Физика для игрФорум

Моделирование гибких тел посредством метода конечных элементов (комментарии) (2 стр)

Страницы: 1 2
#15
15:49, 10 ноя 2009

XperienS
У нас на кластере считаются сетки из 109 нодов. Система очень разреженная получается, матрица ведь не квадратная - почему так небыстро-то?

#16
16:00, 10 ноя 2009

Suslik,

Ну во-первых, у нас не кластер :)))

Во-вторых, что ты подразумеваешь под "сеткой" ? Ты пространство бьёшь или как мы частицы двигаешь? У тебя 10^9 частиц?

#17
16:03, 10 ноя 2009

SoRRoW
тетраэдральная сетка, всего 10^9 тетраэдров. в смысле, у вас сложность алгоритма квадратичная по количеству нодов или линейная? если квадратичная, то тут никакой кластер не поможет :/

#18
16:30, 10 ноя 2009

Suslik

Сложность линейная от числа тетраэдров. Точность, правада, как и во всех итеративных методах падает с ростом размерности, поэтому, вероятно, при  больших на порядок рахмерностях придётся увеличивать число итераций

#19
17:11, 10 ноя 2009

Suslik
Какая схема рассчета используется? Какое уравнение решается? Какой интегратор используете? Какой солвер? Как в вашей схеме происходит объединение твердых/деформируемых тел?
Или это опять военная тайна? :)

#20
17:31, 10 ноя 2009

XperienS
> Или это опять военная тайна? :)
я действительно не имею правараспространяться о подробностях тамошних методов, но по своей работе запросто могу рассказать. у меня, правда, попроще - в риалтайме не больше 106 кубов обсчитывается.

#21
17:52, 10 ноя 2009

Suslik
Да мне в принципе без разницы, про какую работу ты будешь рассказывать :) интересует в принципе любая альтернативная методика, работающая в таких масштабах. Те же вопросы остаются, только хочу добавить еще парочку: если ты говоришь о кубах, какой shape function используешь, каковы параметры материала, более точная статистика количества узлов и КЭ; конфигурация теста.

#22
18:05, 10 ноя 2009

XperienS
Суть метода, который я использую, в следущем:
Интегратор position-based, verlet. Каждый куб(нод может быть любым телом, не обязательно кубическим) обсчитывается независимо от остальных, считается, что пока силы действуют в одном, во всех остальных они нулевые - стандартное приближение, как в rigid dynamics. В каждом кубе не слишком простым методом высчитываются силы упругости, стремящиеся вернуть его к недеформированному состоянию, и отдельно - силы давления, действующие, как если бы куб был оболочкой, наполенной идеальным газом.

В таком подходе метод имел бы первый порядок точности по времени и координате. Это, в принципе, не слишком плохо, но волны затихали бы слишком для некоторых задач быстро. Поэтому был использован метод, который позволяет ценой малой крови по кодингу но нехилой по производительности повысить порядок точности по времени на единицу. Если будет интересно, могу описать в двух словах. Метод реализуется в две строчки, несколько негативно сказывается на устойчивости, но повышает порядок аппроксимации любого метода рунге-кутты.  Так как verlet интегратор, который я использую, сводится к неявной схеме эйлера, следовательно, является интегратором рунге-кутты первого рода.

#23
22:06, 10 ноя 2009

Suslik
Твой подход мне ясен. Я делал нечто подобное довольно давно, и мы даже говорили об этом с тобой, если помнишь. Метод похож на те, что упоминает Mueller в Position Based Dynamics и/или Matyka в Pressure Model of Soft Body Simulation.
Мы же тут пытаемся адаптировать под рил-тайм именно классическую модель МКЭ в теории деформации твердых тел, с совершенно конкретным набором определений и постулатов; не думаю что эти методы подлежат сравнению.

#24
22:27, 10 ноя 2009

XperienS
Почему же? Итеративный солвер математически эквивалентен последовательному решению нодов, параметры задаются и там и там одни и те же, разве нельзя просто в случае успешности обоих методов сравнить результаты с экспериментальными/аналитическими данными?

Страницы: 1 2
Физика для игрФорум

Тема в архиве.