Магистратура Донецкого Национального Технического Университета

Факультет вычислительной техники и информатики

Кафедра прикладной математики и информатики

Автореферат

Введение

Матрично- векторные операции (МВО)

Характеристики МВО

Метод Рунге-Кутта

Обыкновенные дифференциальные уравнения (ОДУ)

Итерационный метод решения ОДУ

Ускорение методом Ньютона

Решение систем ОДУ

Заключение

Литература

Программное обеспечение автоматизированных систем

Автореферат

К магистерской работе по теме:

"Параллельные численные методы решения задачи Коши для систем обыкновенных дифференциальных уравнений"

Английская версия

3 СИСТЕМЫ ЛИНЕЙНЫХ ОБЫКНОВЕННЫХ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ

Коммуникационные особенности матрично–векторных операций могут быть эффективно использованы при решении задачи Коши вида (3.1) для системы обыкновенных линейных дифференциальных уравнений.

Формула 3.1 (3.1)

В соответствии с одним из методов решение задачи можно получить по правилу Рунге-Кутта вида (3.2). Эта формула определяет итерационный процесс, который сводится к операциям матрично-векторной арифметики [2, c.1].

Формула 3.2 (3.2)

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

Альтернативный метод решения задачи Коши по правилу Рунге-Кутта – расчёт полного оператора (матрицы) перехода. Эта операция выполняется предварительно и единожды (до выполнения итераций метода) по формуле (3.3). Таким образом, весь итерационный процесс сводится к серии последовательных умножений матрицы на вектор [2, c.3-5].

Формула 3.3 (3.3)

Преимущество подхода с расчётом матрицы перехода проявляется при большом количестве итераций метода Рунге–Кутта. Соответственно для определённого количества итераций лучшие показатели будет демонстрировать подход с расчётом промежуточных величин.

Характерная черта методов Рунге-Кутта: итерационный процесс поиска решения задачи Коши. Параллелизм реализуется в процессе вычислений на каждом шаге при расчёте промежуточных величин. Вычислительная зависимость промежуточных величин в общем случае не позволяет осуществлять одновременный расчёт приближений решения на различных шагах методу Рунге–Кутта.

Параллелизм алгоритма по методу Рунге–Кутта с расчётом промежуточных коэффициентов на шаге может быть реализован на этапе выполнения матрично–векторных операций. Так вычислительные затраты шага параллельного алгоритма будут определяться формулой (3.4). Время выполнения параллельной версии N–шагового метода Рунге–Кутта определяется выражением (3.5). В качестве базового алгоритма вычисления матрично–векторных произведений выбран алгоритм Кэннона, сохраняющий отображение матрицы–операнда.

Формула 3.4 (3.4)

Формула 3.5 (3.5)

Величины ускорения и эффективности использования процессоров параллельного алгоритма определяется формулами (3.6) и (3.7) соответственно.

Формула 3.6 (3.6)

Формула 3.7 (3.7)

Чтобы отойти от расчёта промежуточных коэффициентов на каждом шаге метода Рунге–Кутта необходимо ввести в алгоритм оператор (матрицу) перехода для определения вектора неизвестных на текущей итерации. Расчёт матрицы можно распараллелить путём использования алгоритма с неизменным отображением матрицы–результата. Расчёт решения на очередной итерации можно выполнять путём вычисления матрично–векторного произведения по алгоритму Кэннона с неизменным отображением матрицы A.

Время выполнения параллельного алгоритма расчёта матрицы перехода по формуле (3.3) определяется выражением (3.8).

Формула 3.8 (3.8)

Формула (3.9) отражает эквивалент функции ускорения параллельного алгоритма для больших значений p. Эффективность использования процессоров параллельным алгоритмом определяется формулой (3.10).

Формула 3.9 (3.9)

Формула 3.10 (3.10)

Пусть алгоритм решения задачи Коши для системы линейных ОДУ с вычислением промежуточных данных по методу Рунге–Кутта будет обозначен через RKStepSolve. Тогда альтернативный алгоритм с предварительным вычислением матрицы перехода, реализующий метод Рунге–Кутта, будет обозначен через RKTransMatrix.

На рисунках 3.1 и 3.2 представлены функции времени выполнения параллельных алгоритмов RKStepSolve и RKTransMatrix.

Рисунок 3.1

Рисунок 3.1 – Зависимость времени выполнения параллельных алгоритмов решения от размерности вычислительной решётки при фиксированной размерности задачи


На рисунке 3.1 приведена зависимость времени выполнения параллельных реализаций алгоритмов RKStepSolve и RKTransMatrix от величины размерности решётки–тора при фиксированной размерности матриц и векторов.

Рисунок 3.2

Рисунок 3.2 – Зависимость времени выполнения параллельных алгоритмов решения от размерности задачи при фиксированной размерности вычислительной решётки


Рисунок 3.2 отражает зависимость времени выполнения параллельных алгоритмов–реализаций RKStepSolve и RKTransMatrix метода Рунге–Кутта от размерности матриц и векторов при фиксированном числе процессоров в измерении решётки–тора.

Рисунок 3.3 отражает зависимость времени выполнения параллельных алгоритмов–реализаций RKStepSolve и RKTransMatrix метода Рунге–Кутта при фиксированных размерностях решётки–тора и сложности исходной задачи.

Рисунок 3.3

Рисунок 3.3 – Зависимость времени выполнения параллельных алгоритмов решения от числа шагов метода Рунге–Кутта при фиксированных величинах размерности вычислительной решётки и сложности исходной задачи

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