П.3. Оптимизация сетки КЭ
Содержание работы по П.3
При решении задачи методом конечных элементов сетку всегда подвергают оптимизации. Существует достаточно много алгориттмов оптимизации. Алгоритм оптимизации сетки КЭ в программе CAE Sigma основан на увеличении минимального угла «звезды» среди других углов конечных элементов, сходящихся в одном узле. Узел сетки, в котором сходятся несколько КЭ, называют «звездой». Программа REGULARIZATION. for отыскивает «звезду» с наименьшим углом, при этом «звезду», не лежащую на границе рассчитываемой области, и передвигает узел по биссектрисе этого минимального угла, тем самым увеличивая его значение. Понятно, что при этом будут уменьшаться значения других углов, образующих «звезду». Если какой-либо угол становится меньше первого минимального, то алгоритм переключается на новый минимальный угол. Если перемещение этого узла не приносит никакого эффекта в направлении всех биссектрис углов, отыскивается следующая «звезда» с минимальным углом и процесс повторяется. Более подробное описание алгоритма приведено в подсистеме «Помощь» CAE Sigma.
При прямом использовании алгоритма оптимизации сетки подпрограммой REGULARIZATION. for возможно изменение границ между свойствами КЭ, образующих рассчитываемый объект. Чтобы этого избежать необходимо «закрепить» узлы, лежащие на границах свойств КЭ.
При выполнении П.3 в процессе оптимизации сетки КЭ
границы областей с разными свойствами КЭ не должны изменяться.
Неизменность границ свойств КЭ в процессе оптимизации сетки поддерживается подпрограммой FINDNODD. for, вызываемой из REGULARIZATION. for. Пример реализации FINDNODD. for можно посмотреть в Example 3.
Процесс «закрепления» узла в FINDNODD. for решается присвоением элементу массива NTMOVE с номером узла значения 1, т. е. NTMOVE(I)=1. Дело в том, что c помощью соответствующего массива INOUT в подпрограмме триангуляции GRIDDM. for узлы, лежащие на границе рассчитываемой области отделяются от внутренних узлов. Узлы, лежащие на границе области, имеют признак INOUT(I)=1, а внутренние узлы INOUT(I)=0. Поэтому вызываемая из GRIDDM. for подпрограмма оптимизации сетки REGULARIZATION. for благодаря значениям массива INOUT передвигает только внутренние узлы. Необходимо внутренние узлы, лежащие на границах, разделяющих зоны с разными свойствами КЭ, перевести в разряд граничных узлов. Это и происходит с помощью NTMOVE(I)=1.
Пример демонстрации сохранения границ свойств КЭ при оптимизации.
При выполнении П.3. необходимо:
- модифицировать программу FINDNODD. for под решаемую задачу и провести расчет при NRC=7 на оптимизированных сетках КР 6-го и КР 7-го семестров; визуально оценить оптимизированные сетки, указав зоны, в которых алгоритм оптимизации работает наиболее интенсивно, и зоны, в которых его работа проявилась наименьшим образом. Попытаться указать причину того и иного явления. Отметить обнаруженные случаи некорректной работы алгоритма; подсчитать величины изменения минимального угла до и после оптимизации сеток, а также значения среднего минимального угла. Данные занести в таблицы, примерная форма которых представлена ниже:
Таблица 3.1. Изменение минимального угла сетки в результате оптимизации в зависимости от числа КЭ для сетки 6-го семестра
nrc | Число КЭ |
| зона, №КЭ |
| зона, №КЭ |
|
| средний по всем КЭ | средний |
|
|
3 | 31.76 | 35.04 | 3,28 | 10.3 | |||||||
4 | |||||||||||
7 | |||||||||||
8 | |||||||||||
9 | |||||||||||
10 | |||||||||||
Среднее |
Таблица 3.2. Изменение минимального угла сетки в результате оптимизации в зависимости от числа КЭ для сетки 7-го семестра
nrc | Число КЭ |
| зона, №КЭ |
| зона, №КЭ |
|
| средний по всем КЭ | средний |
|
|
3 | |||||||||||
4 | |||||||||||
7 | |||||||||||
8 | |||||||||||
9 | |||||||||||
10 | |||||||||||
Среднее |
- сравнить и объяснить расхождение в результатах работы алгоритма оптимизации двух сеток КЭ, сделать максимально полное заключение об особенностях, недостатках и эффективности работы алгоритма оптимизации сетки при выполнении функций, для которых он предназначен.
Для получения необходимых числовых значений рекомендуется использовать заготовки кода подпрограммы fs. for, находящейся в файле w1calc. for. Подпрограмму fs. for надо подключить к своему проекту в CAE Sigma.
Файл w1calc. for выложен на сайте дисциплины в разделе
«Дополнительные программы и модули к САЕ Sigma».
Вызов модуля fs. for лучше всего осуществить в MAIN. for перед заданием граничных условий, так к этому моменту сетка уже полностью сформирована, в том числе после оптимизации (если подключена такая опция) и номерам конечных элементов и узлов присвоены окончательные значения. В этом случае результаты работы fs. for можно будет увидеть в текстовых результатах расчета в позиции:
14. Конечная нумерация – КЭ и его узлы (MAIN)
Результаты можно будет увидеть и в позиции
Все указанные элементы в файле результатов расчетано в этом случае для поиска информации по работе fs. for придется перелистывать много страниц файла полных результатов расчета.
Всё это при условии, что в конфигурации комплекса будет выбрана альтернатива «Выбрать все».
При каждом NRC основные элементы столбцов таблицы (значение NRC, число КЭ, значение минимального угла, номер КЭ, в котором найден минимальный угол, сумма всех минимальных углов, значение среднего минимального угла) должны выводиться в одной строке текстового файла результатов расчета. Вывод результатов расчета подпрограммы fs должен быть организован в виде, максимально приближенным к форме таблицы отчета: сверху должно быть название элементов вывода строки с результатами.
Над результатами расчета подпрограммы fs. for должна присутствовать строка с названием анализируемой сетки. В качестве признака разных сеток должен служить параметр nvar (Вариант), который ранее в проектах отождествлялся с номером варианта задания и, по сути, нигде не участвовал в расчетах. Поэтому в дальнейшем этому параметру необходимо присваивать не номер варианта задания, а номер варианта решения задачи на разных сетках. Если решается задача на сетке 6-го семестра, то nvar должен быть задан равным 6-ти, а если 7-го, то 7-ми. Понятно, что значение nvar надо передать в подпрограмму fs. for и при подключении сетки определенного семестра задавать nvar соответствующее значение.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 |


