8 Второй алгоритм для начала счета методом прогонки С.К.Годунова
Этот алгоритм обсчитан на компьютерах в кандидатской диссертации.
Этот алгоритм требует дополнения матрицы краевых условий Uдо квадратной невырожденной:
Начальные значения Y
(0), Y (0), Y (0), Y (0), Y*(0) находятся из решения следующих систем линейных алгебраических уравнений: ∙ Y*(0) = , ∙ Y (0) = , где i = , , , ,где 0 – вектор из нулей размерности 4х1.
9 Замена метода численного интегрирования Рунге-Кутта в методе прогонки С.К.Годунова
Эта замена формул Рунге-Кутта на формулу теории матриц обсчитана на компьютерах в кандидатской диссертации.
В методе С.К.Годунова как показано выше решение ищется в виде:
Y(x) = Y
(x) ∙ c + Y*(x).На каждом конкретном участке метода прогонки С.К.Годунова между точками ортогонализации можно вместо метода Рунге-Кутта пользоваться теорией матриц и выполнять расчет через матрицу Коши:
Y
(x ) = K(x - x ) ∙Y (x ).Так выполнять вычисления быстрее, особенно для дифференциальных уравнений с постоянными коэффициентами.
И аналогично через теорию матриц можно вычислять и вектор Y*(x) частного решения неоднородной системы дифференциальных уравнений. Или для этого вектора отдельно можно использовать метод Рунге-Кутта, то есть можно комбинировать теорию матриц и метод Рунге-Кутта.
10 Метод половины констант
Этот метод пока не обсчитан на компьютерах.
Выше было показано, что решение системы линейных обыкновенных дифференциальных уравнений можно искать в виде только с половиной возможных векторов и констант. Была приведена формула для начала вычислений:
Y(0) = М
∙с + ∙ .Из теории матриц известно, что если матрица ортонормирована, то её обратная матрица есть её транспонированная матрица. Тогда последняя формула приобретает вид:
Y(0) = М
∙с + U ∙uили
Y(0) = U
∙u + М ∙сили
Y(0) =
∙ ,Таким образом записана в матричном виде формула для начала счета с левого края, когда на левом крае удовлетворены краевые условия.
Далее запишем V∙Y(1) = v и Y(1) = K(1←0) ∙Y(0) + Y*(1←0) совместно:
V∙ [ K(1←0) ∙Y(0) + Y*(1←0) ] = v
V∙ K(1←0) ∙Y(0) = v - V∙Y*(1←0)
и подставим в эту формулу выражение для Y(0):
V∙ K(1←0) ∙
∙ = v - V∙Y*(1←0).V∙ K(1←0) ∙
∙ = p.Таким образом мы получили выражение вида:
D∙
= p,где матрица D имеет размерность 4х8 и может быть естественно представлена в виде двух квадратных блоков размерности 4х4:
∙ = p.Тогда можем записать:
D1∙ u
+ D2 ∙ c = p.Отсюда получаем, что:
c = D2
∙ ( p - D1∙ u )Таким образом, искомые константы найдены.
Далее показано как применять этот метод для решения «жестких» краевых задач.
Запишем
V∙ K(1←0) ∙
∙ = p.совместно с K(1←0) = K(1←x2) ∙ K(x2←x1) ∙ K(x1←0) и получим:
V∙ K(1←x2) ∙ K(x2←x1) ∙ K(x1←0) ∙
∙ = p.Эту систему линейных алгебраических уравнений можно представить в виде:
[ V∙ K(1←x2) ] ∙ { K(x2←x1) ∙ K(x1←0) ∙
∙ } = p.[ матрица ] ∙ { вектор } = вектор
Эту группу линейных алгебраических уравнений можно подвергнуть построчному ортонормированию, которое сделает строчки [матрицы] ортонормированными, {вектор} затронут не будет, а вектор получит преобразование. То есть получим:
[ V∙ K(1←x2) ]
{K(x2←x1) ∙ K(x1←0) ∙ } =p .И так далее.
В итоге поочередного вычленений матриц слева из вектора и ортонормирования получим систему:
D
∙ = p ,Отсюда получаем, что:
c = D2
∙ (p - D1 ∙ u )Таким образом, искомые константы найдены.
11 Применяемые формулы ортонормирования
Эти формулы обсчитаны в кандидатской диссертации.
Взято из: Березин И.С., Жидков Н.П. Методы вычислений, том II, Государственное издательство физико-математической литературы, Москва, 1962 г. 635 стр.
Пусть дана система линейных алгебраических уравнений порядка n:
А
= .Здесь над векторами поставим черточки вместо их обозначения жирным шрифтом.
Будем рассматривать строки матрицы А системы как векторы:
=( , ,…, ).Ортонормируем эту систему векторов.
Первое уравнение системы А
= делим на .При этом получим:
+ +…+ = , =( , ,…, ),