Шабров Н.Н. - Метод конечных элементов в расчётах деталей тепловых двигателей (1061803), страница 22
Текст из файла (страница 22)
М1.ЗОХ(!ЧРЛ,ЯЙ,ХЕ,УЕ,М1.К) 00 2И 1=!,о(Р8 ВО 2И К=1,МОЕ ЫР1.= МОГ е (! — 1)-Р М )ЧРО ~тД)т ()Ч,)О(1) 1)+!1 2И АИРО)=Я(ЯРО)+УЕ(Ь!Р1.) 186 Этот фрагмент программного модуля приведен для реализации вычислений в соответствии с 18.21) — (8.23). Параметрам МРБ и 1ч"1)Е соответствуют число узлов сетки макроэлемента и число степеней свободы в узле. Массивы Р, ХЕ, т'Е, Я предназначены для хранения компонент векторов р, х(б, у(в>, и, Прн организации алгоритма метода сопряженных градиентов с учетом посегментпого представления профиля глобальной матрицы следует иметь в виду проблему сокращения числа обращений к периферийной памяти ЭВМ. Наиболее простой путь решения этой проолемы заключается в размещении всех четырех глобальных векторов 1.);, р;, г;, г);, участвующих в каждой итерации, в операгивной памяти ЭВМ.
Тогда обращение к периферийной памяти ЭВМ потребуется только для чтения очередного сегмента профиля. Такая схема организации решения системы уравнений возможна для ЭВМ. с большим объемом доступной оперативной памяти. Очевидно, что минимальное число глобальных векторов, размещенных в оперативпой памяти ЭВМ, равно двум.
В целях возможности прерывания счета целесообразно сохранять каждое или через определенное число итераций приближение для решения системы уравнений. При продолжении счета последнее приближение берется в качестве нулевого приближения. Во время длительного счета бывает полезным «встряхивать» процесс решения, т. е.
через некоторое число итераций начинать его снова и в качестве нулевого приближения брать приближение на последней итерации перед австряхиванием». Это позволяет избавиться от накопления ошибок округления, которые нарушают ортогональность векторов при определении сопряженных направлений. ВЛ. УЧЕТ ГРАНИЧНЫХ УСЛОВИИ ПРИ РЕШЕНИИ СИСТЕМ УРАВНЕНИЙ МКЭ Решение уравнений равновесия или теплового баланса должно удовлетворять главным граничным условиям задачи.
Для уравнения равновесия главными граничными условиями являются заданные значения перемещений на части границы тела 1обычно эти перемещения выражают условия закрепления тела), для уравнений теплового баланса — заданные значения температуры на части поверхности тела. Рассмотрим учет граничных условий на примере решения уравнений равновесия МКЭ. В литературе описано достаточно практических приемов внесения граничных условий в полученное решение 11, 8).
Некоторые из них связаны с реорганизацией памяти ЭВМ, отведенной для хранения глобальной матрицы системы уравнений 111, Использование других приемов позволяет избежать изменений в структуре глобальной матрицы 18~. Очевидно, что выбор того или иного приема зависит от выбора метода решения системы уравнений. 137 Наиболее просто учн перемещения, заданные в направлении координатных линий 18].
При решении системы уравнений методом Холецкого перед выполнением процедуры декомпозиции диагональный элемент матрицы, соответствующий заданному перемещению, заменяется большим числом, например 10", а соответствующая компонента вектора нагрузки заменяется произведением этого большого числа на заданное значение перемещения.
Фактически это приводит к тому, что после декомпозиции глобальной матрицы недиагональные элементы строки и столбца матрицы Е, соответствующие заданному перемещению, будут заполнены нулями. Таким образом, уравнение равновесия в узловой точке с заданным перемещением заменяется уравнением с одним неизвестным, которое, вообще говоря, является независимым в общей, системе уравнений. При решении системы уравнений методом сопряженных градиентов граничные условия вводятся не в саму матрицу К, а сразу в произведение вида Кр 1251. В случае задания нулевых перемещений по координатным линиям следует начать счет с вектора р„ имеющего нули на месте тех компонент, которые соответствуют нулевым перемещениям. Затем на каждой итерации после выполнения перемножения в произведении вида Кр занулять соответствующие компоненты результирующего вектора ц.
Учет ненулевых перемещений в направлении координатных линий требует предварительной модификации вектора нагрузки системы уравнений, которая заключается в следующем. Столбцы матрицы К, соответствую цие заданным ненулевым перемещениям, умножаются на значения этих перемещений и переносятся в правую часть системы уравнении в виде добавочных векторов нагрузки. Затем метод сопряженных градиентов применяется к системе уравнений с новой правой частью при описанной выше схеме учета заданных нулевых перемещений. Рассмотрим более общий тип задания линейно зависимых граничных условий, который содержит в себе как частный случай задания перемещений по координатным линиям. Такие условия нередко возникают при анализе симметричных частей трехмерных конструкций, когда плоскости симметрии не совпадают с координатными плоскостями.
Условие линейной зависимости между перемещениями означает, что некоторые компоненты вектора перемещений $3 определяются как линейные комбинации других компонент того же вектора. Следуя работе ~351, выделим независимые и зависимые компоненты вектора 0 в отдельные блоки (8.25) где $3, — блок независимых компонент, а $3, — блок зависимых компонент. 13В Линейная зависимость для 1.1, определяется соотношением $.1, =- С111+ 1а, (8.26) в котором матрица С и вектор 1. являются заданными. Соотношение (8.25) можно записать так 1351: (8.27) где Š— единичная матрица Введем обозначения т=[ ~; ~=[ (8.28) Тогда для $1 запишем 1.1 = Т1.1, +1 Рис. 8.7. Пример линейно зависимых граничных усло- вий (8.34) 139 (8.29) Соотношение (8.20) можно трактогать как замену переменной в соответствующем функционале Лагранжа, условие стационарности которого приводит к следующей системе уравнений МКЭ 1351: Т'КТЦ = Т'à — Т'К1. (8.30) Система уравнений (8.30) отличается от системы уравнений (8.1).
Однако, если ввести обозначения = Т'КТ; (8.31) Г,=Т Г вЂ” Т'К1, (8.32) го система уравнений (8.30) приводится к виду (8.1) К1$4 =- Г„(8.33) удобному для применения рассмотренных методов решения систем алгебраи- и ческих уравнении. У а Преобразование исходной матрицы К в (8.31) соответствует сложению определенных строк и столбцов этой матрицы, умноженных предварительно на некоторые константы, и приводит, вообще говоря, к реорганизации профиля. В методе сопряженных градиентов удается избежать этой реорганизации, поскольку граничные условия вносятся не в матрицу, а в произведение вида Кр. Рассмотрим для определенности условия опирания тела на наклонной поверхности на примере из рис. 8.7.
Эти условия равносильны запрещению перемещений точек поверхности вдоль нормали к этой поверхности и определяют линейную зависимость между компонентами перемещений совр и о. сов к Прн таком виде линейной зависимости можно не разделять вектор 11 на части Ц и (1а и определить матрицу преобразований Т так, как это показано на рис. 8.8.
Соотношение (8.20) с учетом (8.31) запишется так: е1 = ~ Т а~в' К~в~а~ ~Тр. (8.35) Таким образом, алгоритм вычисления произведения вида (8.35) по сравнению с алгоритмом вычисления произведения Рис. 8.8. Вид матрицы преооразований при учете линейной зависимости граничных условий в методе со- пряженных градиентов (8,20) дополнится двумя операциями формирования векторов Тр и Т'с(~е1.
Видно, что эти операции легко программируются. 8.6. ОРГАНИЗАЦИЯ ПОЛНОГО АЛГОРИТМА МКЭ НА ЭВМ Решение сложных промышленных задач методом конечных элементов, как правило, связано с использованием всех ресурсов ЭВМ. Это обьясняется тем, что такие задачи порождают огромные числовые массивы данных, разместить которые в оперативной памяти современных ЭВМ невозможно. Более того, описываемые здесь и предназначенные для решения больших задач программы содержат от 1500 до 2000 операторов Фортрана и, таким образом, также представляют собой большие массивы. Следовательно, возникает необходимость организации полного алгоритма МКЭ, при которой часть даннь;х размещается в периферийной памяти ЭВМ.
К счастью, в процессе решения задачи МКЭ работа алгоритма происходит поэтапно во времени. Не все части алгоритма функционируют одновременно и не все числовые массивы обрабатываются одновременно. Например, осуществление таких функций, как автоматическая генерация координат и номеров узловых точек, вычисление и формирование матриц макроэлементов и матрицы 140 системы уравнений МКЭ, решение системы уравнений МКЭ, вычисление напряжений происходят последовательно друг за другом. Иначе говоря, вычисление и формирование матриц макроэлементов и матрипы системы уравнений *МКЭ не может начаться прежде чем закончится вычисление координат и номеров узловых зочек, реше.ие системы уравнений МКЭ не может начаться прежде чем закончится формирование этой системы и т.