|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Denis Pakin 2:5020/400 01 Mar 2002 10:59:37 To : Victor Sedyakin Subject : Re: Метод прогонки --------------------------------------------------------------------------------
Hello, Victor!
VS> Если у кого есть, просьба поделиться сабжевым алгоритмом.
VS> Подойдет сам алгоритм или его реализация на ЯВУ. Это метод
VS> решения СЛАУ большой размерности с разреженной матрицей, в
VS> данном случае в исходной матрице заполнены только три
VS> диагонали - главная и смежные с ней. Все остальные элементы -
VS> нули.
Пусть дана система Ax=b, где А вышеописанная матрица.
1) Прямая прогонка
Вычисляются прогоночные коэфициенты.
q(1)=-a(1,2)/a(1,1), w(1)=b(1)/a(1,1);
q(i)=-a(i,i+1)/(a(i,i-1)*q(i-1)+a(i,i));
w(i)=(b(i)-a(i,i-1)*w(i-1))/(a(i,i-1)*q(i-1)+a(i,i)); i=2..m-1
w(m)=(b(m)-a(m,m-1)*w(m-1))/(a(m,m-1)*q(m-1)+a(m,m))
где m - размерность матрицы, a(i,,j) - j-ый элемент i-ой строки матрицы A,
b(i) - i-ый элемент вектора b, q(i) и w(j) - прогоночные коэфициенты.
2) Обратная прогонка
x(m)=w(m);
x(i)=q(i)*x(i+1)+w(i); i=m-1..1
Денис
--- ifmail v.2.15dev5
* Origin: Ryazan Power Connect Ltd. (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/18890ebaa3dcb.html, оценка из 5, голосов 10
|