Вычисление определителя
Решив систему уравнений методом Гаусса, можно одновременно вычислить определитель матрицы A. Ax=f, A=LU, где L и U - треугольные матрицы. Определитель произведения матриц равен произведению определителей матриц. Определитель треугольной матрицы равен произведению ее диагональных элементов. Из этих двух свойств определителей следует (на главной диагонали матрицы L стоят единицы):
Данная формула верна при LU-факторизации без выбора главного элемента. Если был применен метод с выбором главного элемента, то для модификации формулы необходимо учитывать свойства определителя - сложение строк матрицы и умножение строки на ненулевое число не меняет определитель, но перестановка двух строк меняет знак определителя на противоположный. Поэтому в общем случае, формула для вычисления определителя при LU-факторизации принимает вид:
где k - число перестановок строк или столбцов. Примечание. При решении системы линейных алгебраических уравнений методом Гаусса нельзя заранее узнать, равен ли Если матрица A вырождена (т.е. Если в программе реализован метод с выбором главного элемента, то данная проверка осуществляется проще. Необходимо проверять на равенство нулю все найденные главные элементы перед проведением очередного шага исключения. Учитывая, что вещественное число на компьютере нулю точно никогда не равняется (например, число 0.00000000000000001), то необходимо проверку производить следующим образом - If Abs(Гл.Элемент)< 0.00001 then ... Обращение матрицы Нахождение матрицы, обратной матрице A, эквивалентно решению матричного уравнения Для дальнейшего важно заметить, что матричная система распадается на n независимых систем уравнений с одной и той же матрицей A, но с разными правыми частями. Эти системы имеют вид:
где Для решения подобной задачи можно использовать различные численные методы, но наиболее эффективным методом будет метод Гаусса с LU-факторизацией. Достаточно выполнить один раз прямой ход A=LU и потом просто решать треугольные системы уравнений Ly=f и Ux=y. Схема Халецкого Схема Халецкого представляет собой вариант метода Гаусса с LU-факторизацией. Для системы уравнений Ax=f используют замену A=BC, где B - левая нижняя треугольная матрица, C - правая верхняя треугольная матрица с 1 по главной диагонали. Далее решают две системы уравнений с треугольными матрицами. Элементы матриц B и C определяют по формулам:
и
Далее искомый вектор x может быть вычислен из цепи уравнений: By=f и Cx=y. Решение y и x данных систем может быть получено по формулам:
и
Числа Если матрица A симметрическая, т.е.
Для хранения матриц B и C можно использовать два массива, но, принимая во внимание вид матрицы C, возможно и сократить количество массивов до 1. При этом необходимо будет специально учитывать, что
Популярное: Почему человек чувствует себя несчастным?: Для начала определим, что такое несчастье. Несчастьем мы будем считать психологическое состояние... Почему стероиды повышают давление?: Основных причин три... Как распознать напряжение: Говоря о мышечном напряжении, мы в первую очередь имеем в виду мускулы, прикрепленные к костям ... ![]() ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (1078)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |