• Количество шагов 100 Размер сетки



  • страница6/21
    Дата11.07.2018
    Размер1.74 Mb.

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


    1   2   3   4   5   6   7   8   9   ...   21

    Схема TVD2 c лимитером Sweby.


    Для уменьшения осцилляций и удаления осцилляций, которые не связаны с физикой задачи мы будем использовать схемы TVD(Total variation diminishing) второго порядка точности. Чтобы определить меру вариации, используется полная вариация системы. Полная вариация системы определяется так[3]:

    (21)

    И схема будет являться TVD, если



    (22)

    Т.е. полная вариация системы будет уменьшаться на новом шаге.

    Описание схемы:

    (23)

    здесь и - антидиффузионые потоки:



    (24)

    (25)

    Можно показать, что устойчивость схемы определяется равенством:



    (26)

    Описание лимитера sweby[3]:



    (27)

    Константы в схеме были взяты следующими:



    c

    0.3

    τ

    0.1

    h

    1

    Характеристики сетки и количество шагов:

    Количество шагов

    100

    Размер сетки

    100x100

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

    Рассмотрим результаты работы алгоритма с выбранной схемой:



    Рис. 3.8



    На Рис. 3 .8 показано возмущение через 10 шагов работы программы.

    Рис. 3.9



    На Рис. 3 .9 показан результат работы программы через 50 шагов.

    Рис. 3.10

    На Рис. 3 .10 изображено возмущение через 80 шагов.

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



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

    Для этого был проведен анализ зависимости времени работы, из расчета на 1 узел сетки, от размера сетки, ожидается, что это будет прямая, параллельная оси абсцисс. Расчет производился на Ubuntu 12.04, компилятор g++ -O3, процессор Intel Core i5 2.3GHz.

    График 1.1

    На График 1 .1 по оси абсцисс отложен характерный размер 2-мерной сетки (т.е. сторона квадрата). По оси ординат отложено время, которое тратит алгоритм на обработку 1 узла сетки. Как видно, с некоторой погрешностью, это можно считать прямой. Это один из признаков, что алгоритм может быть применен для сравнения времен.

    1   2   3   4   5   6   7   8   9   ...   21

    Коьрта
    Контакты

        Главная страница


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