Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Разработка алгоритмов и комплекса программ для численного решения задач левитации с использованием реляционных баз данных Николаев Евгений Иванович

Разработка алгоритмов и комплекса программ для численного решения задач левитации с использованием реляционных баз данных
<
Разработка алгоритмов и комплекса программ для численного решения задач левитации с использованием реляционных баз данных Разработка алгоритмов и комплекса программ для численного решения задач левитации с использованием реляционных баз данных Разработка алгоритмов и комплекса программ для численного решения задач левитации с использованием реляционных баз данных Разработка алгоритмов и комплекса программ для численного решения задач левитации с использованием реляционных баз данных Разработка алгоритмов и комплекса программ для численного решения задач левитации с использованием реляционных баз данных Разработка алгоритмов и комплекса программ для численного решения задач левитации с использованием реляционных баз данных Разработка алгоритмов и комплекса программ для численного решения задач левитации с использованием реляционных баз данных Разработка алгоритмов и комплекса программ для численного решения задач левитации с использованием реляционных баз данных Разработка алгоритмов и комплекса программ для численного решения задач левитации с использованием реляционных баз данных
>

Диссертация - 480 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - 240 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Николаев Евгений Иванович. Разработка алгоритмов и комплекса программ для численного решения задач левитации с использованием реляционных баз данных : Дис. ... канд. техн. наук : 05.13.18 Ставрополь, 2006 130 с. РГБ ОД, 61:06-5/3637

Содержание к диссертации

Введение

Глава 1. Математическое моделирование и численные методы решения нелинейных задач математической физики 11

1.1 Левитация в магнитных коллоидах как нелинейный физический процесс 11

1.2 Численные методы решения нелинейных задач математической физики 15

1.2.1 Метод скалярных конечных элементов 16

1.2.2 Метод векторных конечных элементов 19

1.2.3 Метод конечных разностей 22

1.3 Возможности пакетов прикладных программ, реализующих численные методы решения нелинейных задач математической физики 28

1.4 Применение левитации тел в технологических процессах и технических устройствах 30

1.5 Выводы 35

Глава 2. Разработка алгоритма численного решения задачи о левитации с использованием метода конечных разностей на квазиравномерных сетках 38

2.1 Дискретизация задачи о вычислении скалярного магнитного потенциала в сосуде с магнитной жидкостью в системе декартовых координат 40

2.1.1 Построение линейных уравнений для внутренних точек расчетной области в случае декартовых координат 40

2.1.2 Построение линейных уравнений для точек, находящихся на поверхности сосуда, магнита и на бесконечности в случае декартовых координат 42

2.2 Дискретизация задачи о вычислении скалярного магнитного потенциала в сосуде с магнитной жидкостью в системе цилиндрических координат 45

2.2.1 Построение линейных уравнений для внутренних точек расчетной области в случае цилиндрических координат 45

2.2.2 Построение линейных уравнений для точек, находящихся на поверхности сосуда, магнита и на бесконечности в случае цилиндрических координат 46

2.3 Расчет значений скалярного магнитного потенциала в узлах пространственной квазиравномерной сетки 47

2.4 Адаптация итерационного метода решения СЛАУ к возможностям сервера реляционных баз данных 59

2.5 Выводы 65

Глава 3. Разработка серверной части программного комплекса для моделирования левитационных процессов постоянного магнита в сосуде с магнитной жидкостью 67

3.1 Построение системы линейных алгебраических уравнений 70

3.2 Реализация итерационного процесса получения значений скалярного магнитного потенциала в узлах пространственной сетки 84

3.3 Вычисление пондеромоторной силы 87

3.4 Выводы 92

Глава 4. Решение задачи левитации с использованием разработанного программного комплекса при различных значениях входных параметров 93

4.1 Архитектура клиентской части программного комплекса 93

4.2 Результаты расчетов скалярного магнитного потенциала и пондеромоторной силы при использовании цилиндрических координат 100

4.3 Результаты расчетов скалярного магнитного потенциала и пондеромоторнои силы при использовании декартовых координат 110

4.4 Выводы 117

Заключение 120

Список литературы 122

Введение к работе

з

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

Актуальность темы. Необходимость моделирования левитационных процессов постоянного магнита в ограниченном объеме магнитной жидкости (МЖ) обусловлена наличием большого количества устройств и технологических процессов, принцип действия которых основан на явлении магнитной левитации. При этом проведение экспериментальных исследований в данной области затруднено разнообразием физических и геометрических характеристик исследуемых систем, высокой стоимостью материалов, необходимых для физического моделирования. Численное моделирование позволит прогнозировать значение силы магнитной левитации для задач с различными входными параметрами и с различной геометрической топологией. Явление магнитной левитации обусловлено взаимодействием магнитного поля с погруженными в магнитную жидкость телами различной магнитной природы и представляет собой сложный нелинейный процесс, описываемый системой дифференциальных уравнений в частных производных второго порядка в бесконечной области. В данной постановке задача о левитации осложняется наличием краевых условий сопряжения на границах магнитно-неоднородных сред. Решение этой задачи представляет собой самостоятельную математическую проблему, разрешимую аналитическими методами для узкого круга задач.

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

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

4 нитную жидкость постоянных магнитов различной формы с произвольной ориентацией вектора намагниченности.

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

  2. Разработать комплекс программ, позволяющий автоматизировать все стадии вычислительного эксперимента при моделировании левитации постоянного магнита в ограниченном объеме магнитной жидкости.

  3. Получить численные значения силы, действующей на погруженные в магнитную жидкость тела произвольной формы при наложении дополнительного магнитного поля, и сравнить результаты с экспериментом.

Методы исследований. В работе использован математический аппарат теории разностных схем на основе квазиравномерных сеток, теории дифференциальных уравнений в частных производных, теории алгоритмов, численные методы решения систем линейных алгебраических уравнений на основе итерационных методов крыловского типа. Численное моделирование производилось с использованием вычислительной техники и программных средств с реляционной архитектурой.

Научная новизна

Впервые моделирование процессов левитации проведено для топологии, когда постоянный магнит и сосуд имеют замкнутую поверхность, представленную множеством прямоугольных граней, каждая из которых перпендикулярна одной из координатных осей.

Разработан алгоритм расчета скалярного магнитного потенциала, описываемого уравнением Лапласа в бесконечной области с условиями сопряжения на границах раздела магнитно-неоднородных сред. Алгоритм основан на дискретизации исходной задачи методом конечных разностей на квазиравномерных сетках и модифицирован для применения в рамках реляционной архитектуры.

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

5 магнит, по известным дискретным значениям скалярного магнитного потенциала.

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

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

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

Положения, выносимые на защиту

  1. Алгоритм расчета скалярного магнитного потенциала, описываемого уравнением Лапласа в бесконечной области с условиями сопряжения на границах магнитно-неоднородных сред, адаптированный к возможностям реляционной архитектуры.

  2. Программный комплекс для автоматизации расчета скалярного магнитного потенциала в задачах левитации.

  3. Алгоритм расчета пондеромоторной силы для активной и пассивной левитации магнита на основе рассчитанного дискретного распределения скалярного магнитного потенциала.

  4. Программный комплекс, позволяющий автоматизировать вычисление пондеромоторной силы, действующей на постоянный магнит, поверхность ко-

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

  1. Результаты расчета скалярного магнитного потенциала для объемных задач с различными входными геометрическими и физическими параметрами.

  2. Результаты сравнения данных, полученных с применением программного комплекса в ходе численного эксперимента, и данных физического эксперимента.

Апробация работы

Основные результаты работы докладывались на следующих научно-технических конференциях: XI Всероссийская школа-коллоквиум по стохастическим методам и V Всероссийский симпозиум по прикладной и промышленной математике (2004 г.), VI Всероссийский симпозиум по прикладной и промышленной математике (2005 г.), VII Всероссийский симпозиум по прикладной и промышленной математике (2006 г.), XII Всероссийская школа-коллоквиум по стохастическим методам и VI Всероссийский симпозиум по прикладной и промышленной математике (2005 г.), Международная научно-техническая конференция «Инфотелекоммуникационные технологии в науке, производстве и образовании» (2004 г.), Международная научно-практическая конференция «Моделирование. Теория, методы и средства» (2005 г.), II Международная научно-техническая конференция «Инфотелекоммуникационные технологии в науке, производстве и образовании» (2006 г.).

Личный вклад автора

  1. Обосновано применение реляционной архитектуры для решения задач левитации с помощью метода конечных разностей.

  2. Разработаны алгоритмы дискретизации задачи, проведена адаптация алгоритмов решения СЛАУ к особенностям реляционной архитектуры.

  3. Разработана архитектура программного комплекса и программная реализация серверной и клиентской части.

7 Структура и объем работы. Диссертация состоит из введения, четырех глав, заключения, списка цитируемой литературы. Общий объем диссертации 126 страниц, работа содержит 56 рисунков, 7 таблиц и список цитированной литературы из 123 наименований.

Левитация в магнитных коллоидах как нелинейный физический процесс

Процесс левитации основан на характерном только для магнитных коллоидов характере взаимодействия веществ данной группы с магнитным полем и телами различной магнитной природы.

Суть левитационного процесса заключается в самовзвешивании постоянного магнита в сосуде с МЖ, а также увеличении выталкивающей силы, действующей на магнит в сосуде с МЖ при наличии внешнего магнитного поля. При математическом описании левитационных процессов в МЖ основываются на общих принципах описания взаимодействия сплошной среды с электромагнитным полем [14,22], а именно, - данный вид взаимодействия рассматривается на релятивистской основе. Но вследствие малых скоростей, характерных для большинства процессов в магнитных коллоидах (в том числе и для явления левитации), существует возможность применения моделей, описывающих поведение макроскопических объемов МЖ.

Моделирование на макроуровне предполагает рассмотрение замкнутой системы уравнений [46,72]. Задача в такой постановке требует существенного упрощения для получения определенных практических результатов. Наиболее распространенным подходом при решении уравнений магнитной гидродинамики является разделение полной системы на две подсистемы - поле и среду (если это возможно).

При решении задач левитации основной интерес представляет подсистема, описывающая магнитное поле. Именно магнитное поле обуславливает наличие пондеромоторной силы, действующей на постоянный магнит, находящийся в сосуде с магнитной жидкостью. Рассматриваются ситуации, когда необратимыми процессами релаксации намагниченности магнитной жидкости М можно пренебречь (то есть принять М Н, Н - напряженность магнитного поля в магнитной жидкости). В таких случаях применима квазиравновесная модель [14].

В рамках рассматриваемого приближения М - М(Л/Н) = %Н, где х -магнитная восприимчивость магнитной жидкости. В изотермических условиях действие магнитостатической силы проявляется лишь на границах соприкосновения двух сред с различными магнитными свойствами [13].

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

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

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

Решение построено на квазиравномерных сетках, так как применение данного вида регулярных сеток позволяет:

- учитывать граничные условия (1.10) непосредственно на бесконечности, при этом не требуется введение искусственных граничных условий;

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

Для численного решения задач (1.5) - (1.10) производится дискретизация уравнений модели на квазиравномерной сетке. При этом сетка строится следующим образом [40]: Зададим монотонное достаточно гладкое преобразование x(Q, \ є [0;1], хе[а;Ь]; тогда сетки юи = {х„ x(n/N),Q n N} на [а;Ь] будут квазиравномерными.

При построении сетки и дискретизации уравнений следует учитывать способ построения дробных узлов сетки: При оценке точности вместо 0(hp) используют оценку 0(N р). Это позволяет применять метод сгущения сеток для апостериорной оценки погрешности и повышения точности.

Учитывая специфику метода, необходимо выбрать такое преобразование что #(0) =-да и х(1)-+со. При таком выборе функции отображения xn=x(nl N), квазиравномерная сетка охватывает бесконечную область при конечном числе узлов N.

Построение системы линейных алгебраических уравнений

Реализация данного этапа состоит в последовательном выполнении хранимых процедур на стороне сервера.

Для построения трех одномерных сеток осуществляется запуск процедуры Razn.a_BuildNet @sol char(100) input (входящий параметр является именем проекта). Алгоритм сводится к следующему: 1.1 Создание одномерных сеток по схеме изображенной на рисунке 2.8 осуществляется добавлением в таблицу Razn.a_dimension номеров узлов [по] одномерных сеток по каждому измерению [dim]. При этом структура тблицы Razn.a_diraension имеет вид, представленный в таблице 3,1

При выполнении данной процедуры анализируется возможность использования данных из уже существующих проектов. Если в таблице Razn.a_dimension существует проект с построенной сеткой, то из него SQL-командой INSERT ... SELECT копируются номера узлов в создаваемый проект. Если проектов нет, то все узлы в новом проекте создаются в итерационном цикле, но учитывая одномерность создаваемых сеток даже итерационный вариант алгоритма не снижает общей производительности программы.

После выполнения этапа 1.1 в таблице Razn.a_dimension значения будут содержать только столбцы: [dim], [no], [sol]. 1.2 Контроль непротиворечивости данных на данном этапе выполнения алгоритма поддерживается за счет применения индекса Razn.a_dimension.Index_on_dimension, который отражает особенность регулярной сетки: узлы по каждому измерению должны иметь уникальную нумерацию. Таким образом индекс создается по трем полям: [sol], [dim], [по] и обладает свойством уникальности.

2. После выполнения процедуры Razn.aJBuildNet в таблице Razn.a_dimension необходимо инициализировать координаты сеточ ных узлов по каждому измерению. Данные действия выполняет про цедура Razn.a_AddValues @sol char(100) input. В ходе ее выполне ния рассчитываются значения полей [en], [val], [h], [hi], [t]. Данные поля таблицы Razn.a_dimension вычисляются на основе значений в поле [по], то есть все эти поля являются производными от поля [по]. При этом координаты узлов рассчитываются независимо по каждо му измерению, то есть в цикле по всем измерениям выполняется SQL-команда UPDATE Razn.a_dimension .. .

В процессе выполнения данного этапа в таблице Razn.ajiimension осуществляется построение трех сеток в одномерном пространстве.

В математической модели каждый узел сетки имеет определенный тип (формула 1.5), в соответствии которому поле [tip] таблицы Razn.a_dimension принимает значения: 0 - внутренний узел; 1 - узел на границе «магнит - МЖ»; 2 - узел на границе «МЖ - внешняя среда»; 3 - узел на бесконечности. После построения сетки в таблице Razn.a__dimension содержатся записи, поле [tip] которых имеет значение 0, то есть все узлы, по умолчанию, являются внутренними. Но математическая постановка задачи требует введения четырех ти пов узлов. На данном этапе осуществляется добавление граней магнита и сосуда, а точнее узлов сетки, которые будут отождествляться с точками, аппроксимирующими соответствующие границы. Дан 73 ные операции выполняет процедура Razn.addJLayers @sol char(lOO) input. При вполнении, процедура считывает данные из таблицы Razn.ajabjects, которая имеет структуру представленную в таблице 3.2.

Архитектура клиентской части программного комплекса

Клиентская часть программного комплекса разработана с использованием интегрированной среды разработки приложений Borland Delphi 6.0. Решение задачи левитации с точки зрения пользователя состоит из следующих этапов (рис. 4.1):

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

На первом этапе (рис. 4,1) пользователю необходимо: определить тип функции отображения (формулы 2.2, 2.3); визуально оценить характер распределения узлов сетки в области решения; выбрать параметры с (скорость роста шага сетки), N (количество узлов сетки). Таким образом, использование программного модуля NetView позволяет определиться с параметрами функции отображения. На рисунке 4.2 представлен вид окна NetView с изо брожением плоской сетки.

На втором этапе (рис. 4.1) необходимо расположить сосуд и магнит в пространстве, а также осуществить привязку пространственной квазиравномерной сетки к модели. Данные операции реализуются в программных модулях CylinderScene (в случае решения задачи в цилиндрических координатах) или RectScene (при использовании декартовых координат). Отличие модулей состоит в различном количестве параметров, необходимых для описания геометрических характеристик модели, а также в необходимости визуализации пространственных сеток с помощью различных геометрических примитивов (сеточные уровни в случае использования цилиндрических координат задаются концентрическими окружностями, а в случае декартовых - параллельными прямыми). На рис. 4.3 представлен вид окна CylinderScene с построенной трехмерной сценой. Например, для добавления магнита в модель необходимо перейти на вкладку 4 (рис. 4.3), в окнах 6, 7 указать размеры цилиндра и нажать кнопку Apply группы 10. Геометрический приметив отобразится в главном окне. Аналогично осуществляется добавление сосуда. При этом необходимо учитывать, что перед началом решения, присутствующие в сцене объекты, необходимо сохранить в базе данных на сервере, то есть нажать кнопку Save группы 10.

Для создания сцены модели при использовании декартовых координат с помощью модуля RectScene выполняются операции аналогичные действиям пользователя при решении задачи в цилиндрических координатах. Разница состоит в большем количестве входных параметров при создании геометрических примитивов, так как описывать приходится не весь объект (цилиндр), а отдельные его составляющие (прямоугольные грани поверхностей магнита и сосуда). На рисунке 4.4 изображено окно приложения RectScene с созданной сценой.

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