Построение и тестирование двумерных разностных сеток

Автор работы: Пользователь скрыл имя, 10 Декабря 2011 в 09:14, курсовая работа

Описание работы

Целью моей работы было тестирование заданных двумерных сеток по критериям качества сеток, используя тесты Г.П. Прокопова. Задачи исследования:
Разработка программного обеспечения для тестирования качества сеток.
Графическая визуализация примерного каркаса тестируемой сетки.

Содержание работы

Введение………………………………………………………………….…..3
Основная часть…………………………………………………………….…5
Заключение………………………………………………………………….22
Список литературы…………………………………………………………23

Файлы: 1 файл

Курсовая.doc

— 1.46 Мб (Скачать файл)

    Федеральное агентство по образованию

Государственное образовательное учреждение высшего

профессионального образования

Уральский Государственный Университет имени  А.М.Горького 
 
 
 
 

Математико-механический факультет

Курсовая  работа 
 

Построение  и тестирование двумерных разностных сеток. 
 
 

Исполнитель:

Студент группы КН-302

Ерохина М.А. 

Научный руководитель:

доктор  физико-математических наук

Ушакова О. В. 
 
 

г. Екатеринбург,

2010г

 

Содержание 

Введение………………………………………………………………….…..3

Основная часть…………………………………………………………….…5

Заключение………………………………………………………………….22

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

 

Введение 

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

     Причиной  использования адаптивных сеток  в задачах численного моделирования  является желание повысить точность приближенного решения задачи без существенного увеличения числа узлов. Среди всех методов построения адаптивных сеток можно выделить важный класс методов, в котором адаптивные сетки получаются в результате отображения некоторой  вычислительной области на физическую, переводящего зафиксированную, обычно равномерную, сетку в адаптивную с заданным распределением плотности. К методам этого класса относятся такие традиционные методы построения адаптивных сеток, как метод эквираспределений, метод Томпсона, эллиптический метод и т.д. для получения качественных адаптивных сеток все эти методы, а также алгебраические методы и методы конформных отображений, в конечном счете требуют решения сложных систем нелинейных дифференциальных уравнений (ДУ) с частными производными. Необходимость решения ДУ, сложность которых существенно возрастает с увеличением размерности пространства, накладывается ряд ограничений на возможности этих методов. В частности, для обеспечения их сходимости требуется жесткий контроль над способами задания физической области и функций плотности сетки, над свойствами граничных и начальных данных, особенно в случае сложных многосвязных областей.

     Целью моей работы было тестирование заданных двумерных сеток по критериям качества сеток, используя тесты Г.П. Прокопова. Задачи исследования:

    • Разработка программного обеспечения для тестирования качества сеток.
    • Графическая визуализация примерного каркаса тестируемой сетки.

 

 

     Для достижения поставленных задач мною была разработана программа. При  создании данной программы использовался язык Perl. На вход программе подается файл [имя файла].txt. В файле указано число узлов по оси Ох и по оси Оу, далее идет описание самой сетки. Сетка представляется в следующем виде:

      ,

     где – координаты узла сетки, стоящего в i-й строки и j-м столбце.

     В процессе работы программа выдает некий  приближенный макет исходной (поданной на вход) сетки. По завершению работы выдается файл otchet.txt, который содержит отчет по проведенным тестам.  
 
 

       Тесты Г.П. Прокопова. 

       Используемый  способ аппроксимации сеточных линий  – отрезки прямых.

       Другие  способы: дуги окружностей, сплайны  и др. кривые.

       Каждая  ячейка определяется координатами четырех  вершин. Нумеруем координаты от 1 до 4 в  направлении против часовой стрелки.

       

       Вычисляем площади  четырех треугольников, образованных диагоналями четырехугольника

       

       где

       

,
.

       Выполняется равенство 

       

,

       где  - площадь ячейки.  

       Тест 1. Вырожденность. Если , то ячейка вырожденная. Сетка непригодна для вычислений. 

       Тест 2. Вырожденность (Невыпуклость). Если только одно отрицательно, то ячейка невыпуклая. 

       Тест 3. Выпуклость. Если все  положительны, то ячейка выпукла. 

       Тест 4. Определим значение

       

.

       Если  , то ячейка параллелограмм. Если ячейка выпуклая, то           , если невыпуклая, . Если , ячейка вырождается в треугольник. (Невыпуклые ячейки и треугольники в отдельных случаях допустимы.) 

       Тест 5. Вычислим длины сторон четырехугольника

       

       По  теореме синусов для треугольника  вычислим

       

       где  Определим

       

.

       Величина  , тогда и только тогда, когда ячейка треугольник. В остальном эта величина аналогична . 

       Тест 6. Рассмотрим

       

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

       Отметим что величины это безразмерные величины.  

       Тесты сформулированы для одной ячейки. Как определить качество сетки, состоящей  из ячеек?

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

       Качество  сетки определяется на основе величин  с помощью ее минимального значения по всем ячейкам сетки

       

 

Пример 1.

   Всего ячеек - 16 

ТЕСТ № 1:

      Количество  вырожденных ячеек в сетке   - 0 

ТЕСТ № 2:

      Количество  невыпуклых ячеек в сетке   - 0 

ТЕСТ № 3:

      Количество  выпуклых ячеек в сетке   - 16

      Выпуклые  ячейки - все 

ТЕСТ № 4

      Количество  треугольных ячеек - 0

      Количество  параллелограммов - 16

      Количество  выпуклых ячеек - 16

      Количество  невыпуклых ячеек - 0

      Параллелограммы - все

      Выпуклые  ячейки - все

      Худшая  ячейка - 1 1 

ТЕСТ № 5

      Количество  треугольных ячеек - 0

      Худшая  ячейка - 1 1 

ТЕСТ № 6

      Количество  ячеек в форме квадрата - 16

      Квадратные  ячейки - все

      Худшая  ячейка - 1 1

 

Пример 2.

 Всего ячеек - 9

ТЕСТ № 1:

      Количество  вырожденных ячеек в сетке   - 0 

ТЕСТ № 2:

      Количество  невыпуклых ячеек в сетке   - 0 

ТЕСТ № 3:

      Количество  выпуклых ячеек в сетке   - 9

      Выпуклые  ячейки - все 

ТЕСТ № 4

      Количество  треугольных ячеек - 0

      Количество  параллелограммов - 9

      Количество  выпуклых ячеек - 9

      Количество  невыпуклых ячеек - 0

      Параллелограммы - все

      Выпуклые  ячейки - все

      Худшая  ячейка - 1 1 
 

ТЕСТ № 5

      Количество  треугольных ячеек - 0

      Худшая  ячейка - 1 1 

ТЕСТ № 6

      Количество  ячеек в форме квадрата - 0

      Худшая  ячейка - 1 1

 

Пример 3.

ТЕСТ № 1:

      Количество  вырожденных ячеек в сетке   - 0 

ТЕСТ № 2:

      Количество  невыпуклых ячеек в сетке   - 0 

ТЕСТ № 3:

      Количество  выпуклых ячеек в сетке   - 9

      Выпуклые  ячейки - все 

ТЕСТ № 4

      Количество  треугольных ячеек - 0

      Количество  параллелограммов - 1

      Количество  выпуклых ячеек - 9

      Количество  невыпуклых ячеек - 0

     Параллелограммы - 2 2

      Выпуклые  ячейки - все

      Худшая  ячейка - 3 3 

ТЕСТ № 5

      Количество  треугольных ячеек - 0

      Худшая  ячейка - 3 3 

ТЕСТ № 6

      Количество  ячеек в форме квадрата - 1

      Квадратные  ячейки - 2 2

      Худшая  ячейка - 3 3

 

Пример 4.

 Всего ячеек - 18

ТЕСТ № 1:

      Количество  вырожденных ячеек в сетке   - 10

      Вырожденные ячейки - 1 2; 1 5; 2 1; 2 2; 2 3; 2 4; 2 5; 2 6; 3 2; 3 5 

ТЕСТ № 2:

      Количество  невыпуклых ячеек в сетке   - 0 

ТЕСТ № 3:

      Количество  выпуклых ячеек в сетке   - 8

      Выпуклые  ячейки - 1 1; 1 3; 1 4; 1 6; 3 1; 3 3; 3 4; 3 6 

ТЕСТ № 4

      Количество  треугольных ячеек - 8

      Количество  параллелограммов - 0

      Количество  выпуклых ячеек - 16

      Количество  невыпуклых ячеек - 0

      Треугольные ячейки - 1 2; 1 5; 2 1; 2 3; 2 4; 2 6; 3 2; 3 5

      Выпуклые  ячейки - все, кроме 2 2; 2 5

      Худшая  ячейка - 2 5 

ТЕСТ № 5

      Количество  треугольных ячеек - 8

Информация о работе Построение и тестирование двумерных разностных сеток