Прогонка, точечный вариант: различия между версиями
Перейти к навигации
Перейти к поиску
[непроверенная версия] | [непроверенная версия] |
Frolov (обсуждение | вклад) |
Frolov (обсуждение | вклад) |
||
Строка 13: | Строка 13: | ||
== Свойства и структура алгоритмов == | == Свойства и структура алгоритмов == | ||
=== Общее описание алгоритма === | === Общее описание алгоритма === | ||
+ | |||
+ | '''Прогонка''' - один из вариантов метода исключения неизвестных в приложении к решению СЛАУ<ref name="VOLA">Воеводин В.В. Вычислительные основы линейной алгебры. М.: Наука, 1977.</ref><ref name="MIV">Воеводин В.В., Кузнецов Ю.А. Матрицы и вычисления. М.: Наука, 1984.</ref> вида <math>Ax = b</math>, где | ||
+ | :<math> | ||
+ | A = \begin{bmatrix} | ||
+ | a_{11} & a_{12} & 0 & \cdots & \cdots & 0 \\ | ||
+ | a_{21} & a_{22} & a_{23}& \cdots & \cdots & 0 \\ | ||
+ | 0 & a_{32} & a_{33} & \cdots & \cdots & 0 \\ | ||
+ | \vdots & \vdots & \ddots & \ddots & \ddots & 0 \\ | ||
+ | 0 & \cdots & \cdots & a_{n-1 n-2} & a_{n-1 n-1} & a_{n-1 n} \\ | ||
+ | 0 & \cdots & \cdots & 0 & a_{n n-1} & a_{n n} \\ | ||
+ | \end{bmatrix}, x = \begin{bmatrix} | ||
+ | x_{1} \\ | ||
+ | x_{2} \\ | ||
+ | \vdots \\ | ||
+ | x_{n} \\ | ||
+ | \end{bmatrix}, b = \begin{bmatrix} | ||
+ | b_{1} \\ | ||
+ | b_{2} \\ | ||
+ | \vdots \\ | ||
+ | b_{n} \\ | ||
+ | \end{bmatrix} | ||
+ | </math> | ||
+ | |||
=== Математическое описание === | === Математическое описание === | ||
=== Вычислительное ядро алгоритма === | === Вычислительное ядро алгоритма === | ||
Строка 22: | Строка 45: | ||
=== Описание входных и выходных данных === | === Описание входных и выходных данных === | ||
=== Свойства алгоритма=== | === Свойства алгоритма=== | ||
+ | |||
== Программная реализация алгоритмов == | == Программная реализация алгоритмов == | ||
=== Особенности реализации последовательного алгоритма === | === Особенности реализации последовательного алгоритма === |
Версия 16:40, 10 июля 2015
Прогонка для трёхдиагональной матрицы, точечный вариант | |
Последовательный алгоритм | |
Последовательная сложность | [math]O(n)[/math] |
Объём входных данных | [math]4n-2[/math] |
Объём выходных данных | [math]n[/math] |
Параллельный алгоритм | |
Высота ярусно-параллельной формы | [math]O(n)[/math] |
Ширина ярусно-параллельной формы | [math]2[/math] |
Основные авторы описания: А.В.Фролов
Содержание
- 1 Свойства и структура алгоритмов
- 1.1 Общее описание алгоритма
- 1.2 Математическое описание
- 1.3 Вычислительное ядро алгоритма
- 1.4 Макроструктура алгоритма
- 1.5 Описание схемы реализации последовательного алгоритма
- 1.6 Последовательная сложность алгоритма
- 1.7 Информационный граф
- 1.8 Описание ресурса параллелизма алгоритма
- 1.9 Описание входных и выходных данных
- 1.10 Свойства алгоритма
- 2 Программная реализация алгоритмов
- 2.1 Особенности реализации последовательного алгоритма
- 2.2 Описание локальности данных и вычислений
- 2.3 Возможные способы и особенности реализации параллельного алгоритма
- 2.4 Масштабируемость алгоритма и его реализации
- 2.5 Динамические характеристики и эффективность реализации алгоритма
- 2.6 Выводы для классов архитектур
- 2.7 Существующие реализации алгоритма
- 3 Литература
1 Свойства и структура алгоритмов
1.1 Общее описание алгоритма
Прогонка - один из вариантов метода исключения неизвестных в приложении к решению СЛАУ[1][2] вида [math]Ax = b[/math], где
- [math] A = \begin{bmatrix} a_{11} & a_{12} & 0 & \cdots & \cdots & 0 \\ a_{21} & a_{22} & a_{23}& \cdots & \cdots & 0 \\ 0 & a_{32} & a_{33} & \cdots & \cdots & 0 \\ \vdots & \vdots & \ddots & \ddots & \ddots & 0 \\ 0 & \cdots & \cdots & a_{n-1 n-2} & a_{n-1 n-1} & a_{n-1 n} \\ 0 & \cdots & \cdots & 0 & a_{n n-1} & a_{n n} \\ \end{bmatrix}, x = \begin{bmatrix} x_{1} \\ x_{2} \\ \vdots \\ x_{n} \\ \end{bmatrix}, b = \begin{bmatrix} b_{1} \\ b_{2} \\ \vdots \\ b_{n} \\ \end{bmatrix} [/math]