Расчет 3D-формы гиперупругого тела для моделей нелинейной теории упругости методом Ньютона
Автор: Кузьмин В.В.
Журнал: Математическая физика и компьютерное моделирование @mpcm-jvolsu
Рубрика: Моделирование, информатика и управление
Статья в выпуске: 2 т.27, 2024 года.
Бесплатный доступ
Рассматриваются способы расчета деформаций объектов с гиперупругими материалами в рамках нелинейной теории упругости. В статье приводится алгоритм решения данной задачи, как минимизация функционала запасенной энергии, методом Ньютона, дается его подробное описание и способы реализации. Было разработано программное обеспечение, реализующее данный метод и позволяющее производить численные эксперименты и компьютерное моделирование деформаций гиперупругих тел.
Нелинейная теория упругости, функционал запасенной энергии, тензор деформации, метод ньютона, гиперупругое тело
Короткий адрес: https://sciup.org/149146886
IDR: 149146886 | УДК: 519.615 | DOI: 10.15688/mpcm.jvolsu.2024.2.7
Calculation of 3D shape of a hyperelastic body for nonlinear elasticity models using the Newton method
This article discusses methods for calculating the deformations of objects with hyperelastic materials within the framework of the nonlinear elasticity theory. This topic is relevant due to the use of new technological materials in industry, and as a result, the emerging task of preliminary numerical calculations for operational reliability, research and modeling of deformation behavior. The first part provides a brief overview of the main provisions and formulas of the nonlinear elasticity theory. Then the spatial discretization of 3-dimensional objects and the calculation of the deformation gradient using the finite element method are considered. The article provides an algorithm for solving this problem, such as minimizing the functional of stored energy, and also considers the class of permissible deformations. Afterwards, a detailed description is given, along with pseudocode, of the method of implementing and calculating the minimization by Newton’s method. The last part demonstrates an example of the calculations performed, based on the developed software that allows for numerical experiments and computer modeling of deformations of hyperelastic bodies, and one of the capabilities of which is to perform these calculations using Newton’s method.
Текст научной статьи Расчет 3D-формы гиперупругого тела для моделей нелинейной теории упругости методом Ньютона
DOI:
В природе существует множество материалов, которые подвергаются различным деформациям. Материалы имеют разное поведение под механической нагрузкой. Так, одни (например, металлы: железо, олово, медь и другие) показывают линейно-упругое поведение до перехода в состояние плавления, после чего подвергаются неустранимой пластичной деформации перед разрушением. Хрупкие материалы — стекло, керамика показывают незначительное линейно-упругое поведение, и без пластичной деформации перед разрушением. Материалы, которые сохраняют свои упругие свойства и допускают большие нелинейные деформации, называются гиперупругими. Примером могут служить резина, разные виды полимеров, эластомеров, пена, биологические материалы и др. Они широко используются в различных отраслях, как новые технологичные материалы в строительной отрасли, или при изготовлении различных резиновых и резинометаллических деталей в машиностроении.
Перед применением материалов важно произвести численные расчеты на надежность эксплуатации, исследовать поведение при деформациях. При этом далеко не для всех материалов в литературе были опубликованы полные численные исследования.
В рамках данной статьи приводится краткий обзор основных формул нелинейной теории упругости, и дается полное описание алгоритма численного расчета деформаций гиперупругих материалов методом Ньютона. Следует также отметить, что нелинейная теория упругости освещается в работах [7; 8; 11; 12], в которых подробно описываются основные положения и теоремы, использованные в данной статье, и приводится обширная библиография. Также по данному вопросу можно отметить статьи: [1; 4; 9; 10; 13].
В ходе научной работы на основе проведенных исследований был разработан программный комплекс, реализующий нижеописанный алгоритм минимизации методом Ньютона, а также другие алгоритмы минимизации, в частности методом градиентного и координатного спуска, подробное описание которых приводится в статье [4].
1. Гиперупругость
Рассмотрим некоторое сплошное тело B , которое занимает определенную область Q 0 в своем исходном, недеформированном состоянии в момент времени t = 0 (рис. 1). При этом, когда происходит смещение точек тела, например Р в Р ‘ (представленных в общем случае на рисунке 1 векторами X и х в декартовой системе координат), и Q в Q' из области Q 0 в область Q t соответственно при некотором t > 0 , то такая новая конфигурация тела Q t называется деформированной, а само изменение взаимного расположения точек тела называется деформацией.
Рис. 1. Деформация тела B
При этом мерой изменения формы в каждой точке тела при деформации является тензор второго ранга F [11]:
F (X,t) =grad X (x,t) = dx(X ,^, (1)
dX который называется градиентом деформации.
Одним из ключевых свойств объектов с гиперупругим материалом является существование для них функции запасенной энергии [8, с. 168]. Пусть в некоторой области Q , лежащей в R ” , М п — множество матриц F порядка п и Ж (x,F ) : Q х М п ^ R + — некоторая непрерывная положительная функция. Для отображения ф : Q ч R ” определим функционал Ф(ф) запасенной энергии по формуле [8; 10; 13]:
Ф(ф) = У Ж(x,Dф(x))dx.
Также предполагаем выполнение условия Липшица
| Ж(x ‘ ,F ) - Ж «F ) |< L | x ‘ — x ‘‘ \ (3)
с постоянной L > 0 , независящей от F Е М п . При этом в нелинейной теории упругости рассматривается функция Ж (x,F ) вида
Ж(x, F ) = Ж(x, | F | , Adj(F), detF), (4)
где | F | 2 = tr(FF т ) ( tr или след матрицы — сумма элементов главной диагонали); det F — определитель матрицы F , характеризующий соотношение изменения объема при деформации [11, p. 18]. И, в случае det F > 0 (тогда существует обратная матрица F ), Adj(F) = F -т detF . Также заметим, что зависимость от x могут дополнительно характеризовать внешние поля сил, например, сила тяжести.
Решение задачи поиска формы деформированного тела достигается за счет минимизации вышеуказанного функционала [10; 13]. В случае итерационного процесса минимизации функционала требуется выполнение условий на границе и условий принадлежности классу допустимых деформаций, который мы можем задать функцией М (x) Е L s (Q) , s > п — 1 , для которой справедливо условие [1; 15]
< М (x). (5)
det(^ф)
Также заметим, что для глубокого анализа, помимо моделирования ограничений, требуется представление различных численных характеристик деформированного объекта. В качестве одного из важных элементов, характеризующих деформацию, часто выступает тензор напряжения Коши σ . Одним из способов вычисления которого выступает формула, связывающая тензор напряжения Коши (напряжение в деформированном теле) и первый тензор Пиолы — Кирхгофа Р (напряжение относительно исходного состояния) [11, p. 22]:
дЖ dF’ о =(detF)-1PFт. (6)
2. Пространственная дискретизация Применим метод конечных элементов, который аналогичен для задач линейных упругих деформаций [2]. Проведем разбиение данного сплошного тела Q на п-мерные симплексы (выпуклая оболочка точек) Si, S2,..., Sm с вершинами р1 ,р2,... ,рп. Разбиение произведем методом Делоне [3; 6], в частности, разбиение производится на тетраэдры.
Заметим, что градиент деформации можно приближенно рассматривать как линейную зависимость между исходной и текущей формой. Для произвольной точки и ее бесконечно малых соседей градиент деформации можно точно аппроксимировать, используя линейное соотношение [5; 15, p. 15]
х = ф ( Х ) ^FX + b.
Тогда для каждой вершины рассмотрим аффинное отображение ф(х) = F k (х) + + b k ,х Е S k ,F k Е M n ,b k Е R n , на каждом симплексе S k ,к = 1, 2,...,т , в который входит рассматриваемая точка. Пусть q 0 , q 1 ,... ,q n — вершины симплекса S k , V j = Ф(^ j ) , для j = 0, 1,... ,п , и I — индекс рассматриваемой вершины. Тогда определим матрицу Q k , поместив в ее столбцы q j — q i ,j = I , и аналогично матрицу V k , разместив в столбцах V j — v l ,j = / . Получаем
F k = V k *Q - 1 . (8)
Заметим, что произведение V k Q — не зависит от порядка нумерации вершин симплекса S k , и соответственно однозначно определяется только множеством его вершин и значений отображений.
При этом функция запасенной энергии и ее численная аппроксимация определяются следующей формулой [4, c. 57–58]:
m m
Ф( ф ) = JqW (х, ПФ (х))^х = ^ Js Ж(х,В ф (хУ) ^ ^ Ж (x S k ,F k )IS k | , (9)
где | S k | — n -мерная мера Лебега (объем тетраэдра); x s k — геометрический центр; функция Ж (x s k ,F k ) — формула напрямую зависящая от модели выбранного гиперупругого материала, например, Муни — Ривлина, Огдена, Адамара — Грина и др.
В случае моделирования ограничений М(х) (формула 5) имеем следующую аппроксимацию ( L i — число симплексов, инцидентных вершине p i ):
|D ф (P i )\ п ^ £ v | F k | п
det(^(p i )) L i ^ det(F k ) .
P i ^s k
Тогда, имея формулу численной аппроксимации запасенной энергии, задача сводится к минимизации данного функционала Ф( ф ) .
3. Решение методом Ньютона
Рассмотрим теперь решение задачи минимизации функционала Ф( ф ) дэмпирован-ным методом Ньютона второго порядка.
Процесс расчета начинается с выбора нулевого приближения, затем последовательно выбираются вершины р 1 ,... ,р ^ , для которых и вычисляется минимум величин:
52 Ж (x, S k ,F k ) | S k | , 52 Ж (x, S k ,F k ) | S k | ,..., 52 Ж (x s k ,F k )S | . (11)
P l ^ S k P 2 ^ S k P n E S k
В общем случае метод Ньютона второго порядка определяется как приближение f (x + dx) ~ f (x) + < V f (x), dx > +- < V2 f (x)dx, dx > . (12)
Приравняв к нулю градиент квадратичной аппроксимации и решив получившееся линейное уравнение, мы получаем следующий итеративный алгоритм спуска:
x t+i = x t - a t V 2 f -1 (x t )Vf (x t ), (13)
где V 2 f(x t ) — матрица Гессе; a t E (0,1] — размер шага; Vf(x t ) — матрица Якоби функции f (x t ) — величины из формулы (11).
Рассмотрим процесс формирования матриц Q и V . Важным моментом является определение порядка, какую из какой вершины мы вычитаем при формировании столбцов матриц — будет ли он фиксирован, или зависеть от индекса рассматриваемой вершины в текущем симплексе. С одной стороны, порядок и не так важен (но он обязательно должен быть одинаков между соответствующими матрицами Q и V ), так как значение матрицы F , и в целом расчеты матриц Гессе и Якоби, не зависят от порядка. Соответственно мы можем сделать как более универсально, разместив вектора так, что, например, в последнем столбце всегда будет вектор p i — p i - 1 , а в остальных p j — р - 1 , j = I и j = I — 1 . Однако мы можем заметить следующий факт, что матрица Q , при условии одинакового порядка вершин, на протяжении итераций не меняется, как и сопутствующие величины, например обратная матрица к Q , или объем симплекса. Соответственно, в целях более высокой производительности, нет смысла пересчитывать их на каждой итерации. Стоит произвести расчеты один раз на первой итерации и запомнить. Но в этом случае матрицы Q и V мы должны для всех вершин формировать в строго определенном порядке.
Приведем псевдокод алгоритма минимизации методом Ньютона, с учетом формирования столбцов матриц Q и V , как p j — р 0 , j = 1,... ,п , и с использованием центральной разностной производной при расчете матрицы Гессе и вектора Якоби.
void Минимизации(){ расчетНеизменяемыхХарактеристик(); расчетИзменяемыхХарактеристик(); bool breakFlag = false;
while(!breakFlag)
выполнитьИтерациюМинимизации(трансфОбъект); расчетИзменяемыхХарактеристик();
if (текущееЗначениеФ < предыдущееЗначениеФ) предыдущееЗначениеФ = текущееЗначениеФ;
else трансфОбъект = трансфОбъектНаПредыдущемШаге; breakFlag = true;
}
В методе расчетНеизменяемыхХарактеристик() производится расчет матриц Q , обратной матрицы QI = Q -1 , объема S | и геометрического центра x g k .
В методе расчетИзменяемыхХарактеристик() на каждой итерации идет расчет новых матриц V и F , текущееЗначениеФ , равное значению запасенной энергии Ф (трансфОбъект) , которое рассчитывается по формуле (9).
Дальше рассмотрим псевдокод одного итерационного шага метода выполнитьИ-терациюМинимизации(трансфОбъект) и соответствующие вычисления матриц Якоби и Гессе (в методах W(matrix F) идет расчет численного значения согласно формуле выбранной модели материала):
void выполнитьИтерациюМинимизации(трансфОбъект){ for(для всех вершин pi) трансфОбъект[pindex] = трансфОбъект [pindex] – epsilon *
Гессе(pindex, шаг).обратнаяМатрица() * Якоби(pindex, шаг); } vector3D Якоби(pindex, шаг){ vector3D якоби; vector
(4 * step * step);
return гессе.Транспонированная();
}
При реализации данного алгоритма средствами языка С++ отметим, что хороший прирост к производительности показало использование библиотеки линейной алгебры Eigen, в частности для ускорения расчетов обратных матриц. Также, поскольку расчеты движений вершин в одном итерационном шаге не зависят между собой, то распараллеливание данного цикла приводит к кратному ускорению расчетов.
4. Программная реализация
В ходе научной статьи был разработан программный комплекс «Программа для расчета 3D формы упругого тела для моделей нелинейной теории упругости на основе триангуляции Делоне» на языке С++ и фреймворка Qt. Данная программа предназначена для проведения расчетов деформаций с учетом моделирования ограничений гиперупругих материалов, таких как материалы Муни — Ривлина, Огдена, Адамара — Грина, Сен-Венана — Кирхгофа, неогуковы материалы. Присутствует возможность как выбора для расчетов перечисленных материалов, с учетом введения собственных коэффициентов и возможности задания выпуклых функций в качестве дополнительных слагаемых, например, для материала Адамара — Грина, так и задание полностью своей собственной формулы материала.
Программа дает возможность визуализации с трехмерным обзором, в том числе визуализации на каждой итерации применяемых изменений при расчете деформации.
Программа позволяет как импортировать объекты для дальнейшей обработки в формате obj, так и экспортировать в obj рассчитанные результаты.
На данную программу было получено свидетельство о государственной регистрации программы для ЭВМ № 2023668031.
Представим демонстрацию одних из расчетов разработанной программы. Для примера возьмем пластину размером 2 х 1 х 0,1 и произведем тетраэдризацию методом Делоне, разбив ее на 29 тыс. тетраэдров (см. рис. 2). В программе тетраэдризация производится за счет использования внешней библиотеки tetgen.
Дальше подвергнем объект с целью деформации приложению некоторых сил. В программе данная возможность пока присутствует за счет применения к объекту некоторых, введенных пользователем формул аффинных преобразований. Например, выполним для каждой координаты х данной пластины аффинное преобразование х + 0, 5cos(6y) — это послужит нам приближением деформации пластины на нулевом шаге (см. рис. 3).
Зададим шаг = 0,001, epsilon = 0,005, и выберем для объекта материал Муни — Ривлина W(x,F ) = a\F | 2 +b | AdjF | 2 +r(detF) , установив r(detF) = 2(detF - 1) 2 — 2(a+ + 2b)ln(detF ) — 3(a + b) , со значениями параметров a = 25 , b = 0,1 , с = 2 . Применим к данному объекту с вышеперечисленными условиями минимизацию методом Ньютона в количестве 2 500 итераций. В результате получим уменьшение запасенной энергии Ф с 17,29 (на итерации 0) до 6,73 (на итерации 2 500), допустимую деформацию М , равную 34,9 на последней итерации, и визуальную демонстрацию на рисунке 4, где красным отображается результирующий объект, а синей сеткой — бывшая фигура на нулевом приближении.
Рис. 2. Вид главного окна с возможностью 3D-обзора исходного объекта с произведенной тетраэдризацией
Рис. 3. Применение к объекту с рисунка 2 внешних сил, определенных формулами вкладки Трансформация — отображение желтого объекта как нулевого приближения
Рис. 4. Применение к объекту с рисунка 3 минимизации методом Ньютона, при выбранном материале Муни — Ривлина — результат светло-красный объект, темно-синей сеткой отображается объект на нулевом приближении
Заключение
В данной статье был описан способ расчета деформаций для объектов с гиперупругими материалами. Приведен алгоритм минимизации методом Ньютона, позволяющий решить данную задачу с учетом допустимых деформаций. Также было разработано программное обеспечение, реализующее данный алгоритм и визуализирующее рассчитанные результаты для различных моделей гиперупругих материалов.
Список литературы Расчет 3D-формы гиперупругого тела для моделей нелинейной теории упругости методом Ньютона
- Водопьянов, С. К. Вариационные задачи нелинейной теории упругости в некоторых классах отображений с конечным искажением / С. К. Водопьянов, А. О. Молчанова // Доклады Академии наук. — 2015. — Т. 465, № 5. — С. 523-526. — 001: https://doi.org/10.7868/S086956521535008X
- Гловински, Р. Численное исследование вариационных неравенств / Р. Гловински, Ж.-Л. Лионс, Р. Тремольер. — М.: Мир, 1979. — 574 с.
- Делоне, Б. Н. Геометрия положительных квадратичных форм / Б. Н. Делоне // Успехи мат. наук. — 1937. — № 3. — С. 16-62.
- Клячин, В. А. Метод триангуляции для приближенного решения вариационных задач нелинейной теории упругости / В. А. Клячин, В. В. Кузьмин, Е. В. Хижнякова // Известия Иркутского государственного университета. Серия Математика. — 2023. — Т. 45. — C. 54-72. — DOI: https://doi.org/10.26516/1997-7670.2023.45.54
- Клячин, В. А. О линейных прообразах непрерывных отображений, сохраняющих ориентацию симплексов / В. А. Клячин, Н. А. Чебаненко // Вестник Волгоградского государственного университета. Серия 1, Математика. Физика. — 2014. — Т. 3, № 22. — C. 56-60.
- Клячин, В. А. Триангуляция Делоне многомерных поверхностей и ее аппроксима-ционные свойства / В. А. Клячин, А. А. Широкий // Изв. вузов. Математика. — 2012. — № 1. — C. 31-39. — DOI: https://doi.org/10.3103/S1066369X12010045
- Стружанов, В. В. Теория упругости: основные положения / В. В. Стружанов, Н. В. Бурмашева. — Екатеринбург: Изд-во Урал. ун-та, 2019. — 204 с.
- Сьярле, Ф. Математическая теория упругости / Ф. Сьярле. — М.: Мир, 1992. — 472 с.
- A Computational Framework for Polyconvex Large Strain Elasticity for Geometrically Exact Beam Theory / R. Ortigosa, A. J. Gil, J. Bonet, Ch. Hesch // Computational Mechanics. — 2016. — Vol. 57. — P. 277-303.
- Ball, J. M. Convexity Conditions and Existence Theorems in Nonlinear Elasticity / J. M. Ball // Arch. Ration. Mech. Anal. — 1977. — Vol. 63. — P. 337-403.
- Duong, M. T. Hyperelastic Modeling and Soft-Tissue Growth Integrated with the Smoothed Finite Element Method-SFEM / M. T. Duong // RWTH Aachen University. — 2014. — P. 15-22.
- Holzapfel, G. A. Nonlinear Solid Mechanics: A Continuum Approach for Engineering / G. A. Holzapfel. — Wiley, 2007. — 207 p.
- Optimal Control of Soft Materials Using a Hausdorff Distance Functional / R. Ortigosa, J. Martinez-Frutos, C. Mora-Corral, P. Pedregal, F. Periago // SIAM Journal on Control and Optimization. — 2021. — Vol. 59, № 1. — P. 393-416. — DOI: https://doi.org/10.13140/RG.2.2.25255.50084
- Tiantian, L. Towards Real-Time Simulation of Hyperelastic Materials / L. Tiantian. — Pennsylvania: University of Pennsylvania, 2018. — 90 p.
- Vodopyanov, S. K. Injectivity Almost Everywhere and Mappings with Finite Distortion in Nonlinear Elasticity / S. K. Vodopyanov, A. Molchanova // Calculus of Variations and PDE. — 2020. — Vol. 59. — Article ID: 17. — DOI: https://doi.org/10.1007/s00526-019-1671-4