Повышение быстродействия расчета напряженно-деформированного состояния
Рассмотрение программного комплекса на базе системы формирования решений уравнений нелинейной динамики для расчета напряженно-деформированного состояния методом дискретных элементов. Анализ частей, пригодных к ускорению с помощью параллельных вычислений.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 28.07.2017 |
Размер файла | 60,2 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Повышение быстродействия расчета напряженно-деформированного состояния методом дискретных элементов
Н.О. Шумейко
А.Е. Андреев
Компьютерное моделирование является в настоящее время одним из основных способов исследования динамики сложных механических систем. Оно является неотъемлемым этапом проектирования, оптимизации параметров конструкций и механизмов и широко применяется в различных областях науки и техники, таких как железнодорожный и автомобильный транспорт, авиастроение, робототехника. В связи с этим актуально создание и развитие программных комплексов, специализирующихся на компьютерном моделировании [1,2]. Одним из таких комплексов является программная система формирования решений уравнений нелинейной динамики (ФРУНД), предназначенная для моделирования динамических процессов в машинах и конструкциях. ФРУНД позволяет решать широкий круг задач анализа и синтеза машиностроительных конструкций, одна из которых -- моделирование системы тел.
В настоящее время для моделирования динамики упругих тел наиболее популярны методы, основанные на методе конечных элементов. Это численный метод, применяемый для решения интегральных и дифференциальных уравнений с частными производными. Область модели, в которой необходимо найти решение дифференциальных уравнений, разбивается на заданное количество частей. В каждой из частей произвольно выбирается вид аппроксимирующей функции. Вне области значение этой функции равно нулю. Коэффициенты приближающей функции находятся из условий равенства значений соседних функций. Через выражение значений коэффициентов составляется система линейных алгебраических уравнений. Система имеет разрежённый вид, что упрощает ее решение.
Для оценки характеристик движения всей механической системы в целом используется метод моделирования динамики системы абсолютно твёрдых тел со связями [3]. Метод моделирования систем тел со связями применим к механической системе, состоящей из абсолютно твёрдых тел и связей между ними. Multi-bodysystem (MBS) модель рассматривается как основная, а модели, описывающие отдельные тела как вспомогательные [4]. Можно представить структуру MBS модели в виде графа, вершины которого соответствуют телам, а ребра соответствуют связям между телами, то для различных моделей могут получаться графы с циклами и графы в виде деревьев. программный нелинейный дискретный вычисление
Уравнения движения тела, освобожденного от связей с локальной системой координат в центре масс:
, (1)
где - масса i-го элемента, - ускорение, - вектор результирующей силы (сумма активных и реактивных сил), - матрица проекций угловых скоростей в системе координат i-го элемента, - вектор результирующего момента, - тензор инерции, - вектор углового ускорения, - вектор угловой скорости[5]. Верхний индекс обозначает систему координат, в которой задана величина. Нижний индекс показывает порядковый номер элемента модели.
Выполним подстановку якобиана осле перевода величин из локальных систем координат в глобальную и двойного дифференцирования. В итоге из системы (1) получится система дифференциально-алгебраических уравнений в форме Лагранжа первого рода:
,
где - вектор множителей Лагранжа, - матрица инерции, x- вектор абсолютных координат, - вектор правых частей, - вектор правых частей уравнения связей [6].
В матричном виде формула запишется как
.
Матрица системы сильно разрежённая [7].
Обзор программного комплекса
Программный комплекс построен на программном модуле консольного ядра FCore, которое осуществляет взаимодействие всех остальных компонентов, работает с форматом представления модели, выполняет команды генерации расчётного модуля для системы тел, расчёта модели и обработки накопленных результатов.
В архитектуре программного комплекса помимо ядра можно выделить две большие подсистемы: графическую оболочку FShell для работы с моделью и модули пакета ФРУНД.
Основные функции графической оболочки:
-- редактирование каркасной геометрии тел
-- включение в отдельные тела вспомогательных решателей
-- добавление CAD геометрии к телам
-- задание граничных условий в виде поверхностей CAD геометрии и
генерация регулярной ортогональной сетки
-- редактирование параметров модели
-- анимация результатов моделирования мультифизической модели
Ядро (компонент FCore) выполнено в виде консольного приложения, которое выполняет различные операции с моделью ключами командной строки. Интерфейс командной строки - это единственный интерфейс, который реализует ядро, он предоставляется графической оболочке или пользователю [8].
Процесс расчета модели итеративный. Каждой итерации соответствует заданный промежуток времени. Таким образом, меняя количество итераций и интервал времени одной итерации можно регулировать общее время моделирования воздействия силы.
В результате решения СЛАУ получаются значения вторых производных от координат и значения множителей Лагранжа. После решения СЛАУ производится численное интегрирования системы обыкновенных дифференциальных уравнений. Для численного интегрирования применяются явные и неявные методы. Среди явных для рассматриваемой задачи наиболее распространённый метод Рунге-Кутты 4 порядка, среди неявных - метод Адамса-Башфорта-Мултона по схеме прогноза-коррекции. В данной работе используется метод Рунге-Кутты [9, 10].
После завершения работы программы данные расчетов записываются в файл, который можно открыть с помощью FShell, воспользоваться визуализацией модели и пронаблюдать процесс деформации по итерациям. Показана модель размером 10х10х10 (куб). В правой части формы визуализации отображена шкала напряженности, от 0 до определенного максимального значения. Цвета точек соответствуют значению напряженности из спектра (шкалы).
Оценка производительности отдельных частей метода
Для оценки производительности отдельных частей метода были проведены тесты на моделях размерностями 10х10х10, 20х20х20, 30х30х30, 40х40х40, 50х50х50, 100х100х100. По одному прогону на итерацию, в тесте одна итерация. Для тестирования использовался ПК с процессором AMD PhenomII x6.
Замерялось время вычисления вектора коэффициентов (), пересчета вторых производных () и общее время выполнения ().
Таблица 1. Результаты тестов производительности
Модель |
(с) |
(с) |
(с) |
|||
10х10х10 |
0.0108 |
0.0002 |
0.0072 |
0.0185 |
0.6667 |
|
20х20х20 |
0.0720 |
0.0021 |
0.0485 |
0.0292 |
0.6736 |
|
30х30х30 |
0.2896 |
0.0158 |
0.1824 |
0.0545 |
0.6298 |
|
40х40х40 |
0.6690 |
0.0378 |
0.4118 |
0.0565 |
0.6155 |
|
50х50х50 |
1.3025 |
0.0725 |
0.8068 |
0.0556 |
0.6194 |
|
100х100х100 |
11.0798 |
0.6189 |
6.8700 |
0.0558 |
0.6200 |
|
150х150х150 |
36.4393 |
1.9694 |
22.8561 |
0.0540 |
0.6272 |
|
200х200х200 |
85.7731 |
4.6816 |
53.7639 |
0.0545 |
0.6268 |
В среднем вычисление коэффициентов занимает 4.7%, а вычисление вторых производных 63.5% общего времени.
По результатам тестов становится очевидно, что вычисление коэффициентов занимает не значительную часть времени выполнения (примерно 4.7%) и, практически, не имеет смысла заниматься ускорением этой части. Так же можно сделать вывод, что от распараллеливания части метода, отвечающей за пересчет вторых производных, можно добиться куда большего ускорения, так как эта часть занимает больше половины времени работы метода(63.5%).
Для распараллеливания была выбрана часть метода, отвечающая за пересчет вторых производных, использовалась библиотека OpenMP. Тестирование проводилось на ПК с процессором AMD PhenomII x6.
Результаты распараллеливания расчета вторых производных представлены в таблице 2. Как и в предыдущем тесте, один прогон содержал в себе одну итерацию.
Таблица 2. Ускорение одной итерации
Модель |
(с) |
(с) |
(с) |
(с) |
|||
10х10х10 |
0.0108 |
0.0072 |
0.0097 |
0.0047 |
1.1134 |
1.5319 |
|
20х20х20 |
0.0720 |
0.0485 |
0.0465 |
0.0295 |
1.5483 |
1.6440 |
|
30х30х30 |
0.2896 |
0.1824 |
0.1616 |
0.1017 |
1.7920 |
1.7935 |
|
40х40х40 |
0.6690 |
0.4118 |
0.3657 |
0.2212 |
1.8293 |
1.8616 |
|
50х50х50 |
1.3025 |
0.8068 |
0.6908 |
0.4477 |
1.8854 |
1.8020 |
|
100х100х100 |
11.0798 |
6.8700 |
5.1437 |
3.2807 |
2.1540 |
2.0940 |
|
150х150х150 |
36.4393 |
22.8561 |
16.2812 |
10.5943 |
2.2381 |
2.1573 |
|
200х200х200 |
85.7731 |
53.7639 |
38.3807 |
25.1716 |
2.2347 |
2.1358 |
В обозначении колонок в таблице - общее время выполнения, - общее время выполнения с параллельной вставкой, - время выполнения последовательного пересчета, - время параллельного вычисления производных.
При расчетах малых моделей наблюдается меньшее ускорение. Это происходит из-за накладных расходов на обеспечение параллельного выполнения.
Как правило, расчеты модели не ограничиваются одной итерацией.
Таблица 3. Ускорение метода с различным количеством итераций
Количество итераций |
(с) |
(с) |
||
10 |
6.3854 |
2.6399 |
2.4188 |
|
20 |
12.6796 |
5.2436 |
2.4181 |
|
30 |
18.9579 |
7.9394 |
2.3878 |
|
40 |
25.2427 |
10.6471 |
2.3708 |
|
50 |
31.6511 |
12.5479 |
2.5224 |
|
100 |
63.3553 |
25.8487 |
2.4510 |
|
150 |
94.3833 |
38.6934 |
2.4392 |
|
200 |
125.4364 |
51.0629 |
2.4565 |
В таблице - общее время выполнения, - общее время выполнения с параллельной вставкой.
В среднем ускорение () составляет 2.43 раза. При этом вне зависимости от количества итераций значение ускорения не сильно отклоняется от среднего.
Таким образом, в данной работе приведены анализ и результаты распараллеливания расчета напряженно-деформированного состояния методом дискретных элементов. Получено ускорение в 2.43 раза при расчетах крупных моделей, содержащих от 8000 элементов в сетке.
Литература
1. Кадомцев М.И., Ляпин А.А., Тимофеев С.И. К вопросам построения эффективных алгоритмов расчета системы «сооружение-грунт» // «Инженерный вестник Дона», 2012, №1. -ivdon.ru/magazine/archive/n1y2009/250.
2. М. И. Кадомцев, А. А. Ляпин, Шатилов Ю.Ю. Вибродиагностика строительных конструкций // «Инженерный вестник Дона», 2012, №3. -ivdon.ru/magazine/ archive/n3y2012/941
3. Виттенбург Й. Динамика систем твердых тел / Под ред. В. В. Румянцев.-- М.: Мир, 1980.-- С. 294.
4. Z. Qi, Y. Xu, X. Luo, S. Yao Recursive formulations for multibody systems with frictional joints based on the interaction between bodies // Multibody System Dynamics.-- 2010.-- Vol. 24.-- pp. 133-166.
5. Fleissner F., Gaugele T., Eberhard P. Applications of the discrete element method in mechanical engineering // Multibody System Dynamics.--2007.-- Vol. 18.-- pp. 81-94.
6. Б.Л. Глушак, В.Ф. Куропатенко, С.А. Новиков, В.М. Фомин Исследование прочности материалов при динамических нагрузках.-- Новосибирск: Наука. Сиб. отд-ние, 1992.-- С. 295
7. Писсанецки С. Технология разреженных матриц / Под ред. Х. Д. Икрамов.-- М. : Мир, 1988.-- С. 411.
8. Горобцов А. С., Карцов С. К., Кувшид Р. П. Комплекс ФРУНД - инструмент исследования динамики автомобиля // Автомобильная промышленность, 2005. № 4. С. 27-28.
9. Гетманский В. В., Горобцов А. С. Расчет динамики систем тел и физических процессов в отдельных телах на кластере // Математические методы в технике и технологиях, ММТТ-25: сб. тр. XXVмеждунар.науч. конф.-- Т. 3.-- ВолгГТУ: Саратов, 2012.-- С. 171-174.
10. Гетманский В. В., Сергеев Е. С., Горобцов А. С. Способы ускорения процедуры расчета при междисциплинарном моделировании // Матер.междунар. конф. СКТ-2010. -- Т. 1. -- Таганрог : Изд-во ТТИ ЮФУ, 2010.-- С. 199-222.
Размещено на Allbest.ru
...Подобные документы
Общие сведения о программном комплексе ЛИРА. Неразрезная балка, арочная ферма и плоская рама как стержневые системы. Постановка задачи для расчета их напряженно-деформированного состояния, алгоритм вычисления, визуализация результатов, эпюры загружений.
контрольная работа [1,0 M], добавлен 28.10.2009Проектирование напряженно-деформированного состояния объекта при граничных условиях. Разработка концептуальной модели и расчетной схемы объекта анализа. Выбор и краткое описание программных и технических средств. Интерпретация результатов моделирования.
дипломная работа [439,8 K], добавлен 18.08.2009Математические методы решения задачи расчета химического равновесия. Структура программного средства. Схема отношений базы данных химических элементов и соединений. Программная реализация Генетического Алгоритма для расчета химического равновесия.
дипломная работа [6,6 M], добавлен 07.07.2012Основные численные методы моделирования. Понятие метода конечных элементов. Описание основных типов конечных элементов и построение сетки. Реализация модели конструкции в пакете ANSYS, на языке программирования C#. Реализация интерфейса пользователя.
курсовая работа [2,3 M], добавлен 22.01.2016Решение дифференциальных уравнений с частными производными. Метод конечных элементов, история развития, преимущества и недостатки. История разработки программной системы. Задачи, решаемые с помощью программного комплекса, области применения ANSYS.
презентация [1,7 M], добавлен 07.03.2013Опрос состояния дискретных датчиков. Циклический опрос состояния выходного сигнала дискретного датчика. Распределение кодов нажатых кнопок в таблице клавиатуры. Программа ввода четырехзначного числа с клавиатуры. Расчет констант для подпрограммы.
лабораторная работа [1009,8 K], добавлен 26.01.2013Преимущества выбора программного комплекса АВК-5. Создание списка строек, учетные реквизиты и значения ряда новых параметров. Способ расчета прибыли. Создание объектов строительства, проектирование локальной сметы. Заполнение графы "Виды работ и затрат".
дипломная работа [2,9 M], добавлен 14.08.2013Сущность и особенности языка программирования Си. Основные этапы алгоритма решения системы линейных алгебраических уравнений методом Гаусса, реализация программы для их расчета. Инструкции пользователя и программиста. Тестирование функции решения.
курсовая работа [153,9 K], добавлен 18.02.2013Создание программного обеспечения для автоматизации расчета периодических выплат купонного дохода: анализ предметной области, разработка проектных решений по созданию информационной базы, представление текста программы и руководства пользователя.
курсовая работа [944,5 K], добавлен 27.06.2011Основные модели вычислений. Оценки эффективности параллельных алгоритмов, их коммуникационная трудоемкость. Последовательный алгоритм, каскадная схема и способы ее улучшения. Модифицированная каскадная схема. Передача данных, классификация операций.
презентация [1,3 M], добавлен 10.02.2014Принцип и значение метода Эйлера для расчета дифференциальных уравнений. Анализ его геометрического смысла. Улучшение метода за счет аппроксимации производной. Разработка блок-схем и программы на языке Turbo Pascal для проверки методов интегрирования.
курсовая работа [385,7 K], добавлен 15.06.2013Метод хорд решения нелинейных уравнений. Вычисление интеграла методом Симпсона. Процесс численного решения уравнения. Окно программы расчета корней уравнения методом хорд. Алгоритм вычисления интеграла в виде блок-схемы. Выбор алгоритма для вычислений.
курсовая работа [832,6 K], добавлен 24.07.2012Автоматизация вычислений, необходимых для расчета коэффициента ритмичности, используя пакеты прикладных программ в Excel. Проведение необходимых расчетов с применением формул в электронных таблицах. Тестирование разработанного программного обеспечения.
курсовая работа [1,6 M], добавлен 28.08.2014Описание работы с программным комплексом, его возможности на примере расчета полупроводникового диода на p-n переходе, биполярного транзистора, полевого транзистора с изолированным затвором. Общая методика расчета элементов с помощью программы MicroTec.
дипломная работа [246,1 K], добавлен 06.09.2014Понятие вычислительных систем, их классификация по различным признакам. Модели параллельных вычислений PGAS и APGAS. Разработка программного продукта для анализа информационных обменов в параллельных программах на языке IBM X10. Расчёт его себестоимости.
дипломная работа [1,6 M], добавлен 10.06.2013Линейно-упругие деформации твердых тел. Компьютерное объектно-ориентированное моделирование. Построение конечно-элементных соотношений для двумерных систем линейной теории упругости. Численный анализ деформированного состояния системы твердых тел.
курсовая работа [3,2 M], добавлен 28.01.2013Порядок автоматизации расчетов себестоимости и длительности программного обеспечения производственного предприятия. Выбор языка программирования и системы управления базами данных. Разработка алгоритмов расчета себестоимости программного обеспечения.
дипломная работа [1,7 M], добавлен 13.06.2017Сущность матричного метода. Разработка программы решения системы уравнений линейных алгебраических уравнений методом решения через обратную матрицу на языке программирования Delphi. Представление блок-схемы и графического интерфейса программного продукта.
курсовая работа [1,0 M], добавлен 27.09.2014Решение системы линейных уравнений с матричными элементами и свободными членами с использованием метода Гаусса с выбором главного элемента, основанного на приведении матрицы системы к треугольному виду с помощью нахождения элементов главной диагонали.
лабораторная работа [71,1 K], добавлен 10.12.2014Точность вычислений, классификация погрешностей. Оценка апостериорной погрешности, численное дифференцирование. Численное решение систем линейных уравнений. Аппроксимация функций методом наименьших квадратов. Решение нелинейных уравнений с неизвестным.
методичка [611,8 K], добавлен 10.10.2010