Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Учебное пособие 1035

.pdf
Скачиваний:
5
Добавлен:
30.04.2022
Размер:
723.19 Кб
Скачать

ФГБОУ ВО "Воронежский государственный технический университет"

Кафедра высшей математики и физико-математического моделирования

ВОЗМОЖНОСТИ МУЛЬТИФИЗИЧЕСКИХ СИСТЕМ

КОНЕЧНО-ЭЛЕМЕНТНОГО АНАЛИЗА

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к самостоятельной работе по курсам «Математическое моделирование» и «Математическое моделирование в технической физике» для студентов направлений подготовки магистров 27.04.01 «Стандартизация и метрология» и 16.04.01 «Техническая физика» очной формы обучения

Воронеж 2016

Составители: аспирант А.А. Кудряш, канд. физ.-мат. наук Г.Е. Шунин.

УДК 004.94:519.63

Возможности мультифизических систем конечноэлементного анализа: методические указания к самостоятельной работе по курсам «Математическое моделирование» и «Математическое моделирование в технической физике» для студентов направлений подготовки магистров 27.04.01 «Стандартизация и метрология» и 16.04.01 «Техническая физика» очной формы обучения/ ФГБОУ ВО "Воронежский государственный технический университет"; сост. А.А. Кудряш, Г.Е. Шунин. Воронеж, 2016. 43 с.

В методических указаниях рассмотрены функциональные возможности и ограничения систем мультифизического конеч- но-элементного анализа. Наибольшее внимание уделяется системе COMSOL Multiphysics.

Издание соответствует требованиям Федерального государственного образовательного стандарта высшего образования по направлениям подготовки магистров 27.04.01 «Стандартизация и метрология», 16.04.01 «Техническая физика», дисциплинам «Математическое моделирование» и «Математическое моделирование в технической физике».

Методические указания подготовлены в электронном виде в текстовом редакторе Word и содержатся в файле ВМФСКЭА.pdf.

Библиогр.: 26 назв.

Рецензент канд. физ.-мат. наук, доц. В.В. Пешков. Ответственный за выпуск зав. кафедрой д-р физ.-мат.

наук, проф. И.Л. Батаронов Издается по решению редакционно-издательского совета

Воронежского государственного технического университетаФГБОУ ВО "Воронежский государственный

технический университет", 2016

ВВЕДЕНИЕ

Общую разработку и компьютерное моделирование фи- зико-технических объектов целесообразно проводить с помощью полномасштабных PAL-систем машиностроительного профиля таких, как Pro/Engineer (Creo) [1], CATIA [2] и NXUnigraphics [3], осуществляющих компьютерную поддержку полного цикла разработки и производства изделия. Это интегрированные системы с интуитивно понятным пользовательским интерфейсом, встроенным макроязыком и библиотеками функций, с возможностью подключения внешних модулей, расширяющих их функциональные возможности. Трѐхмерное моделирование происходит на уровне твѐрдотельных моделей с использованием конструкторско-технологических библиотек, средств визуализации и анимации результатов инженерного анализа. Этот анализ осуществляется собственными конечноэлементными модулями или через прямой интерфейс с универ-

сальными CAE-системами ANSYS [4], NISA [5], Cosmos/M [6], Elcut [18] и др. (см. обзор [25]). Следует отметить, что эти системы основываются на стандартных физико-математических моделях электромагнетизма, теплогазогидродинамики и механики сплошной среды. Для более углублѐнного моделирования физических процессов перспективно использовать наиболее мощную систему конечно-элементного мультифизического анализа COMSOL Multiphysics [7], конечно-элементный комплекс программ FlexPDE [8] и конечно-элементную библиотеку программ Diffpack [9]. Разработку узкоспециализированных дополнительных модулей инженерного анализа к PAL системам можно осуществлять такжже на основе свободно распространяемых открытых конечно-элементных пакетов программ

FreeFEM++ [10], Elmer [11], FEMPDESolver [12-17] и др. (см.

обзор [26]) с использованием возможностей универсальных систем компьютерной математики Maple [20], Mathematica [21], Matlab [22], Maxima [23] и Scilab [24].

Универсальная система компьютерной математики

MATLAB

(MATrix LABoratory)– это высокоуровневый язык и интерактивная среда для численных расчѐтов, визуализации и программирования. Выпускается американской компанией The MathWorks. Посредством MATLAB пользователь может анализировать данные, разрабатывать алгоритмы, создавать модели и приложения. Язык, средства и встроенные математические функции дают пользователю возможность быстрее решать задачи по сравнению с традиционными языками программирования, такими, как C/C++ или Java. MATLAB позволяет решать широкий спектр задач в различных областях науки и техники.

MATLAB обладает широкими возможностями в области методов числовых расчѐтов для анализа данных, разработки алгоритмов и создания моделей (интерполяция и регрессия, дифференцирование и интегрирование, линейные системы уравнений, гармонический анализ, собственные и сингулярные значения, обыкновенные дифференциальные уравнения, разреженные матрицы). Функции, содержащиеся в ядре MATLAB, позволяют быстро выполнять матричные и векторные вычисления.

Кроме этого, в MATLAB имеются средства работы с данными (получение, анализ, визуализация), позволяющие тратить на операции с данными намного меньше времени, чем при аналогичных операциях при использовании традиционных языков программирования. MATLAB позволяет получать данные из файлов, приложений, баз данных, а также внешних приборов. Файлы, доступные для чтения, могут быть разных форматов: Excel-файлы, текстовые или бинарные файлы, изображения, звуковые или видеофайлы. Средства для анализа данных представляют собой функции для фильтрации, сглаживания, интерполяции, свѐртки и быстрого преобразования Фурье. Визуализация данных осуществляется путѐм встроенных

2

2D и 3D графиков функций, а также функций для объѐмной визуализации. Также, есть возможность создания отчѐтов после выполнения программы. Отчѐт включает в себя программный код, комментарии и результаты работы программы, включая графики. Отчѐты могут быть преобразованы в различные форматы, такие как HTML, PDF, Word или LaTeX.

Приложения, написанные на языке MATLAB, можно соединять с приложениями, написанными на других языках. Так, пользуясь MATLAB, можно вызвать код, написанный на C, C++, Java или .NET, или, наоборот, при создании C, C++ или Fortran-приложений можно вызвать код, написанный на

MATLAB.

Помимо операций, содержащихся в ядре MATLAB, существуют наборы инструментов, предназначенные для решения специализированных задач и значительно расширяющие возможности MATLAB. По области применения их можно классифицировать следующим образом:

Параллельные вычисления (Parallel Computing Toolbox, MATLAB Distributed Computing Server);

Математика, статистика и оптимизация (Symbolic Math Toolbox, Partial Differential Equation Toolbox, Statistics and Machine Learning Toolbox, Curve Fitting Toolbox, Optimization Toolbox, Global Optimization Toolbox, Neural Network Toolbox, Model-Based Calibration Toolbox);

Системы управления (Control System Toolbox, System Identification Toolbox, Fuzzy Logic Toolbox, Robust Control Toolbox, Model Predictive Control Toolbox, Aerospace Toolbox, Robotics System Toolbox);

Обработка сигналов и связь (Signal Processing Toolbox, DSP System Toolbox, Communication System Toolbox, Wavelet Toolbox, RF Toolbox, Antenna Toolbox, Phased Array System Toolbox, LTE System Toolbox);

Обработка изображений и машинное зрение (Data Acquisition Toolbox, Instrument Control Toolbox, Image Acquisition Toolbox, OPC Toolbox, Vehicle Network Toolbox);

3

Финансовая инженерия (Financial Toolbox, Econometrics Toolbox, Datafeed Toolbox, Database Toolbox, Spreadsheet Link EX (для Microsoft Excel), Financial Instrument Toolbox, Trading Toolbox);

Вычислительная биология (Bioinformatics Toolbox, SimBiology);

Средства для генерации и проверки кода (MATLAB Coder, HDL Coder, Vision HDL Toolbox, HDL Verifier, Filter Design HDL Coder, Fixed-Point Designer);

Средства для разработки приложений (MATLAB Compiler, MATLAB Compiler SDK, Spreadsheet Link EX (для Microsoft Excel), MATLAB Production Server);

Подключение к базам данных и составление отчѐтов

(Database Toolbox, MATLAB Report Generator).

Отдельно стоит отметить PDE Toolbox – набор инструментов, позволяющий решать дифференциальные уравнения методом конечных элементов в 2D и 3D случаях.

Ключевые особенности:

Решатели для связанных систем дифференциальных уравнений в частных производных: стационарные, нестационарные задачи, частотный анализ, решение задач на собственные значения;

Задание дифференциальных уравнений в частных производных для эллиптических, гиперболических и параболических задач;

Задание граничных условий: Дирихле, обобщѐнное условие Неймана, смешанное условие;

Функции для создания 2D-геометрии и импорта 3Dгеометрии из STL-файлов;

Автоматическое разбиение с использованием треугольников и тетраэдров;

Одновременное изображение нескольких графиков решения, наложение сетки, анимация.

4

Рабочее окно и процесс работы в PDE Toolbox.

Рабочий процесс в PDE Toolboxсостоит из определения геометрии, задания уравнения или системы уравнений, описывающих задачу, граничных и начальных условий, построения сетки, решения уравнений и визуализации результатов. Для каждого из шагов в PDE Toolbox имеются соответствующие встроенные функции. PDE Toolbox позволяет решать задачи в области строительной механики, электростатики, переменного электромагнитного поля, электрического поля постоянного тока в проводящей среде, теплопереноса и диффузии, а также других прикладных областях.

Для 2D-задач можно воспользоваться рабочим окном. Оно обладает интерфейсом для задания геометрии и выбора одного из существующих прикладных режимов. При работе в рабочем окне можно в любой момент воспользоваться экспортом данных в рабочее пространство MATLAB, после чего продолжить работу вне рабочего окна.

Возможные типы уравнений.

При помощи PDE Toolbox можно задавать и решать различные типы уравнений в частных производных: эллиптические, параболические, гиперболические. Системы дифференциальных уравнений в частных производных могут быть линейными или нелинейными и могут иметь вещественнозначные или комплекснозначные решения.

Эллиптические уравнения:

− ∙ + =

Где - оператор градиента в ограниченной расчѐтной области задачи (2D или 3D), – скаляр или вектор решения задачи. Пользователь задаѐт коэффициенты , , , которые в общем случае могут быть функциями решения, его пространственных производных, а также пространственных координат.

Параболические уравнения:

− ∙ + =

Гиперболические уравнения:

5

22 − ∙ + =

Задачи на собственные значения:

− ∙ + =

Коэффициент в параболических и гиперболических уравнениях может зависеть от решения и пространственных координат. В случае нестационарной задачи все коэффициенты могут зависеть ещѐ и от времени.

Задание геометрии.

В случае 3D-геометрии PDE Toolbox может работать с многогранными объектами. Геометрия задаѐтся путѐм импорта из STL-файла в MATLAB. Формат STL является стандартным форматом для импорта 3D-геометрий из CAD-систем.

Для 2D-задач задание геометрии осуществляется при помощи комбинации нескольких геометрических примитивов

(Constructive Solid Geometry) или при помощи геометрических функций. При первом подходе с помощью комбинации примитивов (квадратов, прямоугольников, кругов, эллипсов, многоугольников) может быть создана сложная геометрия. Такой подход используется при работе через рабочее окно. Второй подход заключается в описании кривых, совокупность которых является границей исследуемой 2D-области.

Граничные условия.

PDE Toolbox позволяет задавать граничные условия Дирихле и обобщѐнные граничные условия Неймана на границе исследуемой области путѐм задания соответствующих коэффициентов.

Дирихле:

=

Обобщённое условие Неймана:

∙ + =

Для каждого граничного условия - внешняя единичная нормаль, - скаляр или вектор-решение, - коэффициент, заданный при определении уравнений, а коэффициенты , , , могут зависеть от решения, а также координат нормали. Для

6

нестационарных задач коэффициенты также могут зависеть от времени. Для систем дифференциальных уравнений поддерживаются условие Дирихле, обобщѐнное условие Неймана и смешанное условие.

Разбиение и решение.

Для решения уравнений PDE Toolbox использует метод конечных элементов. Область разбивается в автоматическом режиме путѐм управления параметром сетки.

В3D-задачах область разбивается на тетраэдры. Существует возможность выбора порядка базисных функций (линейные или квадратичные).

В2D-задачах для разбиения области используются треугольные элементы с линейными базисными функциями.

Для 2D-эллиптических и нелинейных эллиптических задач используется алгоритм адаптивного измельчения сетки для измельчения сетки в тех местах, где ошибка решения оказывается слишком большой.

Для параболических и гиперболических задач можно задать условия в начальный момент времени и исследовать решение в любой момент времени. Для гиперболических задач можно задать член, отвечающий за затухание.

Решатель задач на собственные значения возвращает собственные значения и собственные вектора. Пользователь может задать интервал для поиска собственных значений на этом интервале.

Визуализация решение и постпроцессорная обработ-

ка.

PDE Toolbox позволяет визуализировать решение путѐм создания поверхностных рисунков, таких как контурные рисунки или пользовательские рисунки, такие как распределение исследуемой величины в секущих плоскостях.

Поверхностные рисунки.

PDE Toolbox позволяет показывать распределение исследуемой величины по поверхности области в 3D.

Графики для нестационарных задач.

7

Имеются средства для визуализации изменения исследуемых величин во времени.

Пользовательские графики.

При помощи средств кода можно создавать свои собственные рисунки.

В 2D-случае для визуализации результатов можно воспользоваться средствами, имеющимися в рабочем окне для построения поверхностных и контурных графиков, а также визуализации сетки. Для параболических и гиперболических типов задач возможно создание анимации, показывающей, как меняется решение во времени.

Кроме того, при помощи средств PDE Toolbox можно получить значение решения в любой точке области.

Отдельно стоит отметить Simulink – продукт, представляющий собой интерактивную графическую среду для имитационного моделирования и проектирования на основе моделей. Поддерживает операции проектирования на системном уровне, моделирования, автоматической генерации кода и непрерывного тестирования и проверки встроенных систем. Simulink состоит из графического редактора, настраиваемых библиотек блоков, и решателей для моделирования и имитации динамических систем. Simulink полностью интегрирован с MATLAB, что позволяет включать алгоритмы MATLAB в Simulinkмодели и наоборот, экспортировать результаты, полученные в Simulink, в MATLAB для дальнейшего анализа. Ниже кратко приведены основные особенности Simulink:

Графический редактор для построения и управления иерархическими блок-диаграммами;

Библиотеки готовых блоков для моделирования непрерывных и дискретных по времени систем;

Механизм имитации на основе решателей обыкновенных дифференциальных уравнений с фиксированным и переменным шагом;

8