Прогонка, точечный вариант: различия между версиями
Перейти к навигации
Перейти к поиску
| [непроверенная версия] | [непроверенная версия] |
Frolov (обсуждение | вклад) |
Frolov (обсуждение | вклад) |
||
| Строка 33: | Строка 33: | ||
\vdots \\ | \vdots \\ | ||
b_{n} \\ | b_{n} \\ | ||
\end{bmatrix} | |||
</math> | |||
Часто, однако, при изложении сути метода прогонки<ref>Самарский А.А., Николаев Е.С. Методы решения сеточных уравнений. М.: Наука, 1978.</ref> элементы правой части и матрицы системы обозначают по-другому, например СЛАУ может иметь вид | |||
:<math> | |||
A = \begin{bmatrix} | |||
c_{0} & -b_{0} & 0 & \cdots & \cdots & 0 \\ | |||
-a_{1} & c_{1} & -b_{1} & \cdots & \cdots & 0 \\ | |||
0 & -a_{2} & c_{2} & \cdots & \cdots & 0 \\ | |||
\vdots & \vdots & \ddots & \ddots & \ddots & 0 \\ | |||
0 & \cdots & \cdots & -a_{n-2} & c_{n-2} & -b_{n-2} \\ | |||
0 & \cdots & \cdots & 0 & -a_{n-1} & c_{n-1} \\ | |||
\end{bmatrix}\begin{bmatrix} | |||
x_{0} \\ | |||
x_{1} \\ | |||
\vdots \\ | |||
x_{n-1} \\ | |||
\end{bmatrix} = \begin{bmatrix} | |||
f_{0} \\ | |||
f_{1} \\ | |||
\vdots \\ | |||
f_{n-1} \\ | |||
\end{bmatrix} | \end{bmatrix} | ||
</math> | </math> | ||
Версия от 13:52, 10 июля 2015
| Прогонка для трёхдиагональной матрицы, точечный вариант | |
| Последовательный алгоритм | |
| Последовательная сложность | [math]\displaystyle{ O(n) }[/math] |
| Объём входных данных | [math]\displaystyle{ 4n-2 }[/math] |
| Объём выходных данных | [math]\displaystyle{ n }[/math] |
| Параллельный алгоритм | |
| Высота ярусно-параллельной формы | [math]\displaystyle{ O(n) }[/math] |
| Ширина ярусно-параллельной формы | [math]\displaystyle{ 2 }[/math] |
Основные авторы описания: А.В.Фролов
Свойства и структура алгоритмов
Общее описание алгоритма
Прогонка - один из вариантов метода исключения неизвестных в приложении к решению СЛАУ[1][2] вида [math]\displaystyle{ Ax = b }[/math], где
- [math]\displaystyle{ 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]
Часто, однако, при изложении сути метода прогонки[3] элементы правой части и матрицы системы обозначают по-другому, например СЛАУ может иметь вид
- [math]\displaystyle{ A = \begin{bmatrix} c_{0} & -b_{0} & 0 & \cdots & \cdots & 0 \\ -a_{1} & c_{1} & -b_{1} & \cdots & \cdots & 0 \\ 0 & -a_{2} & c_{2} & \cdots & \cdots & 0 \\ \vdots & \vdots & \ddots & \ddots & \ddots & 0 \\ 0 & \cdots & \cdots & -a_{n-2} & c_{n-2} & -b_{n-2} \\ 0 & \cdots & \cdots & 0 & -a_{n-1} & c_{n-1} \\ \end{bmatrix}\begin{bmatrix} x_{0} \\ x_{1} \\ \vdots \\ x_{n-1} \\ \end{bmatrix} = \begin{bmatrix} f_{0} \\ f_{1} \\ \vdots \\ f_{n-1} \\ \end{bmatrix} }[/math]